MS SQL SERVER中删除存在的临时表

MS SQL Server中又本地临时表和全局临时表两种: 本地临时表仅在当前会话中可见,以符号#开头(如#tableName); 全局临时表在所有会话中都可见,以符号##开头(如##tableName)。

SQL Server会自动为每个本地临时表的表名追加一个数字后缀,以区分由不同用户创建的同名临时表,创建后的临时表将出现在tempdb数据库的用户表中,而元信息则存储于tempdb数据库的sysobjects表中(名称由指定的表名和系统生成的数字后缀组成,表名指定部分不能超过116个字符)。

MS SQL Server会在户实例断开连接时自动删除本地临时表,在所有引用全局临时表的用户断开连接时自动删除全局临时表。当然,也可以显式地调用DROP TABLE语句删除临时表,删除存在的临时表的语句如下: if object_id('tempdb..#TMP_TBL_NAME') is not null drop table #TMP_TBL_NAME

原文地址:https://www.cnblogs.com/zxktxj/p/2528397.html