存储过程中的临时表为局部临时表,不会存进dbtemp库中的。。可以不用删除。不过删除更好
可以测试下:
create proc wsp
as
create table #temp(id int)运行存储过程:exec wsp查看dbtemp库中并不存在表#temp
可以测试下:
create proc wsp
as
create table #temp(id int)运行存储过程:exec wsp查看dbtemp库中并不存在表#temp
tempdb的临时表还有其它地方导致的,不是单单因为你显示声明的表变量或者临时表
比如。declare @table table
{
a int,
b nvarchar(40)
......
}
对于您的问题,
drop 临时表, 可以删除啊。
if object_id('tempdb..#table') is not null
drop table #table
即 TEMPDB下有如下內容:
dbo.#03DC550A
dbo.#153E4D3B
dbo.#16EE5E27
...
我擔心這樣會耗用太多TEMPDB資料庫的資源,除非將Sql服務停掉,重新啟動以上臨時表才消失。
http://tech.ddvip.com/2007-05/117917016624529.html