^ Este é o problema que você precisa resolver.
Certifique-se de que você não está nesse banco de dados. Feche todas as janelas de consulta conectadas a ele, desligue os Detalhes do Pesquisador de Objetos, feche o SSMS e abra-o novamente sem o Pesquisador de Objetos conectado a esse servidor, etc. Execute isto:
USE [master];
GO
ALTER DATABASE mydb SET SINGLE_USER WITH ROLLBACK IMMEDIATE;
GO
USE mydb;
GO
Isso deve permitir que você o coloque online e, em seguida, execute os comandos listados.
No entanto:
- Isso pode demorar mais do que o normal, dependendo de qual atividade de reversão precisa acontecer nas sessões que você está excluindo.
- É sempre possível que, quando você o define como usuário único, outro processo seja mais rápido do que você e use essa conexão única. Se você achar que isso acontece, você pode descobrir quem está usando sp_whoisactive
ou DMVs como
sys.dm_tran_locks
- pode ser que você precise suspender os aplicativos de conexão e/ou desligar o SQL Server Agent.