SQL Serverでデータベースをデタッチする手順を紹介します。
SQL Server Management Studio を起動します。下図のウィンドウが表示されます。
左側の[オブジェクトエクスプローラー]のツリービューでSQL Serverのノード内にある、[データベース]ノードを開きます。サーバーにあるデータベースが子ノードとして表示されますので、デタッチするデータベースのノードをクリックして選択します。データベースのノードを選択した状態で右クリックしポップアップメニューを表示します。ポップアップメニューの[タスク]メニューの[デタッチ]サブメニューをクリックします。
[データベースのデタッチ]ダイアログが表示されます。
データベースに接続があるとデタッチできませんので、[接続の削除]のチェックボックスにチェックをします。設定ができたらダイアログ右下の[OK]ボタンをクリックします。
データベースのデタッチが開始されます。
データベースのデタッチが完了すると、オブジェクトエクスプローラからデタッチしたデータベースは表示されない状態になります。
SQL文を利用してデータベースをデタッチする場合は、sp_detach_db ストアドプロシージャーを利用します。
sp_detach_db @dbname='(デタッチするデータベース名)'
sp_detach_db '(デタッチするデータベース名)'
sp_detach_db 'SandBox'
上記コマンドにより、SandBoxデータベースをデタッチします。
デタッチができた場合は[コマンドは正常に完了しました。]のメッセージが出力されます。
データベースへの接続がある場合には、デタッチは失敗し、[データベース '(データベース名)'は現在使用中なので、デタッチできません。]のメッセージが出力されます。