ГУАП
КАФЕДРА № 41
ОТЧЕТ ЗАЩИЩЕН С ОЦЕНКОЙ
ПРЕПОДАВАТЕЛЬ
ассистент |
|
|
|
В.В. Боженко |
|
|
|
|
|
|
|
|
|
|
должность, уч. степень, звание |
|
подпись, дата |
|
инициалы, фамилия |
ОТЧЕТ О ЛАБОРАТОРНОЙ РАБОТЕ №7
СОЗДАНИЕ ТРИГГЕРОВ
по курсу: БАЗЫ ДАННЫХ
РАБОТУ ВЫПОЛНИЛ |
|
|
|
|
|
СТУДЕНТ ГР. № |
17.12.2021 |
|
|
||
|
|
|
|
|
|
|
|
|
подпись, дата |
|
инициалы, фамилия |
Санкт-Петербург 2021
Цель работы
Изучить операции по созданию триггеров на сервере MySQL.
Описание предметной области
Описание предметной области в соответствии с индивидуальным вариантом №10.
Музыкальные группы дают концерты, которые проводятся в концертных залах. О музыкальной группе должна храниться следующая информация: название группы, количество альбомов, сайт группы, стиль исполнения, год создания группы. О предстоящем концерте должна присутствовать информация: название концерта, название выступающей группы, дата концерта, место проведения концерта. Билеты на концерт можно заказать через Интернет. При выступлении в концертном зале цена билета зависит от места расположения (фанзона, VIP-места, сидячие). Концертный зал характеризуется номером концертного зала, адресом концертного зала, номером телефона, количеством мест в зале.
Схема данных
Схема данных в соответствии с рисунком 1.
Рисунок 1 – Схема данных
2
Данные таблиц
Данные таблицы «musicalgroup» в соответствии с рисунком 2.
Рисунок 2 – Таблица «musicalgroup»
Данные таблицы «concerthall» в соответствии с рисунком 3.
Рисунок 3 – Таблица «concerthall»
Данные таблицы «location» в соответствии с рисунком 4.
Рисунок 4 – Таблица «location»
Данные таблицы «concert» в соответствии с рисунком 5.
Рисунок 5 – Таблица «concert»
Данные таблицы «contract» в соответствии с рисунком 6.
Рисунок 6 – Таблица «contract»
Данные таблицы «ticket» в соответствии с рисунком 7.
3
Рисунок 7 – Таблица «ticket»
Данные таблицы «orders» в соответствии с рисунком 8.
Рисунок 8 – Таблица «orders»
4
Ход работы
1)Создали триггер «trig_ins», привязанный к событию insert,
который подсчитывает количество внесений новых записей в таблицу
«musicalgroup». Код и результат срабатывания триггера в соответствии с рисунками 9-12.
Рисунок 9 – Код триггера «trig_ ins»
Рисунок 10 – Код, вызывающий срабатывание триггера «trig_ ins»
Рисунок 11 – Результат работы команды, вызывающей срабатывание триггера «trig_ ins»
Рисунок 12 – Результат работы триггера «trig_ ins»
5
2)Создали триггер «trig_upd», привязанный к событию update,
который подсчитывает количество обновлений в таблице «musicalgroup». Код и результат срабатывания триггера в соответствии с рисунками 13-16.
Рисунок 13 – Код триггера «trig_ upd»
Рисунок 14 – Код, вызывающий срабатывание триггера «trig_ upd»
Рисунок 15 – Результат работы команды, вызывающей срабатывание триггера «trig_ upd»
Рисунок 16 – Результат работы триггера «trig_ upd»
6
3)Создали триггер «trig_del», привязанный к событию delete,
который удаляет запись о заказе в таблице «Orders» при удалении записи о билете из содержащимся в данном заказе. Код и результат срабатывания триггера в соответствии с рисунками 17-20.
Рисунок 17 – Код триггера «trig_del»
Рисунок 18 – Код, вызывающий срабатывание триггера «trig_del»
Рисунок 19 – Результат работы команды, вызывающей срабатывание триггера «trig_del»
Рисунок 20 – Результат работы триггера «trig_del»
7
Вывод
Выполнив лабораторную работу, мы изучили как создавать триггеры используя инструкции языка MySQL, определять момент их срабатывания в зависимости от событий insert, update и delete. Триггеры позволили нам отследить изменения, производимые в базе данных и отреагировать на них. С
помощью данного типа функций мы произвели каскадное удаление в таблицах
«ticket» и «orders», что позволило нам избежать ошибок в базе данных, также подсчитали количество удалений и обновлений данных в таблице
«musicalgroup», такая возможность может быть полезна при реализации логирования в базе данных. Триггеры значительно расширяет возможности по автоматизированию работы с базой данных.
8
Список использованных источников
1) Турнецкая Е.Л. Базы данных. / Методические указания по
выполнению лабораторных работ. – СПб: ГУАП, 2021
9