Hitachi

Hitachi Advanced Database SQLリファレンス


3.17.1 DROP ROLE文の指定形式および規則

ロールを削除します。

〈この項の構成〉

(1) 指定形式

DROP ROLE文::=DROP ROLE ロール名削除動作削除動作::={CASCADE|RESTRICT}

(2) 指定形式の説明

ロール名

削除するロールの名称を指定します。

定義していないロール名は指定できません。

ロール名の指定規則については,「6.1.4 名前の指定」を参照してください。

削除動作
削除動作::={CASCADE|RESTRICT}

この指定は,次のどちらかの場合に限り有効となります。

  • ロールの削除に伴い,HADBユーザが持っているSELECT権限が取り消される場合

  • ロールの削除に伴い,HADBユーザが持っているREFERENCES権限が取り消される場合

削除動作の指定を省略した場合,CASCADEが仮定されます。

CASCADE

次のどちらかの条件を満たす場合でも,ロールを削除するときに指定します。

  • 取り消し対象のSELECT権限を使用して定義したビュー表がある場合

    この場合,該当するビュー表は無効化されます。また,無効化されるビュー表に依存するビュー表も無効化されます。

  • 取り消し対象のREFERENCES権限を使用して定義した参照制約がある場合

    この場合,該当する参照制約は削除されます。

RESTRICT

次のどちらかの条件を満たす場合は,DROP ROLE文をエラーとするときに指定します。

  • 取り消し対象のSELECT権限を使用して定義したビュー表がある場合

  • 取り消し対象のREFERENCES権限を使用して定義した参照制約がある場合

(3) 実行時に必要な権限

DROP ROLE文を実行する場合,DBA権限およびCONNECT権限が必要になります。

(4) 規則

  1. 自分(HADBサーバに接続中の認可識別子のHADBユーザ)が定義したロールだけを削除できます。ほかのHADBユーザが定義したロールは削除できません。

  2. ロールを削除した場合,HADBユーザに付与されているロール利用権限が取り消されます。それに伴い,削除対象のロールによってHADBユーザに付与されているアクセス権限もすべて取り消されます。

  3. ロールの削除によって,HADBサーバに接続中のHADBユーザが持っているアクセス権限が変更された場合,次のタイミングで変更後のアクセス権限が有効になります。

    • そのHADBユーザが実行する次のトランザクション以降

(5) 例題

例題

ロール(ROLE01)を削除します。

DROP ROLE "ROLE01"