删除SQL Server临时表和一般表并不相同,下面将为您为别示例错误和正确的删除操作,供您参考,希望对您能够有所帮助 。
临时表与一般的表不同,它是保存到tempDb表中 。临时表的表名与你所建的表名也不一样,因为他要为不同人的相同操作创建不同的临时表 。
1、错误的删除操作:
--错误的临时表删除操作,因为所在数据库不同
IF EXISTS (SELECT * FROM sysobjects WHERE object_id = OBJECT_ID(N[dbo].[#tempTable]) AND type in (NU))
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