# 重新分配拥有

REASSIGN OWNED — 更改数据库角色拥有的数据库对象的所有权

# 概要

REASSIGN OWNED BY { old_role | CURRENT_ROLE | CURRENT_USER | SESSION_USER } [, ...]
               TO { new_role | CURRENT_ROLE | CURRENT_USER | SESSION_USER }

# 描述

重新分配拥有指示系统更改任何数据库对象的所有权*旧角色新角色*.

# 参数

旧角色

角色的名称。当前数据库中所有对象的所有权,以及所有共享对象(数据库、表空间)的所有权,由该角色拥有将被重新分配给*新角色*.

新角色

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

# 笔记

重新分配拥有通常用于准备删除一个或多个角色。因为重新分配拥有不影响其他数据库中的对象,通常需要在每个包含要删除的角色拥有的对象的数据库中执行此命令。

重新分配拥有需要源角色和目标角色的成员资格。

掉落拥有command 是一种替代方法,它简单地删除一个或多个角色拥有的所有数据库对象。

重新分配拥有命令不会影响授予*旧角色*在不属于他们的对象上。同样,它不会影响使用创建的默认权限更改默认权限.采用掉落拥有撤销此类特权。

第 22.4 节进行更多讨论。

# 兼容性

重新分配拥有命令是 PostgreSQL 扩展。

# 也可以看看

掉落拥有,删除角色,更改数据库