Представление

Материал из Энциклопедия о программировании
Перейти к: навигация, поиск

Представление (view, вид, вьюха) — в теории реляционных баз данных это объект данных, которых не содержит никаких данных его владельца; объект базы данных представляющий из себя таблицу созданную на основе SQL запроса. Это тип таблицы, чье содержание выбирается из других таблиц с помощью выполнения запроса. Поскольку значения в этих таблицах меняются, то автоматически, их значения могут быть показаны представлением.

Представления представляют из себя некое подобие ярлыков в иерархических файловых системах. Через ярлыки можно запускать программы хранящиеся где угодно и с разными ключами. При этом ярлык является лишь ссылкой на физический файл. Так же и представления, они являются лишь ссылками на реальные сущности базы данных. Именно от этой концепции изначально отталкивались инженеры, когда придумывали представления (виды).

Суть представления в том, что оно представляет из себя некую абстракцию таблицы (виртуальную таблицу), которая создаётся на основе SQL запроса хранящегося в представлении каждый раз при обращении к представлению.

Использование представлений основанных на улучшенных средствах запросов, таких как объединение и подзапрос, разработанных очень тщательно, в некоторых случаях даст больший выигрыш по сравнению с запросами.

Создание представления производится командой CREATE VIEW и выглядит следующим образом:

CREATE VIEW some_view1 AS
SELECT column1, column2, ...
FROM table1, ...
WHERE id > 10;

Создаём представление (вид) под названием some_view1 который буде представлять из себя таблицу созданную в результате запроса идущего после первого ключевого слова AS.

Ключевые основополагающие представления
  • Представление это объект базы данных
  • Представление это не сами данные, это запрос на основе которого создаются данные

Для чего нужны представления?

Вообще область применения представлений довольно обширна, но можно привести самые частые применения.

Например представления можно использовать для создания некоего фильтра за который пользователи с ограниченными правами не могут перейти. Таким образом можно уберечь и скрыть настоящую физическую структуру базы данных.

Представления так же будут крайне полезны при изменении структуры базы данных. Когда приложение работающее с этой базой без изменений не может работать с новой структурой базы, то можно создать представления, которые будут имитировать старую структуру. В этом случае приложение будет обращаться к представлениям.

Смотри ещё