Đoạn mã dưới đây có thể được sử dụng để Hủy tất cả các quy trình đối với Cơ sở dữ liệu SQL Server. Mã có thể được sử dụng trong các trường hợp không thể thực hiện các thay đổi đối với cơ sở dữ liệu nếu bất kỳ quá trình nào đang chạy trên cơ sở dữ liệu, chẳng hạn như không thể thực hiện đổi tên cơ sở dữ liệu nếu bất kỳ quá trình nào đang chạy trên cơ sở dữ liệu đó.
SỬ DỤNG MASTER ĐI
DECLARE @DatabaseName AS VARCHAR (500)
-> Cung cấp DataBaseName muốn hủy tất cả các quy trình.
SET @ DatabaseName ='YourDataBaseName'
DECLARE @Spid INTDECLARE KillProcessCur CURSOR ĐỂ CHỌN spid TỪ sys.sysprocesses WHERE DB_NAME (dbid) =@DatabaseName
MỞ KillProcessCur
TÌM KIẾM TIẾP THEO KillProcessCur VÀO @Spid
WHILE @@ FETCH_STATUS =0 BEGIN DECLARE @SQL VARCHAR (500) =NULL SET @ SQL ='Kill' + CAST (@Spid AS VARCHAR (5)) EXEC (@SQL) PRINT 'ProcessID =' + CAST ( @Spid AS VARCHAR (5)) + 'kill successfull' TÌM KIẾM Tiếp theo TỪ KillProcessCur VÀO @Spid ENDCLOSE KillProcessCur
DEALLOCATE KillProcessCur