ALTER SCHEMA

ALTER SCHEMA — изменить определение схемы

Синтаксис

ALTER SCHEMA имя RENAME TO новое_имя
ALTER SCHEMA имя OWNER TO { новый_владелец | CURRENT_ROLE | CURRENT_USER | SESSION_USER }
ALTER SCHEMA имя SECURITY OFFICER TO new_security_officer
ALTER SCHEMA имя RESET SECURITY OFFICER

Описание

ALTER SCHEMA изменяет определение схемы.

Выполнить ALTER SCHEMA может только владелец соответствующей схемы. Чтобы переименовать схему, необходимо также иметь право CREATE в базе данных схемы. Чтобы сменить владельца, необходимо иметь право SET ROLE для новой роли-владельца, а эта роль должна иметь право CREATE в базе данных. (Суперпользователи наделяются этими правами автоматически.)

Предложения SECURITY OFFICER и RESET SECURITY OFFICER задают или удаляют администратора безопасности схемы соответственно. Когда задаётся администратор безопасности, схема становится защищённой схемой.

Параметры

имя

Имя существующей схемы.

новое_имя

Новое имя схемы. Новое имя не может начинаться с pg_, так как такие имена зарезервированы для системных схем.

новый_владелец

Новый владелец схемы.

new_security_officer

Новый администратор безопасности схемы.

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

Оператор ALTER SCHEMA отсутствует в стандарте SQL.

См. также

CREATE SCHEMA, DROP SCHEMA

ALTER SCHEMA

ALTER SCHEMA — change the definition of a schema

Synopsis

ALTER SCHEMA name RENAME TO new_name
ALTER SCHEMA name OWNER TO { new_owner | CURRENT_ROLE | CURRENT_USER | SESSION_USER }
ALTER SCHEMA name SECURITY OFFICER TO new_security_officer
ALTER SCHEMA name RESET SECURITY OFFICER

Description

ALTER SCHEMA changes the definition of a schema.

You must own the schema to use ALTER SCHEMA. To rename a schema you must also have the CREATE privilege for the database. To alter the owner, you must be able to SET ROLE to the new owning role, and that role must have the CREATE privilege for the database. (Note that superusers have all these privileges automatically.)

The SECURITY OFFICER clause sets the security officer of the schema, while the RESET SECURITY OFFICER clause resets the security officer. When you set the security officer, the schema becomes the vault schema.

Parameters

name

The name of an existing schema.

new_name

The new name of the schema. The new name cannot begin with pg_, as such names are reserved for system schemas.

new_owner

The new owner of the schema.

new_security_officer

The new security officer of the schema.

Compatibility

There is no ALTER SCHEMA statement in the SQL standard.

FAQ