- •39 Інформаційні системи та субд Історія розвитку
- •Основні функції сучасної субд
- •Моделі даних
- •Ранні підходи до організації бд
- •Принципи концептуального проектування
- •Базові поняття моделі «Сутність-зв'язок»
- •Реляційна модель даних Базові поняття реляційної моделі даних
- •Властивості відношень
- •Реляційна модель даних: три складові
- •Проектування рбд за допомогою концепції функціональних залежностей Поняття функціональної залежності
- •Друга і третя нф. Алгоритм декомпозиції
- •Нормальна форма Бойса-Кодда
- •Багатозначні залежності. Четверта нормальна форма
- •Надлишкові фз. Мінімальне покриття
- •Перетворення концептуальної моделі в реляційну
- •1:*, Кп багатозв'язкової суті є необов'язковим.
- •Перетворення відношень супертип - підтип
- •Приклад проектування рбд на основі концептуальної моделі
- •Лабораторний практикум по проектуванню рбд Лабораторна робота №1
- •Лабораторна робота №2
- •Лабораторна робота № 3
- •Контрольні завдання по проектуванню рбд
Реляційна модель даних Базові поняття реляційної моделі даних
Основними поняттями реляційних баз даних є тип даних, домен, атрибут, кортеж, первинний ключ і відношення.
Тип даних
Поняття тип даних в реляційній моделі даних повністю адекватно поняттю типа даних в мовах програмування. Зазвичай в сучасних реляційних БД допускається зберігання символьних, числових даних, бітових рядків, спеціалізованих числових даних (таких, як "гроші"), а також спеціальних "темпоральних" даних (дата, час, часовий інтервал).
Домен
Поняття домену більш специфічно для баз даних, хоча і має деякі аналогії з підтипами в мовах програмування. У найзагальнішому вигляді домен визначається заданням базового типа даних, до якого відносяться елементи домену, і довільного логічного виразу, вживаного до елементу типа даних. Якщо обчислення цього логічного виразу дає результат "істина", то елемент даних є елементом домену: Домен = Базовий тип + Правило.
Рис. 5
Найбільш правильним інтуїтивним трактуванням поняття домену є розуміння його як допустимої потенційної безлічі значень даного типа.
Слід зазначити також семантичне навантаження поняття домену: дані вважаються порівнянними (тета-порівнюваними) лише у тому випадку, коли вони відносяться до одного домену, а не до одного базового типа.
Відношення
Атрибут - властивість об'єкту наочної області. Атрибут характеризується ім'ям і значенням, яке повинне належати деякому домену. Кожен екземпляр об'єкту в кожен момент часу однозначно характеризується набором конкретних значень атрибутів.
Схема відношення - це іменована множина пар {ім'я атрибуту, ім'я домена}. Міра або "арність" схеми відношення - потужність цієї безлічі, тобто кількість атрибутів.
Схема бази даних - це набір іменованих схем відношень.
Кортеж, відповідний даній схемі відношення, - це безліч пар {ім'я атрибуту, значення}, яка містить одне входження кожного імені атрибуту, що належить схемі відношення. "Значення" є допустимим значенням домену даного атрибуту.
Відношення - це множина кортежів, відповідних одній схемі відношення.
Насправді, поняття схеми відношення найближче до поняття структурного типа даних в мовах програмування. Було б сповна логічним дозволяти окремо визначати схему відношення, а потім одне або декілька відношень з даною схемою. Проте в реляційних базах даних це не прийнято. Ім'я схеми відношення в таких базах даних завжди збігається з ім'ям відповідного відношення-екземпляра.
У класичних реляційних базах даних після визначення схеми бази даних змінюються лише відношення-екземпляри. У них можуть з'являтися нові і віддалятися або модифікуватися існуючі кортежі. Проте в багатьох реалізаціях допускається і зміна схеми бази даних: визначення нових і зміна існуючих схем відношення. Це прийнято називати еволюцією схеми бази даних.
Схеми двох відношень називають еквівалентними, якщо вони мають однакову степінь і можливе таке впорядковування імен атрибутів в схемі, що на однакових місцях знаходитимуться тета-порівнювані атрибути. Зручним представленням відношення є таблиця, заголовком якої є схема відношення, а рядками - кортежі отношенія- екземпляра; в цьому випадку імена атрибутів іменують стовпці цієї таблиці (див. мал. 6).
Реляційна база даних - це набір відношень, імена яких збігаються з іменами схем стосунків в схемі БД.