Привет, Я DocuDroid!
Оценка ИИ поиска
Спасибо за оценку нашего ИИ поиска!
Мы будем признательны, если вы поделитесь своими впечатлениями, чтобы мы могли улучшить наш ИИ поиск для вас и других читателей.
GitHub

ALTER VIEW

Изменяет свойства представления.

Синтаксис

ALTER VIEW [ IF EXISTS ] <name> ALTER [ COLUMN ] <column_name> SET DEFAULT <expression>

ALTER VIEW [ IF EXISTS ] <name> ALTER [ COLUMN ] <column_name> DROP DEFAULT

ALTER VIEW [ IF EXISTS ] <name> OWNER TO <new_owner>

ALTER VIEW [ IF EXISTS ] <name> RENAME TO <new_name>

ALTER VIEW [ IF EXISTS ] <name> SET SCHEMA <new_schema>

ALTER VIEW [ IF EXISTS ] <name> SET ( <view_option_name> [= <view_option_value>] [, ... ] )

ALTER VIEW [ IF EXISTS ] <name> RESET ( <view_option_name> [, ... ] )

Описание

ALTER VIEW изменяет различные вспомогательные свойства представления. Если вы хотите изменить запрос, определяющий представление, используйте CREATE OR REPLACE VIEW.

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

Параметры

Параметр Описание

name

Имя (опционально с указанием схемы) существующего представления

IF EXISTS

Не завершать действие ошибкой, если представление не существует. В этом случае будет показано уведомление

SET/DROP DEFAULT

Эти формы устанавливают или удаляют значение по умолчанию для столбца. Значение по умолчанию столбца представления подставляется в любую команду INSERT или UPDATE, целью которой является представление, перед применением любых правил или триггеров для представления. Поэтому значение по умолчанию представления будет иметь приоритет над любыми значениями по умолчанию из базовых отношений

new_owner

Новый владелец представления

new_name

Новое имя представления

new_schema

Новая схема для представления

SET ( <view_option_name> [= <view_option_value>] [, …​ ] )
RESET ( <view_option_name> [, …​ ] )

Устанавливает или сбрасывает опцию представления. В настоящее время поддерживаются следующие опции:

  • check_option (строковый тип) — изменяет опцию проверки представления. Значение должно быть local или cascaded.

  • security_barrier (логический тип) — изменяет свойство барьера безопасности представления. Значение должно быть логическим, например true или false.

Примечания

По историческим причинам ALTER TABLE также может использоваться с представлениями; однако единственные варианты ALTER TABLE, допустимые с представлениями, эквивалентны операторам, показанным выше.

Например, переименовать представление myview в newview можно любым из следующих двух способов:

ALTER VIEW myview RENAME TO newview;
ALTER TABLE myview RENAME TO newview;

Примеры

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

ALTER VIEW foo RENAME TO bar;

Прикрепить значение столбца по умолчанию к обновляемому представлению:

CREATE TABLE base_table (id int, ts timestamptz);
CREATE VIEW a_view AS SELECT * FROM base_table;
ALTER VIEW a_view ALTER COLUMN ts SET DEFAULT now();
INSERT INTO base_table(id) VALUES(1);  -- ts получит значение NULL
INSERT INTO a_view(id) VALUES(2);  -- ts получит текущее время

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

ALTER VIEW является расширением Greengage DB стандарта SQL.

См. также