【问题标题】:Stored procedure and .NET: SELECT INTO on temporary table: suppress result存储过程和 .NET:临时表上的 SELECT INTO:抑制结果
【发布时间】:2009-07-31 20:03:19
【问题描述】:

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

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

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

可以抑制吗?或者我不应该使用 SELECT INTO,而是 CREATE TABLE 后跟一个 INSERT 语句?

【问题讨论】:

    标签: .net tsql temp-tables


    【解决方案1】:

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

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

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-01-26
      • 2018-07-05
      • 2012-05-30
      • 1970-01-01
      • 1970-01-01
      • 2023-03-12
      • 2020-12-05
      相关资源
      最近更新 更多