sql-删除无效sql链接
create proc dtLink ( @dbName varchar(50) --数据库名称 ) as --查询临时表是否存在 if(OBJECT_ID(‘temp..db‘) is not null) begin drop table #TempTable end --创建临时表 create table #TempTable ( spid int, ecid int, status varchar(32), loginname varchar(32), hostname varchar(32), blk int, dbname varchar(32), cmd varchar(32), request_id int ) --给临时表插入数据 insert into #TempTable exec sp_who /* select * from #TempTable where spid = @@SPID */ --定义游标 declare cus_dtLink cursor scroll for select spid from #TempTable where dbname = @dbName and status = ‘sleeping‘ and spid <> @@SPID --定义变量 declare @spid int --打开游标 open cus_dtLink declare @sql varchar(200) --执行游标 fetch next from cus_dtLink into @spid --循环杀连接 while(@@FETCH_STATUS = 0) begin select @sql = ‘kill ‘ + cast(@spid as varchar(20)) exec(@sql) fetch next from cus_dtLink into @spid end --关闭游标 close cus_dtLink --释放游标 deallocate cus_dtLink
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。