¿Cómo puedo separar una base de datos que está en uso?

14

Aunque nada lo está usando, no puedo separar una base de datos porque está en uso.

Cannot detach the database 'DEMO' because it is currently in use.

He intentado reiniciar y aparece el mismo mensaje.

Jack B Nimble
fuente

Respuestas:

17
--Kick all users off of the database NOW
ALTER DATABASE YourDatabase SET SINGLE_USER WITH ROLLBACK IMMEDIATE

--Kick all but after 60 seconds
ALTER DATABASE YourDatabase SET SINGLE_USER WITH ROLLBACK AFTER 60 SECONDS

--restore connection to users
ALTER DATABASE YourDatabase SET MULTI_USER
Control de clasificación
fuente
12

¿Has intentado marcar la casilla "Desconectar conexiones" cuando la desconectas?

joeqwerty
fuente
Esperaba más para una solución relacionada con la consulta. Server Management Studio Express muy a menudo hace que mi máquina tenga una pantalla azul. Así que estoy usando una herramienta que solo envía consultas al servidor.
Jack B Nimble
Una pantalla azul generalmente está relacionada con problemas de hardware o del sistema operativo, no con una aplicación muy específica, como una herramienta de administración de bases de datos. No puedo imaginar por qué este programa en particular hace que su máquina se bloquee, pero este es definitivamente un síntoma de algún problema grave subyacente.
Massimo
Es una combinación de Visual Studio y Server Management Studio Express, porque he visto el comportamiento en 3 estaciones de trabajo diferentes. Puede ser que ejecute varias versiones de Visual Studio a la vez, sé que esto causa un comportamiento extraño en IE7 cuando se usan pestañas.
Jack B Nimble
1
  1. Desconectarse del servidor.
  2. Reinicie el servicio SQL Server para cerrar todas las conexiones.
  3. Inicie sesión con la autenticación de Windows.
  4. Separe fácilmente la base de datos.
MSS
fuente
1

No olvides marcar "Desconectar conexiones" desde la ventana "Separar base de datos", de lo contrario es muy simple y simplemente elige separar del menú, mira la imagen a continuación:

ingrese la descripción de la imagen aquí

Ashraf El-Maadidi
fuente
0

Este comando debería eliminar todas las conexiones y luego permitirle desconectar.

ALTER DATABASE SET SINGLE_USER WITH ROLLBACK_IMMEDIATE

DanBig
fuente