是否更好的删除或声明SQL存储过程的新临时表?

时间:2010-09-01 15:31:15

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

我有一个存储过程,只需几个步骤。其中两个步骤需要使用DECLARE TABLE,但我不需要同时使用这些表格。

这些表格包含2个BIGINT列,最多可包含100行。

更好的做法是宣布两个表格或DELETE并重新使用一个表格吗?

编辑:如果您有兴趣,这是this question

中设计的存储过程的后续行动

2 个答案:

答案 0 :(得分:2)

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

答案 1 :(得分:1)

首先,您不能truncate表变量。你必须改为delete from。对于如此少量的行,我认为它会以某种方式产生很小的差异。选择哪一项可以使您的代码更具可读性。