CREATE PROCEDURE dbo.KillConexiones @dbName SYSNAME AS BEGIN SET NOCOUNT ON DECLARE @spid INT, @cnt INT, @sql VARCHAR(255) SELECT @spid = MIN(spid), @cnt = COUNT(*) FROM MASTER..sysprocesses WHERE dbid = DB_ID(@dbname) AND spid != @@SPID PRINT 'Eliminando ' + RTRIM(@cnt) + ' procesos.' WHILE @spid IS NOT NULL BEGIN PRINT 'Eliminando Proceso ' + RTRIM(@spid) SET @sql = 'KILL ' + RTRIM(@spid) EXEC (@sql) SELECT @spid = MIN(spid), @cnt = COUNT(*) FROM MASTER..sysprocesses WHERE dbid = DB_ID(@dbname) AND spid != @@SPID PRINT RTRIM(@cnt) + ' Procesos por eliminar.' END END GO
Bienvenidos! En mi blog comparto mis experiencias y conocimientos relacionados con las TIC's, lenguajes de programación, bases de datos...
2014/06/09
Eliminar todas las conexiones activas en una base de datos
Permite cerrar las conexiones abiertas de una base de datos en SQL Server, cuando quieres alterar y/o eliminar una tabla o base de datos y no se puedes porque existen conexiones activas que lo impiden, solo debes de ejecutar el siguiente script.