Saltar al contenido

Script para eliminar todas las conexiones a una base de datos (más de RESTRICTED_USER ROLLBACK)

Si te encuentras con alguna parte que te causa duda puedes comentarlo y haremos todo lo necesario de ayudarte lo mas rápido que podamos.

Solución:

Actualizado

Para MS SQL Server 2012 y superior

USE [master];

DECLARE @kill varchar(8000) = '';  
SELECT @kill = @kill + 'kill ' + CONVERT(varchar(5), session_id) + ';'  
FROM sys.dm_exec_sessions
WHERE database_id  = db_id('MyDB')

EXEC(@kill);

Para MS SQL Server 2000, 2005, 2008

USE master;

DECLARE @kill varchar(8000); SET @kill = '';  
SELECT @kill = @kill + 'kill ' + CONVERT(varchar(5), spid) + ';'  
FROM master..sysprocesses  
WHERE dbid = db_id('MyDB')

EXEC(@kill); 

USE master
GO
ALTER DATABASE database_name
SET OFFLINE WITH ROLLBACK IMMEDIATE
GO

Referencia: http://msdn.microsoft.com/en-us/library/bb522682%28v=sql.105%29.aspx

Puede obtener el script que proporciona SSMS haciendo lo siguiente:

  1. Haga clic derecho en una base de datos en SSMS y elija eliminar
  2. En el cuadro de diálogo, marque la casilla de verificación “Cerrar conexiones existentes”.
  3. Haga clic en el botón Script en la parte superior del cuadro de diálogo.

El script se verá así:

USE [master]
GO
ALTER DATABASE [YourDatabaseName] SET  SINGLE_USER WITH ROLLBACK IMMEDIATE
GO
USE [master]
GO
DROP DATABASE [YourDatabaseName]
GO

valoraciones y comentarios

Recuerda que tienes permiso de aclarar tu experiencia si te fue de ayuda.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *