Порядок виконання роботи
Обрати предметну область, в якій виникає необхідність створення бази даних.
Ознайомитись з концептуальним рівнем моделювання предметної області.
Визначити основні сутності предметної області.
Визначити атрибути сутностей.
Структурувати інформацію про сутності та відповідні їм атрибути.
Зробити висновки, що до отриманих результатів, визначити основні етапи і принципи отримання інформації, охарактеризувати предметну область в термінах сутностей та атрибутів.
Оформлення звіту:
Титульний лист.
Мета роботи.
Короткі теоретичні відомості.
Таблиця сутностей та атрибутів.
Таблиці та графіки.
Висновки.
Контрольні питання
.Моделі даних.
Архітектурні рівні БД.
Концептуальний рівень.
Поняття сутностей та атрибутів.
Основні поняття концептуального рівня.
.Концептуальна модель даних.
Список рекомендованої літератури
В.В. Пасічник, В.А. Резніченко. Організація баз даних та знань. – К:. Видавнича група BHV, 2006. – 384 с.
К.Дж. Дейт. Введение в системы баз данных. Киев, «Вильямс», 2001;
Д. Ульман, Д. Уиндом. Введение в системы баз данных. Москва, Лори, 2000;
ЛАБОРАТОРНА РОБОТА № 2
ПОБУДОВА МОДЕЛІ ДАНИХ “СУТНІСТЬ-ЗВ’ЯЗОК” ТА ОРГАНІЗАЦІЯ РЕЛЯЦІЙНОЇ МОДЕЛІ БАЗИ ДАНИХ.
Мета роботи: побудувати модель даних на основі діаграми «сутність-зв’язок» та організувати реляційну модель бази даних
Короткі теоретичні відомості
При побудові інфологічних моделей можна використати мову ER-діаграм (від англ. Entity-Relationship, тобто сутність-зв'язок). У них сутності зображуються позначеними прямокутниками, асоціації - позначеними ромбами або шестикутниками, атрибути - позначеними овалами, а зв'язки між ними - ненаправленими ребрами, над якими може проставлятися ступінь зв'язку (1 або буква, що заміняє слово "багато") і необхідне пояснення.
Між двома сутностям, наприклад, А и В можливі чотири види зв'язків.
Перший тип – зв'язок ОДИН-ДО-ОДНОГО (1:1): у кожний момент часу кожному представникові (екземпляру) сутності А відповідає 1 або 0 представників сутності В:
Студент може не "заробити" стипендію, одержати звичайну або одну з підвищених стипендій.
Другий тип – зв'язок ОДИН-ДО-БАГАТЬОХ (1:М): одному представникові сутності А відповідають 0, 1 або більше представників сутності В.
Квартира може пустувати, у ній може жити один або більше мешканців.
Тому що між двома сутностями можливі зв'язки в обох напрямках, то існує ще два типи зв'язку БАГАТО-ДО-ОДНОГО (М:1) і БАГАТО-ДО-БАГАТЬОХ (М:N).
Якщо зв'язок між сутностями ЧОЛОВІКА й ЖІНКИ називається ШЛЮБ, то існує чотири можливих представлення такого зв'язку:
Характер зв'язків між сутностями не обмежується перерахованими. Існують і більше складні зв'язки:
безліч зв'язків між тими самими сутностями
(пацієнт, маючи одного лікаря, може мати також трохи лікарів-консультантів; лікар може бути лікарем декількох пацієнтів і може одночасно консультувати кілька інших пацієнтів);
Тренарні зв'язки
(лікар може призначити багато пацієнтів на кілька аналізів, аналіз може бути призначений декількома лікарями декільком пацієнтам і пацієнт може бути призначений на кілька аналізів декількома лікарями);
зв'язки більш високих порядків, семантика (зміст) яким іноді дуже складна.
У наведених прикладах для підвищення ілюстративності розглянутих зв'язків не показані атрибути сутностей і асоціацій у всіх ER-діаграмах. Так, уведення лише декількох основних атрибутів в опис шлюбних зв'язків значно ускладнить ER-діаграму (мал. 2.1,а). У зв'язку із цим мова ER-діаграм використається для побудові невеликих моделей і ілюстрації окремих фрагментів більших. Частіше ж застосовується менш наочний, але більше змістовна мова инфологического моделювання (ЯИМ), у якому сутності й асоціації представляються пропозиціями виду:
СУТНІСТЬ (атрибут 1, атрибут 2 , ..., атрибут n)
АСОЦІАЦІЯ [СУТНІСТЬ S1, СУТНІСТЬ S2, ...]
(атрибут 1, атрибут 2, ..., атрибут n)
де S - ступінь зв'язку, а атрибути, що входять у ключ, повинні бути відзначені за допомогою підкреслення.
Так, розглянутий вище приклад безлічі зв'язків між сутностями, може бути описаний у такий спосіб:
Лікар (Номер_лікаря, Прізвище, Ім'я, По батькові, Спеціальність)
Пацієнт (Реєстраційний_номер, Номер ліжка, Прізвище, Ім'я, По батькові, Адреса, Дата народження, Підлога)
Лікуючий_лікар [Лікар 1, Пацієнт M]
(Номер_лікаря, Реєстраційний_номер)
Консультант [Лікар M,Пацієнт N]
(Номер_лікаря, Реєстраційний_номер).
Екземпляр реляційного відношення — це його наповнення. Точніше, екземпляр є множиною кортежів, а кортеж - це множина значень. Екземпляр відношення має такі властивості:
порядок кортежів довільний;
кортежі, як елементи множини, мають бути унікальними в межах реляційного відношення.
Реляційне відношення може бути зображене у вигляді таблиці. Приклад табличного відображення реляційного відношення наведено на рис.1.
Рис.1. Приклад табличного зображення реляційного відношення
Таблиця — це пойменоване двовимірне зображення відношення; вона складається з одного чи більше пойменованих стовпців і нуля або більше рядків. Назва таблиці відповідає імені реляційного відношення, імена стовпців — іменам атрибутів, а рядки — кортежам.
Відповідність термінів, що вживаються під час розгляду реляційних відношень та їхніх табличних зображень, вказана в табл. 1.
Таблиця 1. Відповідність термінів, що вживаються під час розгляду реляційних відношень та їхніх табличних зображень
Поняття ключа
У будь-якому реляційному відношенні можна виділити таку множину атрибутів, що набори відповідних їм значень однозначно ідентифікуватимуть кортежі відношення. Це випливає з того, що відношення є різновидом множини, а отже, не може містити кортежів, які повторюються, відтак — уся множина атрибутів реля-ційного відношення унікально ідентифікує кортежі. Множина атрибутів, що однозначно ідентифікують кортежі реляційного відношення, називається ключем.
Відношення може мати декілька різних ключів. Наприклад, у реляційному відношенні ВИКЛАДАЧ(#Ід. ПІБ, Адреса) ключами є #Ід, пара (ПІБ, Адреса) й усі три атрибути (#Ід. ПІБ. Адреса). Ключ називається простим, якщо складається з одного атрибута (#Ід), і складеним — якщо з кількох атрибутів, наприклад (ПІБ, Адреса). Ключ називають надлишковим, якщо певна його підмножина також є ключем. Наприклад, ключ (#Ід, ПІБ. Адреса) є надлишковим тому, що містить атрибут #Ід, який також є ключем. Ключ, що не є надлишковим, називають мінімальним. Іноді надлишковий ключ називають суперключем, а мінімальний - можливим ключем. Реляційне відношення може мати багато можливих ключів, але тільки один із них є первинним.
Первинний ключ має такі властивості:
кожне реляційне відношення має один і лише один первинний ключ;
значення всіх атрибутів первинного ключа не можуть бути невизначеними, оскільки він має унікально ідентифікувати всі кортежі будь-якого екземпляра реляційного відношення;
значення первинного ключа не можуть повторюватися, але допускаються повторення значень частини складеного первинного ключа;
апріорі значення первинного ключа не впливають на порядок кортежів у табличному зображенні реляційного відношення, хоча інколи таблиці впорядковують за ключем;
первинний ключ не впливає на доступ до кортежів, який може бути здійснено за значенням будь-якого атрибута чи набору атрибутів незалежно від того, чи є він первинним ключем.
Якщо розглядається певне реляційне відношення, то сукупність атрибутів, що є первинним ключем іншого реляційного відношення, називається зовнішнім (стороннім) ключем. За допомогою зовнішніх ключів у реляційній моделі встановлюються зв'язки між реляційними відношеннями (точніше, між їхніми кортежами).
Зовнішні ключі мають такі властивості:
значення зовнішнього ключа завжди посилається на певне значення відповідного первинного ключа, тобто будь-яке значення зовнішнього ключа має бути значенням первинного ключа іншого відношення;
значення зовнішнього ключа, на відміну від значень первинного ключа, можуть бути невизначеними й повторюватися в межах реляційного відношення.
Розглянемо приклад. Нехай до реляційного відношення ВИКЛАДАЧ додано атрибут #Каф - код кафедри, де працює викладач: ВИКЛАДАЧ(#Ід, ПІБ. Адреса. #Каф). Крім того, є ще одне відношення КАФЕДРА(#Каф, Назва. Керівник. Місцезнаходження). Первинним ключем відношення ВИКЛАДАЧ є #Ід, а відношення КАФЕДРА — #Каф; цей самий атрибут у реляційному відношенні ВИКЛАДАЧ є зовнішнім ключем. Перша | властивість зовнішнього ключа означає: якщо в таблиці ВИКЛАДАЧ є кортеж, у якому атрибуту #Каф відповідає певне значення, наприклад К1, то в таблиці КАФЕДРА обов'язково має бути кортеж, у якому атрибуту #Каф також відповідає значення К1. Саме завдяки рівності значень, що відповідають цим двом атрибутам, встановлюється зв'язок між кортежами різних реляційних відношень.