スケーラブルデータベースサーバ HiRDB Version 8 SQLリファレンス
DROP SCHEMA(スキーマ削除)
機能
使用権限
- スキーマの所有者
- ユーザ自身のスキーマを削除できます。
- DBA権限を持つユーザ
- 他ユーザのスキーマを削除できます。
形式
オペランド
- 認可識別子
- スキーマの所有者の認可識別子を指定します。
- WITH PROGRAM
- スキーマを削除するときに,指定したスキーマ内の実表,ビュー表,外部表,インデクス,外部インデクス,抽象データ型,ルーチン,トリガ,及び順序数生成子を使用する,関数,手続き,及びトリガの有効な他ユーザのSQLオブジェクトを無効にしたいときに指定します。
- WITH PROGRAMを省略した場合,スキーマ内の実表,ビュー表,外部表,インデクス,外部インデクス,抽象データ型,手続き,トリガ,及び順序数生成子を使用する,関数,手続き,及びトリガの有効な他ユーザのSQLオブジェクトがあると,そのスキーマは削除できません。
共通規則
- 指定した認可識別子のスキーマ内のすべての実表,ビュー表(パブリックビューも含む),外部表,インデクス,外部インデクス,コメント,アクセス権限,ルーチン(DROP SCHEMAで指定した認可識別子が定義したパブリック手続き,パブリック関数を含む),トリガ,抽象データ型,インデクス型,及び順序数生成子が削除されます。
- WITH PROGRAMを指定しても,指定したスキーマ内の抽象データ型,関数,手続き,トリガ,及び順序数生成子を使用する,関数,手続き,トリガ,及び順序数生成子の有効な他ユーザのSQLオブジェクトがあると,そのスキーマは削除できません。
- 指定したスキーマ内の関数を使用する,他ユーザのビュー表,又は他ユーザが定義したパブリックビューがある場合,そのスキーマは削除できません。
- スキーマ内の抽象データ型を使用する,他ユーザの表又はインデクスがある場合,そのスキーマは削除できません。
- 次のような場合,Java手続き中からDROP SCHEMAは実行できません。
- 実行中のSQLオブジェクトが無効になる場合,又は削除される場合
- 実行中のJava手続きが削除される場合
- 指定したスキーマ内の表,インデクス,及び表に定義しているLOB列,LOB属性を含む抽象データ型の列を,インナレプリカ機能を適用しているRDエリアに格納している場合,ある条件を満たしていれば削除ができます。インナレプリカ機能を使用している場合のDROP SCHEMAの実行条件については,マニュアル「インナレプリカ機能 HiRDB Staticizer Option Version 8」を参照してください。
- 指定したスキーマ内に改竄防止表があり,かつその改竄防止表に行がある場合,そのスキーマは削除できません。
- DBA権限を持つユーザは監査人のスキーマを削除できますが,監査人のスキーマ内に監査証跡表がある場合は監査人のスキーマを削除できません。
留意事項
- DROP SCHEMAは,OLTP下のX/Openに従ったUAPから指定できません。
- WITH PROGRAMを指定して関数,手続き,トリガ,及び順序数生成子の有効なSQLオブジェクトを無効にした場合,ディクショナリ表SQL_ROUTINE_RESOURCES中の無効となった関数,手続き,トリガ,及び順序数生成子の情報は削除されます。
- WITH PROGRAMを指定して無効にした関数,手続き,トリガ,及び順序数生成子の有効なSQLオブジェクトを実行するためには,ALTER ROUTINE,ALTER PROCEDURE,又はALTER TRIGGERを実行して,関数,手続き,トリガ,及び順序数生成子の有効なSQLオブジェクトを再作成しておく必要があります。
使用例
ユーザ(認可識別子:USER1)が持っているスキーマを削除します。
DROP SCHEMA
AUTHORIZATION USER1
All Rights Reserved. Copyright (C) 2006, 2016, Hitachi, Ltd.