Меню
Главная
Авторизация/Регистрация
 
Главная arrow Информатика arrow Базы данных

Работа с просмотрами

Просмотр (VIEW) является мощным средством обеспечения безопасности данных. Просмотр — это виртуальная таблица, которая строится на основе запроса на выборку данных (запрос SELECT). Исходя из конструкции запроса SELECT, просмотр может содержать данные как из одной таблицы, так и из нескольких таблиц.

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

  • • просмотр содержит данные только одной таблицы;
  • • просмотр содержит все поля с параметром NOT NULL',
  • • в запросе SELECT, на основе которого построен просмотр, отсутствуют ключевые слова DISTINCT и HAVING, также отсутствует соединение таблиц;
  • • запрос SELECT', на основе которого построен просмотр, не содержит вызов хранимых процедур, функций агрегирования и функций, определяемых пользователем.

Просмотр будет не редактируемым, если не выполняется хотя бы одно из условий, указанных выше для редактируемого запроса.

Создание просмотра

Для создания просмотра используется команда CREATE VIEW. Формат команды

CREATE VIEW мя просмотра> [(<имя поля 1>, <имя поля 2> ...)] AS запрос SELECT>

Если после имени просмотра отсутствует список имен полей, то просмотр будет содержать все поля, возвращаемые запросом SELECT.

Если после имени просмотра указан список имен полей, то в запросе SELECT должно быть указано такое же количество и тип полей. Допускается в запросе SELECT использовать вычисляемые поля. Варианты создания запроса SELECT рассмотрены в гл. 9.

Пример 5.32. Для таблицы (см. пример 5.2) построить просмотр, содержащий все поля таблицы BOOK.

CREATE VIEW Book_l AS SELECT * FROM BOOK;

Пример 5.33. Для таблицы (см. пример 5.2) построить просмотр, содержащий часть полей таблицы BOOK.

CREATE VIEW Book_ll AS SELECT Name_Book, Year, Volume, Price, Kolvo FROM BOOK;

Пример 5.34. Для таблицы (см. пример 5.2) построить просмотр, содержащий часть полей таблицы BOOK и вычисляемое поле.

CREATE VIEW Book_21 (NameBook, Year, Stoim)

AS SELECT Name Book, Year, Price * Kol vo FROM BOOK;

Пример 5.35. Для таблицы (см. пример 5.2) построить просмотр, содержащий часть полей таблицы BOOK и с ограничением на количество записей.

CREATE VIEW Book_31 AS SELECT Name Book, Year, Volume, Price FROM BOOK WHERE Year BETWEEN 2000 AND 2008;

Пример 5.36. Для таблиц (см. пример 5.8) построить просмотр, содержащий все поля четырех таблиц.

CREATE VIEW Book_101 AS SELECT *

FROM AUTHOR A, FAM F, IM I, ОТ О WHERE A.Key_fam = F.Key_fam AND A.Key im = I.Keyim AND A.Key_ot = O.Key_ot;

Пример 5.37. Для таблиц (см. пример 5.8) построить просмотр, содержащий некоторые поля четырех таблиц.

CREATE VIEW Book_l 11

AS SELECT Fam, Im, Ot, Name Book, Year, Price FROM AUTHOR A, FAM F, IM I, ОТ О WHERE A. Key Jam - F. Key Jam AND A.Key im = I.Keyim AND A.Key_ot = O.Key_ot;

Удаление просмотра

Для этих целей предусмотрена команда DROP VIEW <имя просмотра>;

Пример 5.38. Удалить просмотр, содержащий все поля таблицы BOOK.

DROP VIEW Book_21;

 
Если Вы заметили ошибку в тексте выделите слово и нажмите Shift + Enter
< Пред   СОДЕРЖАНИЕ   След >
 

Популярные страницы