Hitachi

ノンストップデータベース HiRDB Version 10 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