Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
True_kursach_s_titul.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
3.08 Mб
Скачать

3.3.3 Розробка механізмів управління даними в базі за допомогою тригерів

Тригери призначені для запобігання, журналювання, аудиту, фіксації змін даних,реалізації бізнес правил, реплікації даних та підвищення продуктивності БД в цілому.

Тригер – збережена процедура, виклик якої відбувається автоматично при виконанні з базою даних певних дій: видалення, зміна, додавання записів.

Залежно від того, який оператор модифікації даних активізує тригер, він називається тригером вставки (insert trigger), тригером видалення (delete trigger) або тригером оновлення (update trigger).

Тригери знаходять різне застосування – від перевірки даних до забезпечення складних ділових правил.

Особливо корисною властивістю тригерів є те, що вони мають доступ до образів запису до і після модифікації; таким чином, можна порівняти два записи і прийняти відповідне рішення.

У даному курсовому проекті для таблиці "Book" був розроблений тригер – "Triger1". Дія цього тригера направлена на запобігання помилок при додаванні запису до таблиці: при вводі порожньої назви записувати туди значення "не задана" Тригері зберігаються не в скрипті бази даних а на сервері My SQL.

Код тригера:

CREATE DEFINER = 'root'@'localhost' TRIGGER `_before_ins_tr1` BEFORE INSERT ON `book`

FOR EACH ROW

BEGIN

SET NEW.Name_book = IFNULL(NEW.Name_book, ' не вказана ');

END;

Для здійснення тригера потрібно створити елемента таблиці "Book" з порожнім полем Name_book, що можна побачити на рисунку 3.3.3.1.Там книга з інформацією про печатне видання, автора, жанр та серію має порожнє поле назви книги.

Ситуація, що викликає тригер:

Рисунок 3.7 – Долучення елемента з порожнім полем

Після роботи тригера ми отримаємо замис з полем заповненим за змовчуванням значенням у полі "Name_book".В таблиці порожнє поле назви книги заміниться записом "не вказана"

Результат роботи тригера зображено на рисунку 3.8

Рисунок 3.8 – Результат роботи тригера

Ще одним прикладом тригера у даному курсовому проекті для таблиці "Series" був розроблений тригер – "Triger2". Дія цього тригера направлена на оновлення інформації про кількість книг у серії. При вводі змін книг у серії він буде додавати попередню кількість книг.Код тригера:

CREATE DEFINER = 'root'@'localhost' TRIGGER `Triger2` BEFORE UPDATE ON `series`

FOR EACH ROW

BEGIN

SET NEW.Number = NEW.Number + OLD.Number;

END;

Початкова ситуація зображена на рисунку 3.9

Рисунок 3.9 – Початкова кількість книг в серії

До серії "Гаррі Поттер" потрібно додати одну книгу.

Ситуація потребуюча тригер зображена на рисунку 3.10:

Рисунок 3.10 – Долучення книги до серії

Після роботи тригера ми отримаємо загальну кількість книг у серії "Гаррі Поттер"

Результат зображено на рисунку 3.11

Рисунок 3.11 – Результат роботи тригера

Тригери є дуже зручним рішенням інформаційних аномалій, регулювання змін в базі даних та забезпечення виконання системи бізнес-правил.

Висновки

Під час виконання КП були вивчені основи проектування концептуальної та логічної БД, роботи в вільній реляційній системі керування базами даних My SQL, а також визначили предметну область, основні сутності БД, визначили інформацію яка буде міститись в базі даних. Була визначена система бізнес-правил, дані які будуть міститися в таблиці згідно вимогам і завданням КП.

Дана БД забезпечує надійне зберігання інформації, а також істотну економію часу, що витрачається на пошук, редагування існуючих даних. При створенні даної бази даних була, проаналізувала предметна область, в даний випадку це область бібліотеки. Була проаналізована інформаційна структура бібліотеки, її особливості функціонування, сформульовані вимоги до бази даних бібліотек. В результаті виконання даного курсового проекту всі поставлені цілі і завдання були виконані. Були описані технології функціонування ІС, побудовані концептуальна і логічна моделі БД, виконано фізичне проектування БД, розроблена функціональної моделі СКБД, розроблені запити для існуючої БД, розроблені тригери для запобігання інформаційних аномалій, розроблені збережені процедурі для виконання.

При розробці бази даних проект було розділено на три розділи :

Розділ 1. Було розглянуто основні проблеми створення сучасних баз даних, зберігання даних, сучасні тенденції у розробці БД

Розділ 2. Була проаналізована ПрО, розроблена концептуальна модель даних та система бізнес-правил. Особливу увагу приділено трансформуванню концептуальної в логічну модель даних засобами CASE-системи ErWin.

Розділ 3.Було розглянуто мотивований вибір СКБД для реалізації проекту, реалізація БД, результати, одержувані при роботі з БД, розроблені уявлення для відображення результатів вибірки, спроектовані збережені процедури, розроблені механізми управління даними в базі за допомогою тригерів.

Результатом роботи над КП є створена працездатна база даних, перевагами якої є зручність, швидкість знаходження серед великої кількості інформації.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]