返回介绍

I. 教程

II. SQL 语言

III. 服务器管理

IV. 客户端接口

V. 服务器端编程

VI. 参考手册

VII. 内部

VIII. 附录

DROP ROLE

发布于 2019-09-30 03:11:27 字数 998 浏览 1000 评论 0 收藏 0

名称

DROP ROLE--删除一个数据库角色

语法

DROP ROLE [ IF EXISTS ] name [, ...]

描述

DROP ROLE 删除指定的角色。要删除一个超级用户角色,你自己必须也是一个超级用户;要删除非超级用户角色,你必须有 CREATEROLE 权限。

不能删除仍然被集群中的任意数据库引用的角色,如果想删除它,会抛出一个错误。在删除一个角色之前,你必须删除它拥有的所有对象(或者重新赋予他们新的所有者),并且撤销赋予该角色的任何权限。REASSIGN OWNEDDROP OWNED 命令可以达到这个目的。

不过,没有必要删除涉及该角色的角色成员关系;DROP ROLE 自动撤销目标角色在任何其它角色里面的成员关系,以及其它角色在目标角色里的成员关系。其它角色不会被删除,也不会受到其它影影响。

参数

IF EXISTS

如果指定的角色不存在,那么发出一个 notice 而不是抛出一个错误。

name

要删除的角色名字

注意

PostgreSQL 包含了一个 dropuser 程序,有着和这个命令相同的功能(实际上,它调用这个命令),但是它可以从命令行上运行。

例子

删除一个角色:

DROP ROLE jonathan;

兼容性

SQL 标准定义了 DROP ROLE ,但它只允许每次删除一个角色,并且它声明了和 PostgreSQL 使用的不同的权限要求。

又见

CREATE ROLE, ALTER ROLE, SET ROLE

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文