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.