DROP DATABASE
DROP DATABASE ステートメントにより、データベースを削除します。Master ユーザーのみがこのステートメントを発行できます。
構文
DROP DATABASE データベース名 [DELETE FILES]
データベース名 ::= ユーザー定義名
備考
このステートメントを発行するには、Master ユーザーとしてデータベースにログオンしている必要があります。DROP DATABASE ステートメントを使用すると、セキュリティ設定で削除が許可されていれば、現在ログオンしているデータベースも含め、あらゆるデータベースを削除できます。下記の
セキュリティで保護されたデータベースを参照してください。
DROP DATABASE は、defaultdb や tempdb などのシステム データベースを削除する場合には使用できません。選択し、セキュリティで許可されていれば、このステートメントを使用して最後のユーザー定義データベースを削除できます。
DROP DATABASE ステートメントは、ストアド プロシージャおよびユーザー定義関数内では使用できません。
セキュリティで保護されたデータベース
トランザクショナルのセキュリティ モデル「データベース」で保護されたデータベースは削除できません。『
Advanced Operations Guide』の
MicroKernel エンジンで使用可能なモデルを参照してください。
以下の方法でセキュリティ保護されているデータベースは削除できます。
•「クラシック」 - トランザクショナル セキュリティ モデル
•「混合」 - トランザクショナル セキュリティ モデル
•リレーショナル セキュリティ(Master パスワード)と、「クラシック」または「混合」トランザクショナル モデルの組み合わせ
『
Advanced Operations Guide』の
セキュリティ モデルと概念を参照してください。
DELETE FILES
DELETE FILES 句は、データ辞書ファイル(DDF)の削除を指示します。データ ファイルは削除されません。
DELETE FILES を省略した場合、DDF は物理記憶域に残りますが、データベース名は dbnames.cfg から削除されます(dbnames.cfg から名前が削除されると、そのデータベースはもうデータベース エンジンにとって存在しないことになります)。DDF を保持しておくことによって、データベースの再作成を選択した場合にその実行が可能になります。
DDF を削除するとき、DDF は使用中であってはいけないことに注意してください。たとえば、PSQL Control Center を開いている場合に DELETE FILES 句を使用すると、"ファイルがロックされています" というエラーが返されます。PCC を開くことで DDF が使用中になり、DDF が削除されないようになります。
例
次の例によって、データベース名 "inventorydb" は dbnames.cfg から削除されますが、データベースの DDF(およびデータ ファイル)は物理記憶域に保持されます。
DROP DATABASE inventorydb
============
次の例では、データベース名 "HRUSBenefits" とその DDF が削除されます。HRUSBenefits のデータ ファイルは保持されます。
DROP DATABASE HRUSBenefits DELETE FILES
関連項目