代码之家  ›  专栏  ›  技术社区  ›  Matthew

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

  •  3
  • Matthew  · 技术社区  · 14 年前

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

    两张桌子都有两张 BIGINT 列,最多可以有100行。

    申报两张桌子比较好还是 DELETE 再使用一个?

    编辑:如果您感兴趣,这是对中设计的存储过程的后续操作。 this question

    2 回复  |  直到 14 年前
        1
  •  2
  •   Community CDub    7 年前

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

        2
  •  1
  •   Joe Stefanelli    14 年前

    首先,你不能 truncate 表变量。你必须 delete from 相反。对于如此少的行数,我认为这两种方法之间的差别很小。选择使代码更可读的代码。