Перевірка відповідності відношень вимогам транзакцій користувачів
Перевірка полягає в нанесенні безпосередньо на ER-діаграму всіх шляхів, які потрібні для виконання кожної з транзакцій. Якщо таким чином вдається виконати всі транзакції, то перевірка на цьому завершується. У протилежному випадку необхідно повернутися до попередніх етапів і перевірити, а у разі потреби і змінити ті фрагменти моделі, які не відповідають необхідній роботі транзакцій.
Якщо в результаті перевірки будуть виявлені області, які не беруть безпосередньої участі у роботі транзакцій, то можливо їх вилучення з моделі.
Перевірка підтримки цілісності
Обмеження цілісності запобігають появі в БД суперечливих даних. Вирішення цієї проблеми на стадії проектування полягає у такому:
· наявність обов'язкових і необов'язкових значень даних для атрибутів (NULL, NOT NULL);
· наявність обмежень для доменів атрибутів (визначення області значень або діапазону значень);
· цілісність сутностей (обов'язкова наявність Primary Key кожному відношенні);
· посилкова цілісність (зв'язування таблиць за допомогою Foreign Key);
· обмеження предметної області (бізнес правила), які реалізуються як засобами БД, так і на рівні застосувань. У табл. 6.1 наведені правила зовнішнього ключа для відношення "один до багатьох" для сильної сутності.
Таблиця 6.1
Підтримка посилкової цілісності для сильної сутності
| Тип зв'язку | Вимоги до зовнішнього | |||
| ключа | ||||
| Обов'язкова | наявність | NOT NULL | ||
| значень | відповідних | ON DELETE RESTRICT | ||
| екземплярів у батьківській | ON UPDATE CASCADE | |||
| і залежній таблицях | ||||
| Необов'язкова наявність | NULL ALLOWED | |||
| значень | відповідних | ON DELETE SET NULL | ||
| екземплярів у батьківській | ON UPDATE CASCADE | |||
| і залежній таблицях | ||||
| Обов'язкова | наявність | NULL ALLOWED | ||
| значень відповідних екзем- | ON DELETE SET NULL | |||
| плярів у залежній таблиці і | ON DELETE RESTRICT | |||
| необов'язкова | наявність | ON UPDATE CASCADE | ||
| значень в | батьківській | |||
| таблиці | ||||
| Обов'язкова | наявність | NOT NULL | ||
| значень | відповідних | ON DELETE RESTRICT | ||
| екземплярів у батьківській | ON UPDATE CASCADE | |||
| таблиці і необов'язкова | ||||
| наявність | значень в | |||
| залежній таблиці | ||||
Для слабкої сутності використовуються ті ж самі правила за винятком обмежень на зовнішній ключ: NOT NULL, ON DELETE CASCADE, ON UPDATE CASCADE.
Дата добавления: 2016-03-22; просмотров: 860;
