Реляционная модель данных. Типы взаимосвязей в модели. Обеспечение непротиворечивости и целостности данных в базе данных
Отношение представляет собой множество элементов, называемых кортежами.
Наглядной формой представления отношения является привычная для человеческого восприятия двумерная таблица.
Таблица имеет строки (записи) и столбцы (колонки). Каждая строка таблицы имеет одинаковую структуру и состоит из полей.
Достоинство реляционной модели данных заключается в простоте, понятности и удобстве физической реализации на ЭВМ. Простота и понятность для пользователя.
Основными недостатками реляционной модели являются следующее:
- отсутствие стандартных средств идентификации отдельных записей
- сложности описания иерархических и сетевых связей
Определение реляционной модели. Реляционная модель данных (РДМ) некоторой предметной области представляет собой набор отношений, изменяющихся во времени.
Элементы реляционной модели.
Элементы РМ | Формы представления |
1. Отношение | Таблица |
2. Схема отношения | Строка заголовков столбцов таблицы (заголовок таблицы) |
3. Кортеж | Строка таблицы |
4. Сущность | Описание свойств объекта |
5. Атрибут | Заголовок столбца таблицы |
6. Домен | Множество допустимых значений атрибута |
7. Значение атрибута | Значение поля в записи |
8. Первичный ключ | Один или несколько атрибутов |
9. Типы данных | Тип значений элементов таблицы |
Рис. 6 Пример представления отношения Сотрудник
Отношение Сотрудник Атрибут Отдел Строка отношения
(таблица) (заголовок столбца) (строка заголовков)
ФИО | Отдел | Должность | Дата рождения |
Иванов | Начальник | 27.09.51 | |
Петров | Заместитель | 15.04.55 | |
Сидоров | Инженер | 13.01.70 |
Кортеж
|
(строка) Значение атрибута (значение поля в записи)
Ключ – это поле или комбинация полей, однозначно определяющие запись
Первичный ключ – это ключ, выбранный в качестве основного.(в отношении Сотрудник ключевым является атрибут «ФИО»)
Простой ключ – состоит из одного поля
Составной ключ – состоит из нескольких полей.
Ключ может быть составным (сложным), т.е. состоять из нескольких атрибутов.
Ключи Обычно используют для достижения следующих целей:
1) исключение дублирования записей в ключевых атрибутах
2) упорядочение картежей (по возрастанию или убыванию)
3) ускорение работ к кортежам отношения
4) организации связывания таблиц
Внешний ключ – это неключевое поле таблицы, связанное с первичным ключом другой таблицы.
5) Например, имеются два отношения Студент (ФИО, Группа, Специальность) и Предмет (Название, Пр., Часы), которые связаны отношением Студент – Предмет (ФИО, Назв. Пр., Оценка). В связующем отношении атрибута ФИО и Назв. Пр. образуют составной ключ. Эти атрибуты представляют собой внешние ключи, являющиеся первичными ключами других отношений.
Рис. 7 Связь отношений.
ключ ключ
внешний внешний
ключ ключ
Целостность БД
Целостность базы данных означает, что она содержит полную и непротиворечивую информацию и удовлетворяет всем заданным ограничениям.
Физическая целостность – сохранность данных в случае отказа оборудования:
|
• транзакции
• резервное копирование
• RAID-массивы жёстких дисков (дублирование)
Логическая целостность – непротиворечивость:
• типы полей
• обязательные поля
• уникальные индексы
• ограничения на значения
• шаблоны ввода (###) ###-##-##
• условия на несколько полей (увольнение позже приёма)
ссылочная целостность – это ограничение базы данных, гарантирующее, что ссылки между данными являются действительно правомерными и неповрежденными. Ссылочная целостность является фундаментальным принципом теории баз данных и проистекает из той идеи, что база данных должна не только сохранять данные, но и активно содействовать обеспечению их качества
Связывание таблиц.
В реляционных СУБД для указания связей таблиц производят операцию их связывания.
Многие СУБД при связывании таблиц автоматически выполняют контроль целостности вводимых в базу данных в соответствии с установленными связями. Это повышает достоверность хранимой в БД информации.
Установление связей между таблицами облегчает доступ к данным.
Основные виды связи таблиц.
При связывании двух таблиц выделяют основную и дополнительную (подчиненную) таблицы.
Логическое связывание таблиц производится с помощью ключа связи.
Ключ связи, по аналогии с обычным ключом таблицы состоит из одного или нескольких полей, которые в данном случае называют полями связи.
Основные виды связи:
- один – один (1:1)
- один – много (1:М)
- много – один (М:1)
- много – много (М:М)
Связь вида 1:1.
Связь вида 1:1 образуется в случае, когда все поля связи основной и дополнительной таблиц являются ключевыми.
|
Поскольку значения в ключевых полях обеих таблиц не повторяются, обеспечивается взаимно однозначное соответствие записей из этих таблиц. Сами таблицы становятся равноправными.
Связь 1:1 – с одной записью в первой таблице связана ровно одна запись во второй таблице.
Связь вида 1:N.
Связь 1:М имеет место в случае, когда одной записи основной таблицы соответствует несколько записей вспомогательной таблицы.
Связь 1:N – с одной записью в первой таблице могут быть связаны сколько угодно записей во второй таблице
Связь вида N:N.
Самый общий вид связи М:М возникает в случаях, когда нескольким записям основной таблицы соответствует несколько записей дополнительной таблицы.
Связь N:N – с одной записью в первой таблице могут быть связаны сколько угодно записей во второй таблице, и наоборот
Связь N:N – с одной записью в первой таблице могут быть связаны сколько угодно записей во второй таблице, и наоборот