Skip to content

Eliminar conexiones activas a SQL Server 2008

by en 10 septiembre, 2012

Típico que uno quiere alterar o eliminar una tabla o base da datos y no se puede porque existen conexiones activas que lo impiden. Para cerrar las conexiones abiertas a una base de datos en SQL Server 2008 solo deben correr el siguiente script:

USE master
GO

SET NOCOUNT ON
DECLARE @DBName varchar(50)
DECLARE @spidstr varchar(8000)
DECLARE @ConnKilled smallint
SET @ConnKilled=0
SET @spidstr = ''

Set @DBName = 'DATABASE_NAME_HERE'
IF db_id(@DBName) < 4
BEGIN
PRINT 'Connections to system databases cannot be killed'
RETURN
END
SELECT @spidstr=coalesce(@spidstr,',' )+'kill '+convert(varchar, spid)+ '; '
FROM master..sysprocesses WHERE dbid=db_id(@DBName)

IF LEN(@spidstr) > 0
BEGIN
EXEC(@spidstr)
SELECT @ConnKilled = COUNT(1)
FROM master..sysprocesses WHERE dbid=db_id(@DBName)
END

Fuente: http://social.msdn.microsoft.com/Forums/en/sqlsmoanddmo/thread/129f34ea-237b-424f-885b-e4d2bef2b22e

From → T-SQL

3 comentarios
  1. Juan permalink

    Funciona perfecto gracias men

  2. Uziel permalink

    Trabaja bien, muchas gracias.

  3. Muy bueno el Aporte Amigo

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: