结束SQL阻塞的进程
生活随笔
收集整理的這篇文章主要介紹了
结束SQL阻塞的进程
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
2019獨角獸企業重金招聘Python工程師標準>>>
--結束SQL阻塞的進程 create procedure sp_Kill_lockProcess as beginset NOCOUNT ondeclare @spid int ,@bl int ,@intTransactionCountOnEntry int ,@intRowcount int ,@intCountProperties int ,@intCounter int ,@sSql nvarchar(200)create table #tmp_lock_who ( id int identity(1, 1) ,spid smallint ,bl smallint )if @@ERROR <> 0 return @@ERRORinsert into #tmp_lock_who ( spid, bl )select 0, blockedfrom ( select *from sysprocesseswhere blocked > 0 ) awhere not exists ( select *from ( select *from sysprocesseswhere blocked > 0 ) bwhere a.blocked = spid )unionselect spid, blockedfrom sysprocesseswhere blocked > 0if @@ERROR <> 0 return @@ERROR-- 找到臨時表的記錄數select @intCountProperties = count(*), @intCounter = 1from #tmp_lock_whoif @@ERROR <> 0 return @@ERRORwhile @intCounter <= @intCountProperties begin-- 取第一條記錄select @spid = spid, @bl = blfrom #tmp_lock_whowhere Id = @intCounterbeginif @spid = 0 beginset @sSql = 'kill ' + cast(@bl as varchar(10))exec sp_executesql @sSqlendend-- 循環指針下移set @intCounter = @intCounter + 1enddrop table #tmp_lock_whoset NOCOUNT offreturn 0endGO轉載于:https://my.oschina.net/mikezhang/blog/84268
總結
以上是生活随笔為你收集整理的结束SQL阻塞的进程的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 鼠标事件onmouuse大全
- 下一篇: 实例教程七:在SQLite中使用事务