杀死未提交事务.sql 451 B

123456789101112131415161718192021
  1. DECLARE @SPID AS INT
  2. DECLARE @COUNT AS INT=0
  3. DECLARE curSPID CURSOR FOR
  4. select SPID
  5. from master.sys.sysprocesses
  6. Where status='sleeping' and waittype=0x0000 and open_tran>0
  7. OPEN curSPID
  8. FETCH NEXT FROM curSPID INTO @SPID
  9. WHILE @@FETCH_STATUS = 0
  10. BEGIN
  11. EXEC('KILL '+ @SPID)
  12. SET @COUNT+=1
  13. PRINT 'KILL '+ CAST(@SPID AS VARCHAR)
  14. FETCH NEXT FROM curSPID INTO @SPID
  15. END
  16. PRINT 'KILL COUNT:'+ CAST(@COUNT AS VARCHAR)
  17. CLOSE curSPID
  18. DEALLOCATE curSPID