【问题标题】:Is it better to delete or declare new temp tables for SQL Stored Procedures?为 SQL 存储过程删除或声明新的临时表更好吗?
【发布时间】:2011-04-06 21:22:50
【问题描述】:

我有一个包含几个步骤的存储过程。其中两个步骤需要使用DECLARETABLE,但我不需要同时使用这些表。

这两个表都有 2 个BIGINT 列,最多可以有 100 行。

声明这两个表或DELETE 并重新使用一个表是更好的做法吗?

编辑:如果您有兴趣,这是this question中设计的存储过程的后续

【问题讨论】:

    标签: sql-server stored-procedures truncate temp-tables


    【解决方案1】:

    创建第二个表的开销非常小。但是,如果它们具有相同的列,并且您不需要数据,则只需删除并重用即可。如果您有一个用于cursor free looping (last code example in this answer) 的标识列,您可能只想创建第二个。

    【讨论】:

    【解决方案2】:

    首先,您不能truncate 表变量。您必须改为delete from。对于这么少的行数,我认为它会以一种或另一种方式产生很小的差异。选择使您的代码更具可读性的那个。

    【讨论】:

      猜你喜欢
      • 2018-03-01
      • 1970-01-01
      • 2021-11-10
      • 2011-01-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多