Visual Studioデータベースプロジェクトから(TFS自動ビルドを介して)頻繁に再展開する開発データベースがあります。
ビルドを実行すると、次のエラーが発生することがあります。
ALTER DATABASE failed because a lock could not be placed on database 'MyDB'. Try again later.
ALTER DATABASE statement failed.
Cannot drop database "MyDB" because it is currently in use.
私はこれを試しました:
ALTER DATABASE MyDB SET RESTRICTED_USER WITH ROLLBACK IMMEDIATE
それでもデータベースを削除できません。(私の推測では、ほとんどの開発者がdbo
アクセスできます。)
手動で実行SP_WHO
して接続を強制終了できますが、自動ビルドでこれを行う自動方法が必要です。(今回の接続は、ドロップしようとしているdb上の唯一のものです。)
接続しているユーザーに関係なくデータベースを削除できるスクリプトはありますか?