ホームページ  >  記事  >  データベース  >  sqlserver通用的删除服务器上的所有相同后缀的临时表

sqlserver通用的删除服务器上的所有相同后缀的临时表

WBOY
WBOYオリジナル
2016-06-07 18:05:381112ブラウズ

因为项目需要,必须使用大量临时表,因此编写批量删除临时表的通用语句

代码如下:
use tempdb
if object_id('tempdb..#table') is not null drop table tempdb..#table
select name into tempdb..#table
from (select * from sysobjects where xtype='U') a where
a.name like '%test_select'

declare @table varchar(100),@count int
select @count=count(name) from tempdb..#table

while(@count>0)
begin
select top 1 @table=name from tempdb..#table

exec('
if object_id('''+@table+''') is not null drop table '+@table+'
delete from tempdb..#table where name='''+@table+'''
')
set @count=@count-1
end
drop table tempdb..#table

建议:尽量不要大量使用临时表,因为使用tempdb库会使系统的负载加大。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。