Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

5 СЕМЕСТР / ЛР / ЛР7 / БД ЛР7

.pdf
Скачиваний:
7
Добавлен:
25.06.2023
Размер:
224.03 Кб
Скачать

ГУАП

КАФЕДРА № 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

Соседние файлы в папке ЛР7