Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
пр 13.doc
Скачиваний:
6
Добавлен:
30.08.2019
Размер:
140.8 Кб
Скачать

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

Основу базы данных составляют базовые таблицы, т. е. таблицы с реальными данными. На основе данных базовых таблиц по запросам результаты представляются в таблицах, которые не содержат собственных данных.

Представление (\\t-w) — это альтернативный способ просмотра данных из одной или нескольких таблиц; это виртуальная таблица, которая не содержит собственных данных; ее содержимое берется или выводится из других таблиц. Представления:

1) позволяют пользователям видеть данные базы данных по-разному, с позиций своих интересов;

2) упрощают доступ к базе данных: каждый пользователь видит данные определенной структуры, хранимые в базе данных;

3) являются одним из средств ограничения доступа к данным (пользователь видит не все столбцы и строки). Создается представление командой CREATE VIEW:

CREATE VIEW <имя_представлення>

AS SELECT предикат (WITH CHECK OPTIONS];

На протяжении выполнения команды CREATE VIEW выполняется запрос, по результатам которого формируется содержимое таблицы-представления. Если указано WITH CHECK OPTIONS, то эти обновления должны удовлетворять условию запроса.

Пример. Создать представление с именем SportGimnast, отображающее пловцов и гимнастов 1-го курса:

CREATE VIEW SportGimnast

AS SELECT plovec, gymnast

FROM Sport

WHERE kurs=l;

Групповое представление содержит предложение GROUP BY или базируется на других групповых представлениях. Например, деканаты ежедневно отслеживают пропуски занятий студентами. Можно получить соответствующую информацию по запросу, а можно создать представление и получать нужную информацию:

CREATE VIEW Propuski

AS SELECT date, COUNT (propuski), SUM ()

FROM Spisok

GROUP BY date;

После этого можно получить необходимую информацию с помощью запроса:

SELECT*

FROM Propuski;

Задания для самостоятельной работы.

  1. Создать SQL-запрос на отображение всех товаров, начинающихся с буквы «М» из таблицы Товары. В случае, если название таблицы или поля состоит из двух и более слов, разделенных пробелом, его нужно заключать в квадратные скобки, например SELECT * FROM [Студенты по списку] WHERE ((([Студенты по списку].[Название группы]) Like "[ТО31]*"));

  2. Создать SQL-запрос на отображение всех товаров, проданных в первом магазине.

  3. Создать SQL-запрос для отображения всех сотрудников 2 магазина.

  4. Создать SQL-запрос для отображения товаров, цена которых меньше 1000.