1. ホーム
  2. sql-server

[解決済み】SQL Server 2005データベースへの現在の接続をすべて終了させる方法は?

2022-04-01 02:19:57

質問

データベースの名前を変更したいのですが、「couldn't get exclusive lock」というエラーが出続けます。これは、まだ何らかの接続がアクティブであることを意味します。

どうすれば、データベースへの接続をすべて切断して、名前を変更できるようになりますか?

解決方法は?

というアプローチになったのは アダムの提案 というのは、アクティブな接続をループしている間に新しい接続が確立される可能性があり、それを見逃してしまうからです。この欠点がないように、次のような方法を使うことができます。

-- set your current connection to use master otherwise you might get an error

use master
ALTER DATABASE YourDatabase SET SINGLE_USER WITH ROLLBACK IMMEDIATE 

--do you stuff here 

ALTER DATABASE YourDatabase SET MULTI_USER