Перейти к основному содержимому

ALTER MATERIALIZED VIEW

примечание

Эта страница переведена при помощи нейросети GigaChat.

ALTER MATERIALIZED VIEW — изменение определения материализованного представления.

Синтаксис

ALTER MATERIALIZED VIEW [ IF EXISTS ] name
action [, ... ]
ALTER MATERIALIZED VIEW name
[ NO ] DEPENDS ON EXTENSION extension_name
ALTER MATERIALIZED VIEW [ IF EXISTS ] name
RENAME [ COLUMN ] column_name TO new_column_name
ALTER MATERIALIZED VIEW [ IF EXISTS ] name
RENAME TO new_name
ALTER MATERIALIZED VIEW [ IF EXISTS ] name
SET SCHEMA new_schema
ALTER MATERIALIZED VIEW ALL IN TABLESPACE name [ OWNED BY role_name [, ... ] ]
SET TABLESPACE new_tablespace [ NOWAIT ]

where action is one of:

ALTER [ COLUMN ] column_name SET STATISTICS integer
ALTER [ COLUMN ] column_name SET ( attribute_option = value [, ... ] )
ALTER [ COLUMN ] column_name RESET ( attribute_option [, ... ] )
ALTER [ COLUMN ] column_name SET STORAGE { PLAIN | EXTERNAL | EXTENDED | MAIN | DEFAULT }
ALTER [ COLUMN ] column_name SET COMPRESSION compression_method
CLUSTER ON index_name
SET WITHOUT CLUSTER
SET ACCESS METHOD new_access_method
SET TABLESPACE new_tablespace
SET ( storage_parameter [= value] [, ... ] )
RESET ( storage_parameter [, ... ] )
OWNER TO { new_owner | CURRENT_ROLE | CURRENT_USER | SESSION_USER }

Описание

ALTER MATERIALIZED VIEW используется для изменения различных вспомогательных свойств уже существующего материализованного представления.

Чтобы выполнить эту команду, необходимо быть владельцем материализованного представления. Чтобы изменить схему, необходимо также иметь привилегию CREATE в целевой схеме.

Изменить владельца можно только при условии, что имеется право SET ROLE для новой роли-владельца, а сама роль обладает привилегией CREATE в текущей схеме представления. Эти требования обеспечивают, что смена владельца не предоставляет дополнительных возможностей, которых нельзя было бы достичь удалением и повторным созданием материализованного представления. Исключение составляют суперпользователи, которые могут изменять владельца любого материализованного представления без ограничений.

Доступные формы ALTER MATERIALIZED VIEW — это подмножество команд ALTER TABLE, и они имеют то же значение, что и для обычных таблиц. Подробная информация представлена в описании ALTER TABLE.

Параметры

name
Имя существующего материализованного представления, при необходимости дополненное схемой, которое должно быть изменено.
column_name
Имя существующего столбца в представлении.
extension_name
Имя расширения, от которого должно зависеть представление (или от которого оно должно быть отделено, если указано NO). Если представление связано с расширением, то оно будет автоматически удалено при удалении этого расширения.
new_column_name
Новое имя для существующего столбца в представлении.
new_owner
Имя нового владельца материализованного представления.
new_name
Новое имя материализованного представления.
new_schema
Новая схема материализованного представления.

Примеры

Переименование материализованного представления foo в bar:

ALTER MATERIALIZED VIEW foo RENAME TO bar;

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

ALTER MATERIALIZED VIEW является расширением PostgreSQL.

Смотрите также

CREATE MATERIALIZED VIEW, DROP MATERIALIZED VIEW, REFRESH MATERIALIZED VIEW