Слайд 2Представление – это некоторые отдельные копии данных из таблицы (таблиц) или
другого представления (представлений), из которых они получены (иногда говорят, что это виртуальная таблица).
Синтаксис оператора, определяющего представление (в квадратных скобках записана необязательная часть):
сreate view имя_предст-я [(имя_слобца [, имя_столбца]…)]
as
select_оператор
Пример.
Схема БД:
Слайд 3Задание: Создать представление «Информация», содержащее всю информацию о туристах, оплативших какую-либо
путевку: фамилию, имя, отчество, телефон, сумма оплаты, тип оплаты, дата начала путевки, дата окончания путевки, количество мест, пункт назначения и стоимость путевки.
Запрос:
сreate view Информация (Фамилия, Имя, Отчество, Телефон, ПунктНазначения, СтоимостьПутевки, СуммаОплаты, ТипОплаты, ДатаНачала, ДатаКонца, КоличествоМест)
as select Фамилия, Имя, Отчество, Телефон, ПунктНазначения, Стоимость, Сумма, ТипОплаты, ДатаНачала, ДатаКонца, КоличествоМест
from Туристы Т, Оплата О, Путевка П
where Т.КодТуриста = О.КодТуриста and О.КодПутевки = П.КодПутевки
Слайд 4Использование представлений
Запрос к представлению выглядит абсолютно также, как к таблице. Например,
чтобы посмотреть фамилию туриста, стоимость путевки и оплаченную за неё (путевку) сумму, необходимо выполнить следующий запрос:
select Фамилия, СтоимостьПутевки, СуммаОплаты
from Информация;
Для выполнения аналогичного запроса без использования представления «Информация» пришлось бы выполнять объединение трех таблиц. При этом обращение к представлению работает быстрее, чем через запрос на объединение.
Слайд 5Задания на практическую работу
1) реализовать описанное выше представление, осуществить выборку данных
(любых, по вашему усмотрению) из созданного представления,
2) Реализовать представление, содержащее фамилию, имя и телефон туристов, которые не заплатили ни за одну путевку (название представления придумать самому). Осуществить выборку из данного представления имен и телефонов всех Ивановых.