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 | +----------------+---------------+---------------+---------------+
以下示例从 guests
用户组撤消对 public
schema 中的所有表的所有权限,然后删除该组。
REVOKE ALL ON ALL TABLES IN SCHEMA public FROM GROUP guests; DROP GROUP guests;