SQL Server臨時表的正確刪除方式
刪除SQL Server臨時表和一般表并不相同,下面將為您為別示例錯誤和正確的刪除操作,供您參考,希望對您能夠有所幫助。
臨時表與一般的表不同,它是保存到tempDb表中。臨時表的表名與你所建的表名也不一樣,因為他要為不同人的相同操作創建不同的臨時表。
1、錯誤的刪除操作:
--錯誤的臨時表刪除操作,因為所在數據庫不同
IF EXISTS (SELECT * FROM sysobjects WHERE object_id = OBJECT_ID(N'[dbo].[#tempTable]') AND type in (N'U'))
Begin
DROP TABLE [dbo].[tempTable]
End
--錯誤的臨時表刪除操作,因為臨時表名已變
if exists (select * from tempdb.dbo.sysobjects where id = object_id(N'[#temptable]'))
Begin
drop table #temptable
End
2、正確的刪除方式:
--正確的臨時表刪除操作
if object_id('tempdb..#tempTable') is not null Begin
drop table #tempTable
End