Hitachi

ノンストップデータベース HiRDB Version 9 SQLリファレンス


3.31.1 DROP VIEW(ビュー表の削除)

〈この項の構成〉

(1) 機能

ビュー表を削除します。

(2) 使用権限

指定するビュー表の所有者

自分が所有するビュー表を削除できます。

DBA権限を持つユーザ

他ユーザの所有するビュー表を削除できます。

(3) 形式

 DROP VIEW 〔認可識別子.〕表識別子〔WITH PROGRAM〕

(4) オペランド

(a) 〔認可識別子.〕表識別子〔WITH PROGRAM〕

認可識別子

ビュー表を所有するユーザの認可識別子を指定します。省略した場合,実行するユーザの認可識別子を仮定します。

表識別子

削除するビュー表の名前を指定します。

WITH PROGRAM

ビュー表を削除する場合,そのビュー表を使用する手続き,及びトリガの有効なSQLオブジェクトを無効にしたいときに指定します。

WITH PROGRAMを省略した場合,そのビュー表を使用する手続き,及びトリガの有効なSQLオブジェクトがあると,そのビュー表は削除できません。

(5) 共通規則

  1. ビュー表を削除すると,そのビュー表に対するアクセス権限,及び削除するビュー表から定義したビュー表も削除されます。

  2. 実行中のSQLオブジェクトが無効になる場合,Java手続き中からDROP VIEWは実行できません。

(6) 留意事項

  1. DROP VIEWは,OLTP下のX/Openに従ったUAPから指定できません。

  2. WITH PROGRAMを指定して手続き,及びトリガの有効なSQLオブジェクトを無効にした場合,ディクショナリ表SQL_ROUTINE_RESOURCES中の無効となった手続き,及びトリガの情報は削除されます。

  3. WITH PROGRAMを指定して無効にした手続き,及びトリガのSQLオブジェクトを実行するためには,ALTER ROUTINE又はALTER PROCEDUREを実行して手続き,及びトリガのSQLオブジェクトを再作成しておく必要があります。

  4. WITH PROGRAMを指定して無効にしたトリガのSQLオブジェクトを実行するためには,次のどちらかの操作をする必要があります。

    • ビュー表を定義し直して,ALTER TRIGGER又はALTER ROUTINEを実行してトリガのSQLオブジェクトを再作成する。

    • 無効にしたトリガをDROP TRIGGERで削除してから,削除したビュー表を使用しないようにCREATE TRIGGERでトリガを再定義します。ただし,次のすべての条件を満たすトリガがある場合は,それらもすべてDROP TRIGGERで削除し,定義していた順にCREATE TRIGGERで再定義しないと,トリガ動作の実行順序が変わります。

      (条件)

      ・無効にしたトリガよりも定義したのが後である。

      ・無効にしたトリガと定義した表が同じである。

      ・無効にしたトリガとトリガ契機(INSERT,UPDATE,又はDELETE)が同じである(ただし,UPDATEの場合は,トリガ契機列の指定の有無,及び内容に関係なく同じとみなされます)。

      ・無効にしたトリガとトリガ動作時期(BEFORE又はAFTER)が同じである。

      ・無効にしたトリガとトリガの動作する単位(行単位又は文単位)が同じである。

(7) 使用例

在庫表(ZAIKO)から定義したビュー表(VZAIKO1)を削除します。

    DROP VIEW VZAIKO1