选择 打开 改范围 完整检索页

pgsql.cc 提供对 postgresql.org 官网内容的中文翻译,由 Pigsty 团队维护。

受支持版本: 当前版本 (18) / 17 / 16 / 15 / 14
测试与开发版本: 19 / devel
不受支持的版本: 13 / 12 / 11 / 10 / 9.6 / 9.5 / 9.4 / 9.3 / 9.2 / 9.1 / 9.0
历史版本PostgreSQL 9.3 已于 2018 年 11 月结束社区维护,本页译文保留供仍在使用旧版本的读者参考。新系统请看当前版本

DROP OWNED

DROP OWNED — 移除一个数据库角色所拥有的数据库对象

大纲

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

描述

DROP OWNED删除当前数据库中由指定角色之一拥有的所有对象。 同时,授予给这些角色的、针对当前数据库中的对象或共享对象 (数据库、表空间)的任何权限也会被撤销。

参数

name

一个角色的名称;该角色拥有的对象将被删除,并且授予给该角色的权限将被撤销。

CASCADE

自动删除依赖于该受影响对象的对象。

RESTRICT

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

注解

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

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

REASSIGN OWNED命令提供了另一种选择,它会重新分配由一个或多个角色拥有的所有数据库对象的拥有关系。不过,REASSIGN OWNED不处理针对其他对象的权限。

由这些角色拥有的数据库和表空间不会被移除。

更多讨论请见第 20.4 节

兼容性

DROP OWNED命令是PostgreSQL扩展。

提交更正

译文有误、术语不当或页面显示问题,请到译文仓库 pgsty/pgdoc 报告译文问题。 英文原文本身的问题,请在当前版本的对应页面向上游反馈;上游不再修订已结束维护的版本。