Представление (VIEW) — объект базы данных, являющийся результатом выполнения запроса к базы данных, определенного с помощью оператора SELECT, в момент обращения к представлению. Представление доступно для пользователя как таблица, но само оно не содержит данных, а извлекает их из таблиц в момент обращения к нему. Если данные изменены в базовой таблице, то пользователь получит актуальные данные при обращении к представлению, использующему данную таблицу.
Для создания представления используется оператор CREATE VIEW, имеющий следующий синтаксис:
где view_name - имя создаваемого представления. select_statement - оператор SELECT, выбирающий данные из таблиц и/или других представлений, которые будут содержаться в представлении
Оператор CREATE VIEW содержит 4 необязательные конструкции:
1) OR REPLACE - при использовании данной конструкции в случае существования представления с таким именем старое будет удалено, а новое создано.
2) ALGORITM - определяет алгоритм, используемый при обращении к представлению. UNDEFINED – автоматический выбор (по умолчанию).
3) column_list - задает имена полей представления.,
4) WITH CHECK OPTION - при использовании данной конструкции все добавляемые или изменяемые строки будут проверяться на соответствие определению представления. В случае несоответствия данное изменение не будет выполнено. Обратите внимание, что при указании данной конструкции для необновляемого представления возникнет ошибка и представление не будет создано.
При создании представления основанного на нескольких таблицах возможна ситуация повторения представления. Например:
CREATE VIEW v AS SELECT a.id, b.id FROM a,b;
Поэтому необходимо использовать псевдонимы имен:
CREATE VIEW v AS SELECT a.id a_id, b.id b_id FROM a,b;
Для просмотра содержимого представления используется оператор SELECT (полностью аналогично как в случае простой таблицы).