DROP GROUP
ユーザーグループを削除します。このコマンドを元に戻すことはできません。このコマンドでは、グループ内の個々のユーザーは削除されません。
個々のユーザーの削除については、DROP USER を参照してください。
構文
DROP GROUP name
パラメータ
- [名前]
-
削除するユーザーグループの名前。
例
次の例では、guests
ユーザーグループを削除します。
DROP GROUP guests;
グループがオブジェクトに対して特権を持っている場合、そのグループを削除することはできません。このようなグループを削除しようとすると、以下のエラーが発生します。
ERROR: group "guests" can't be dropped because the group has a privilege on some object
グループが特定のオブジェクトに対して特権を持っている場合、グループを削除する前に、その特権を削除する必要があります。guests
グループが権限を持っているオブジェクトを見つけるには、次の例を使用します。この例で使用されているメタデータビューの詳細については、「SVV_RELATION_PRIVILEGES」を参照してください。
SELECT DISTINCT namespace_name, relation_name, identity_name, identity_type FROM svv_relation_privileges WHERE identity_type='group' AND identity_name='guests';
+----------------+---------------+---------------+---------------+ | namespace_name | relation_name | identity_name | identity_type | +----------------+---------------+---------------+---------------+ | public | table1 | guests | group | +----------------+---------------+---------------+---------------+ | public | table2 | guests | group | +----------------+---------------+---------------+---------------+
次の例は、public
ユーザーグループから guests
スキーマ内のすべてのテーブルに対するすべての特権を削除してから、グループを削除します。
REVOKE ALL ON ALL TABLES IN SCHEMA public FROM GROUP guests; DROP GROUP guests;