REASSIGN OWNED

Name

REASSIGN OWNED -- 更改一个数据库角色拥有的数据库对象的拥有关系

Synopsis

REASSIGN OWNED BY old_role [, ...] TO new_role

描述

REASSIGN OWNED指示系统把 old_role 拥有 的数据库对象的拥有关系更改为 new_role。

参数

old_role

一个角色的名称。这个角色在当前数据库中所拥有的 所有对象以及所有共享对象(数据库、表空间)的 所有权都将被重新赋予给 new_role

new_role

将作为受影响对象的新拥有者的角色名称。

注解

REASSIGN OWNED经常被用来为移除一个 或者多个角色做准备。因为REASSIGN OWNED不影响其他数据库中的对象,通常需要在包含有 被删除的角色所拥有的对象的每一个数据库中都执行这个命令。

REASSIGN OWNED同时要求源角色和目标 角色上的特权。

DROP OWNED命令可以删掉一个或者多个角色所拥有 的所有数据库对象。注意DROP OWNED只要求 源角色上的特权。

REASSIGN OWNED命令不会影响授予给 old_role 的在它们不拥有的对象上的特权。DROP OWNED 可以回收那些特权。

兼容性

REASSIGN OWNED语句是一种 PostgreSQL扩展。

另见

DROP OWNED, DROP ROLE, ALTER DATABASE