Тема 3. Реляційна модель даних
1. Базові поняття
2. Цілісність баз даних
3. Реляційна алгебра
4. Обчислення кортежів
5. Обчислення доменів
Базові поняття
Реляційна модель даних заснована на математичномупонятті відношення і представленні відношень у вигляді таблиць. Запропонована на початку 70-х років американським вченим Е.Коддом. В будь-якій реляційній СУБД припускається, що користувач сприймає БД як набір таблиць. Це стосується тільки логічної структури БД, тобто відноситься до концептуального і зовнішнього представлень. На фізичному рівні БД реалізується за допомогою різних структур зберігання. В табл. 3.1 наведені елементи реляційної моделі.
Для однозначної ідентифікації рядків, для зв'язування таблиць між собою, для прискорення операцій над даними застосовують ключі. В табл. 3.2 наведені можливі види реляційних ключів. Зовнішній і відповідний йому потенційний ключі повинні бути визначені на одному домені.
Таблиця 3.1
Елементи реляційної моделі
Елементи | Форма представлення | |||||||
реляційної моделі | ||||||||
Відношення | Таблиця | |||||||
Кортеж | Рядок таблиці | |||||||
Атрибут | Заголовок стовпця таблиці | |||||||
Ключ | Сукупність атрибутів, які унікально визначають кожен рядок таблиці, або виконують функції зв'язування таблиць, або дозволяють прискорити операції над таблицями | |||||||
Домен | Множина значень атрибута | |||||||
Схема відношення | Рядок заголовків стовпців таблиці | |||||||
Таблиця 3.2 | ||||||||
Реляційні ключі | ||||||||
Назва | Пояснення | |||||||
Потенційний ключ (Candidate Key) | Мінімальна підмножина атрибутів відношення, які єдиним чином ідентифікують кортеж даного відношення | |||||||
Первинний ключ (Primary Key) | Потенційний ключ, який обрано для унікальної Ідентифікації кортежів відношення | |||||||
Вторинний ключ (Secondary Key) | Ключ, кожному значенню якого може відповідати більш ніж один екземпляр індексованих даних | |||||||
Зовнішній ключ (Foreign Key) | Сукупність атрибутів відношення, значення яких є одночасно і значеннями первинного або потенційного ключа іншого відношення | |||||||
Приклад.Розглянемо відношення Студент (рис. 3.1).
Атрибути | |||||||||||
СТУДЕНТ | |||||||||||
№ залікової | Прізвище, ім'я, | Група | Вік | ||||||||
Відношення | книжки | по батькові | |||||||||
Бойко О.О. | ІУСТ-21 | Кортежі | |||||||||
Петров А.А. | ІТП-11 | ||||||||||
Швачко В.В. | ІТП-32 | ||||||||||
Сачко Д.Д. | ІУСТ-42 | ||||||||||
Первинний | Потенційний Зовнішній | Вторинний | |||||||||
ключ | ключ | ключ | ключ |
Рис. 3.1. Відношення Студент
Порядок кортежів у відношенні не визначений. В реляційних СУБД для зручності кортежі впорядковують за допомогою ключів (первинних або вторинних). В якості первинного ключа виступає атрибут № залікової книжки, який дозволяє унікально ідентифікувати кожен кортеж. Атрибут Вік обирається в якості вторинного ключа (не є обов'язковим) для виконання операцій сортування і групування студентів за віком. Атрибут Група обирається в якості зовнішнього ключа для зв'язування з таблицею Група (на рис.3.1 не представлена). Домени показують множину всіх можливих значень певного атрибута відношення. Наприклад, для атрибута Вік значення домену відноситься до типу цілих чисел.
Реляційна модель складається з таких частин:
• структурна (тут фіксується відношення як єдине ціле);
• маніпуляційна (тут використовуються два базовихмеханізми маніпулювання реляційною БД – реляційна алгебра і реляційні обчислення);
• цілісність (тут використовується механізм,який
• запобігає руйнуванню даних).
Реляційній моделі даних властиві простота і природність використовуваних структур даних і операцій маніпуляції даними, повна незалежність від середовища зберігання даних, підтримка віртуальних, а не фізичних зв'язків між даними (наоснові значень даних, а не покажчиків).
Реляційна БД включає в себе такі складові:
• інформаційні масиви (таблиці,індекси);
• системна інформація (структура БД,обмеженняцілісності);
• прикладні програми (процедури,тригери).
Операційні можливості відношення мають дві еквівалентні форми – реляційна алгебра і реляційне обчислення.
У свою чергу реляційне обчислення поділяється на реляційне обчислення зі змінними кортежами, яке називається обчислення кортежів,і на реляційне обчислення зі змінними доменами,яке називається обчислення доменів. Для виконання запитів до БД Е.Кодд запропонував відповідні принципи побудови трьох мов.
Мови запитів реляційної алгебри –це алгебраїчні мови,якідозволяють висловлювати запити засобами спеціалізованих операторів, що застосовуються до відношень.
Мови реляційного обчислення дозволяють висловлюватизапити шляхом специфікації предиката, якому повинні відповідати потрібні кортежі (домени).
Реальні мови запитів (SQL, QBE і т.ін.) забезпечують не тільки функції відповідної теоретичної мови, але і реалізують деякі додаткові операції (арифметичні, друку і т.ін.).
Дата добавления: 2016-03-22; просмотров: 1657;