- ベストアンサー
SQL Server Management Studio Expressを使用してデータベースを削除する方法
- Microsoft SQL Server Management Studio Expressを使用してデータベースを削除する方法について教えてください。
- データベース削除操作を実行する際に、「バックアップを削除し、データベースの履歴情報を復元する」オプションについても教えてください。
- バックアップファイルが削除されずに残ってしまう理由についても教えてください。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
実際に 2タイプの削除操作の際にバックでどんな T-SQL が動いているか、SQL Server Management Studio の [ツール]-[SQL Server Profiler] でトレースして確認することができます。 実験したデータベースは作って間もない、テーブルも作ってないデータベースです。 大きく違うのは、 [バックアップを削除し、データベースの履歴情報を復元する] にチェックを入れた場合は sp_delete_database_backuphistory というストアド プロシージが実行され、その後に DROP DATABASE が実行されるのに対し、 [バックアップを削除し、データベースの履歴情報を復元する] にチェックを入れなかった場合は DROP DATABASE だけが実行されていました。 (実際にはその過程でいろんな SELECT が動いてます) バックアップのファイルを物理的に削除するというよりは、システム DB などに記録されている「バックアップの履歴」を削除するというイメージじゃないですかね。 バックアップしたファイルは SQL Server からするとバックアップした瞬間から外部ファイルであって、SQL Server の管理外にあるファイルになるんだと思います。 余談ですが、SQL Server Profiler というツールはかなり便利なツールです。 Management Studio のような GUI ツールで DB を操作した時、実際に SQL Server 上ではどんな SQL 文を実行しているのかが分かりますので、例えば自作の Web ブラウザ版 Management Studio のようなツールを開発するのにも役立ちます。
お礼
わかりやすい説明ありがとうございました。