Der folgende Code kann verwendet werden, um alle Prozesse für die SQL Server-Datenbank zu beenden. Der Code kann in Situationen verwendet werden, in denen Änderungen an der Datenbank nicht durchgeführt werden können, wenn ein Prozess auf der Datenbank läuft, wie z. B. das Umbenennen einer Datenbank nicht durchgeführt werden kann, wenn irgendein Prozess auf dieser Datenbank läuft.
USE MASTER
GO
DECLARE @DatabaseName AS VARCHAR(500)
-->Provide the DataBaseName for which want to Kill all processes.
SET @DatabaseName='YourDataBaseName'
DECLARE @Spid INT
DECLARE KillProcessCur CURSOR FOR
SELECT spid
FROM sys.sysprocesses
WHERE DB_NAME(dbid) = @DatabaseName
OPEN KillProcessCur
FETCH Next FROM KillProcessCur INTO @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))
+ ' killed successfull'
FETCH Next FROM KillProcessCur INTO @Spid
END
CLOSE KillProcessCur
DEALLOCATE KillProcessCur