取消 WITH GRANT OPTION 授予的权限

如果您从 user 取消您使用 WITH GRANT OPTION 关键字授予的权限或角色,则切断由那个 user 授予的权限的链条。

这样,当您从用户或从角色取消权限时,您还取消了在下列上下文中 GRANT 语句所产生的相同的权限:

在给特定的用户指定权限的 GRANT 语句中,仅 WITH GRANT OPTION 子句是有效的。被授予者不可为 PUBLIC 组或角色。

下列示例展示权限的取消。假设您,作为表 items 的所有者,发出下列语句来将访问权限授予用户 mary
REVOKE ALL ON items FROM PUBLIC;
        GRANT SELECT, UPDATE ON items TO mary WITH GRANT OPTION;
然后,用户 mary 使用她的新权限来授予用户 cathypaulitems 表的访问:
GRANT SELECT, UPDATE ON items TO cathy;
        GRANT SELECT ON items TO paul;
稍后,您从用户 mary 取消对 items 表的权限:
REVOKE SELECT, UPDATE ON items FROM mary;

此单一语句有效地从用户 marycathypaul取消对 items 表的所有权限。

CASCADE 关键字与此缺省的情况有相同的作用。