Реляційна цілістність БД. Цілісність сутностей та цілістність за посиланням
Лекція № 7 (2 години)
Тема «Реляційна цілістність БД. Цілісність сутностей та цілістність за посиланням»
Мета: засвоєння двох важливих правила цілістності даних, які існують в реляційній моделі даних.
Література
«Бази даних. Проектування, реалізація та супровід. Теорія та практика» -Т. Конолі, К. Бегг, А. Строчан Москва, СПб., Київ. 2000 р.
«Бази даних: основи, проектування, використання» - Малихіна М. П. СПб. 2004р.
«Організація баз даних та знань» - Пасічник В. В., Резніченко В. А., Київ, 2006 р.
«Системы баз данных. Полный курс» - Г. Гарсия Молина, Москва: Вильямс, 2003р.
«Бази даних. Моделі, розробка, реалізація» - Карпов Т., СПб. 2001 р.
Хід заняття
І. Організаційний момент
а) готовність групи до заняття;
б) перевірка присутніх.
ІІ. Актуалізація опорних знань студентів
а) повідомлення теми та мети заняття;
б) повідомлення девізу, під яким будете працювати;
в) відповіді на запитання.
ІІІ. Виклад нового матеріалу
План
- Поняття «цілістність бази даних» та її призначення.
- Цілістність сутностей.
- Цілістність за посиланням.
ІV. Узагальнення та систематизація знань.
V. Підведення підсумків заняття.
VІ. Домашнє завдання: вивчити матеріал лекції, знати відповіді на такі питання лекції:
Що вважається обмеженнями для всіх припустимих станів бази даних?
Що таке цілістність бази даних?
Які два важливих правила існують в реляційній моделі?
До чого відноситься перше обмеження цілістності бази даних?
Чому жоден з атрибутів в базовому відношенні не може вміщувати відсутніх значень, які позначаються визначенням Null?
До чого відноситься друге обмеження цілістності бази даних?
Зі значенням чого повинен співпадати зовнішній ключ?
Так як кожен атрибут повязаний з деяким доменом, то для множини припустимих значень кожного атрибуту відношення визначаються так звані обмеження домену.
Крім цього, задаються два важливих правила цілістності, які вважаються обмеженнями для всіх припустимих станів бази даних. Ці два головні правила реляційної моделі називаються цілісністю сутності та цілісністю за посиланням.
Розглянемо детальніше кожне з цих правил.
- Цілістність сутностей
Перше обмеження цілістності відноситься до первинних ключів базових відношень (базове відношення це відношення, кортежі якого фізично зберігаються в базі даних).
Цілістність сутності - в базовому відношенні жоден з атрибутів первинного ключа не може містити відсутніх значень, які позначаються визначенням Null (визначення Null вказує на те, що значення атрибуту на дану мить невідоме або не припустиме для цього кортежу).
Наприклад, використовуючи відношення «Співробітники» та «Відділення», простежимо виконання наступного запиту: «Створити перелік номерів телефонів всіх співробітників компанії».
Відношення «Відділення»
Номер відділення |
Місто |
Вулиця |
Район |
Поштовий індекс |
Телефон |
5 |
Одеса |
Ген. Бочарова 19 |
Суворівський |
65135 |
551440 |
7 |
Київ |
Іванова 8 |
Центральний |
87505 |
285190 |
2 |
Черкаси |
Шевченко 14 |
Центральний |
43701 |
438615 |
4 |
Запоріжжя |
Гоголя 82 |
Центральний |
50883 |
648369 |
3 |
Одеса |
Ген. Петрова 1 |
Малиновський |
65120 |
659569 |
1 |
Луганськ |
Київська 67 |
Північний |
49913 |
938544 |
Відношення «Співробітники»
Код |
ПІБ |
Адреса |
Теле- фон |
Поса- да |
Стать |
ДН |
ЗП |
Номер відділ. |
21 |
Філатов Андрій Петрович |
Одеса, Вільямса 7, 45 |
496433 |
Менед- жер |
Ч |
01.05. 1970 |
2150 |
5 |
37 |
Никитіна Ганна Миколаївна |
Черкаси, Корольова 67, 3 |
Секре- тар |
Ж |
16.09. 1980 |
2000 |
3 |
|
14 |
Федоров Микола Сергійович |
Черкаси, б-р Шевченко 19, 5 |
480091 |
Дирек- тор |
Ч |
28.10. 1969 |
3500 |
3 |
9 |
Краснова Олена Валеріївна |
Київ, Пушкінська 21, 44 |
735565 |
Бухгал-тер |
Ж |
31.12.1964 |
3200 |
7 |
5 |
Петренко Оксана Вікторівна |
Одеса, Левітана 4, 90 |
489657 |
Менед- жер |
Ж |
03.04.1972 |
2150 |
3 |
41 |
Васильєва Ганна Семенівна |
Одеса, Грецька 47, 15 |
228900 |
Бухгал-тер |
Ж |
18.02.1968 |
3200 |
5 |
Результатом цього запиту є унарне відношення, яке складається з одного атрибуту «Телефон». За визначенням цей атрибут повинен бути первинним ключем, але серед його значень є визначення Null, яке відповідає номеру телефону співробітника з особистим номером 37. Так як це відношення не є базовим, то реляційна модель припускає присутність визначення Null в його первинному ключі.
2. Цілістність за посиланням
Друге обмеження цілісності відноситься до зовнішніх ключів.
Цілістність за посиланням означає, що якщо в відношенні існує зовнішній ключ, то значення зовнішнього ключа повинне співпадати зі значенням первинного ключа деякого кортежу в його базовому відношенні, або задаватися визначенням Null.
Наприклад, атрибут «Номер відділення» в відношенні «Співробітники» є зовнішнім ключем, який посилається на атрибут «Номер відділення» базового відношення «Відділення». Система повина попереджати всілякі спроби створювати запис з інформацією про співробітника відділення компанії з номером 25 до тих пір, доки в відношенні «Відділення» не буде створений запис, який вміщує відомості про відділення компанії з номером 25.
Але вважається припустимим створення запису з інформацією про нового співробітника з вказівкою визначення Null замість номеру відділення, в якому цей співробітник працює. Така ситуація має місце в тому випадку, коли співробітник зарахований в штат компанії, але ще не приписаний до конкретного відділення.
Реляційна цілістність БД. Цілісність сутностей та цілістність за посиланням