Redrock Postgres 搜索 英文
版本: 9.3 / 9.4 / 9.5 / 9.6 / 10 / 11 / 12 / 13 / 14 / 15 / 16 / 17

DROP OWNED

DROP OWNED — 删除数据库角色拥有的数据库对象

语法

DROP OWNED BY { name | CURRENT_ROLE | CURRENT_USER | SESSION_USER } [, ...] [ CASCADE | RESTRICT ]

描述

DROP OWNED 删除当前数据库中由指定角色之一拥有的所有对象。还会吊销授予给当前数据库中的对象或共享对象(数据库、表空间、配置参数)上给定角色的任何权限。

参数

名称

将删除其对象并吊销其权限的角色名称。

级联

自动删除依赖于受影响对象的,以及又继而依赖于那些对象的全部对象(参见第 5.15 节)。

限制

如果任何其他数据库对象依赖于受影响的某个对象,请拒绝删除该角色拥有的对象。这是默认设置。

说明

DROP OWNED 通常用来为删除一个或多个角色做准备。因为 DROP OWNED 只会影响当前数据库中的对象,所以通常需要在包含要删除的角色所拥有的对象的每个数据库中执行此命令。

使用 CASCADE 选项可能会使命令递归到其他用户所拥有的对象。

REASSIGN OWNED 命令是一个替代命令,该命令重新分配一个或多个角色所拥有所有数据库对象的所属权。但是,REASSIGN OWNED 不会处理其他对象的权限。

属于该角色的数据库和表空间不会被删除。

请参阅 第 21.4 节 了解更多讨论。

兼容性

DROP OWNED 命令是 PostgreSQL 扩展。

另请参见

REASSIGN OWNEDDROP ROLE