REASSIGN OWNED

Название

REASSIGN OWNED -- сменить владельца объектов базы данных, принадлежащих заданной роли

Синтаксис

REASSIGN OWNED BY старая_роль [, ...] TO новая_роль

Описание

REASSIGN OWNED указывает системе сменить владельца объектов базы данных, принадлежащих одной из старых_ролей, на новую_роль.

Параметры

старая_роль

Имя роли. Все объекты в текущей базе данных и все общие объекты (базы данных, табличные пространства), принадлежащие этой роли, станут принадлежать новой_роли.

новая_роль

Имя роли, которая станет новым владельцем затронутых объектов.

Замечания

REASSIGN OWNED часто применяется при подготовке к удалению одной или нескольких ролей. Так как команда REASSIGN OWNED затрагивает объекты только в текущей базе данных, обычно её нужно выполнять в каждой базе данных, которая содержит объекты, принадлежащие удаляемой роли.

Для выполнения REASSIGN OWNED требуются права и для исходной, и для целевой роли.

Команда DROP OWNED даёт альтернативную возможность — удалить все объекты базы данных, принадлежащие одной или нескольким ролям. Заметьте также, что DROP OWNED требует права только для исходной роли.

Команда REASSIGN OWNED не затрагивает права, которые даны старым_ролям для объектов, им не принадлежащих. Отозвать эти права можно, воспользовавшись командой DROP OWNED.

Совместимость

Оператор REASSIGN OWNED является расширением PostgreSQL.