^ Dit is het probleem dat je moet oplossen.
Zorg ervoor dat u zich niet IN die database bevindt. Sluit alle queryvensters die ermee verbonden zijn, sluit Object Explorer Details af, sluit SSMS en open het opnieuw zonder dat Object Explorer verbonden is met die server, enz. Voer dit uit:
USE [master];
GO
ALTER DATABASE mydb SET SINGLE_USER WITH ROLLBACK IMMEDIATE;
GO
USE mydb;
GO
Dat zou je in staat moeten stellen om het online te brengen, dan zou je de commando's uitvoeren die je opsomde.
Maar:
- Dit kan langer duren dan je zou kunnen, afhankelijk van welke terugdraaiactiviteit er moet gebeuren met de sessies die je eruit gooit.
- Het is altijd mogelijk dat wanneer je het instelt op één gebruiker, een ander proces sneller kan zijn dan jij en die ene verbinding kan nemen. Als je merkt dat dit gebeurt, kun je erachter komen wie het is met behulp van sp_whoisactive
of DMV's zoals
sys.dm_tran_locks
- het kan zijn dat u het verbinden van applicaties moet onderbreken en/of SQL Server Agent moet afsluiten.