с Firebird 2.5 ваша версия: любая

RECREATE VIEW

Версии сервера

2.53.04.05.06.0
ДаДаДаДаДа

Доступно в

DSQL

Формат

RECREATE VIEW viewname [<full_column_list>]
AS <select_statement>
[WITH CHECK OPTION];

<full_column_list> ::= (colname [, colname ...])

Описание

RECREATE VIEW создаёт новое представление или пересоздаёт существующее под тем же именем. По сути это последовательное выполнение DROP VIEW и CREATE VIEW одной операцией: если представление с именем viewname уже существует, сервер пытается удалить его и создать заново по определению из select_statement.

Имя представления может содержать до 63 символов. Необязательный список full_column_list задаёт имена столбцов представления; дубликаты в нём не допускаются. Предложение WITH CHECK OPTION контролирует изменения данных через представление.

Ключевое отличие от ALTER VIEW — в природе операции. Поскольку это удаление с последующим созданием, оператор не выполнится, если существующее представление имеет зависимости (другие представления, процедуры, триггеры, ссылающиеся на него). Даже при успешном пересоздании привязанные к старому объекту свойства теряются и должны быть восстановлены.

Удобен, когда представление создаётся с нуля или определение полностью меняется и зависимостей гарантированно нет: не нужно отслеживать существование объекта. Для точечной корректировки определения представления с зависимостями используйте ALTER VIEW.

Пример

RECREATE VIEW ACTIVE_CLIENTS (ID, NAME, CITY)
AS
SELECT CLIENT_ID, CLIENT_NAME, CITY
FROM CLIENTS
WHERE STATUS = 'ACTIVE';

См. также

CREATE VIEW, RECREATE TABLE, DISTINCT

Источник

Руководство по языку SQL СУБД Firebird 5.0 (sim1984 / ibase.ru, Public Documentation License)

Обсуждение