0

我正在从 ADO.NET 访问一个存储过程。存储过程最终应该返回一个结果集。

为了计算这个结果,一个临时表被一个 SELECT INTO 语句填充。

问题是 SELECT INTO 语句的结果也作为结果集返回给 .NET。

这能被压制吗?或者我不应该使用 SELECT INTO,而是 CREATE TABLE 后跟一个 INSERT 语句?

4

1 回答 1

2

我建议避免使用 SELECT INTO,因为它会推断您的列名/类型,并且如果您的源查询以任何方式复杂(例如 CASE 语句),这可能会产生意想不到的结果。

如果我需要保存所描述的值,我总是创建一个表变量或一个临时表。

如果您使用 CREATE TABLE #TableName () (或 DECLARE @tableName TABLE ())然后使用 INSERT 那么您将不会获得返回的额外结果集。

于 2009-07-30T06:51:45.290 回答