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