全局临时表删除操作

时间:2009-10-16 17:30:37

标签: sql sql-server sql-server-2005 tsql temp-tables

如何检查SQL服务器中是否存在全局临时表,如果是,则删除该全局临时表?

我正在尝试执行此操作:

IF OBJECT_ID('##Table', 'U') IS NOT NULL  
  DROP TABLE ##Table

......但它没有用。

3 个答案:

答案 0 :(得分:18)

检查是否存在临时表并将其删除

IF OBJECT_ID('tempdb..##Table' , 'U') IS NOT NULL
   drop TABLE ##Table

答案 1 :(得分:5)

您可以使用

检测临时表的存在
IF OBJECT_ID('tempdb.dbo.##Table', 'U') IS NOT NULL

并且,令我惊讶的是,您可以将其从与

的任何连接中删除
DROP TABLE ##Table

然而,我不禁想到这样做会是一个坏主意,因为可能创建它的连接/用户可能仍在使用它...

答案 2 :(得分:0)

查看此视图​​以查看该表是否存在:

[tempdb].[INFORMATION_SCHEMA].[TABLES]