使用中のデータベースをデタッチするにはどうすればよいですか?


14

何も使用していませんが、使用中のためデータベースをデタッチできません。

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

再起動を試みましたが、同じメッセージが表示されます。

回答:


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

12

接続を解除するときに「接続をドロップ」ボックスをチェックしようとしましたか?


クエリ関連のソリューションをもっと期待していました。Server Management Studio Expressを使用すると、マシンがブルースクリーンになることがよくあります。そこで、サーバーにクエリを送信するだけのツールを使用しています。
ジャックBニンブル

ブルースクリーンは通常、データベース管理ツールなどの特定のアプリケーションではなく、ハードウェアまたはOSレベルの問題に関連しています。この特定のプログラムがマシンをクラッシュさせる理由を想像することはできませんが、これは間違いなく根本的な深刻な問題の症状です。
マッシモ

Visual StudioとServer Management Studio Expressの組み合わせです。3つの異なるワークステーションで動作が見られたためです。複数のバージョンのVisual Studioを一度に実行したことが原因である可能性があります。これにより、タブを使用するとIE7で奇妙な動作が発生することがわかります。
ジャックBニンブル

1
  1. サーバーから切断します。
  2. SQL Serverサービスを再起動して、すべての接続を閉じます。
  3. Windows認証でログインします。
  4. データベースを簡単にデタッチします。

1

[データベースの接続解除]ウィンドウから[接続のドロップ]をチェックすることを忘れないでください。そうしないと、メニューから[接続解除]を選択するだけです。下の画像を参照してください。

ここに画像の説明を入力してください


0

このコマンドはすべての接続をドロップしてから、デタッチできるようにします。

ALTER DATABASE SET SINGLE_USER WITH ROLLBACK_IMMEDIATE

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.