- •Введение
- •Существуют следующие средства разработки программ работы с бд
- •1. Система баз данных
- •2. Проектирование баз данных
- •Алгоритм процесса проектирования представлен на рис. 2.1
- •На этом этапе необходимо:
- •Студент
- •Даталогическое проектирование
- •3.1. Нормализация отношений
- •По этой причине возникают следующие недостатки отношения r4:
- •Нормальная форма Бойса – Кодда
- •В отношении r2 №зачетки и Идент_номер являются детерминантами и в то же время являются возможными ключами, т.Е. Это отношение в нфбк.
- •3.3. Четвертая нормальная форма (4нф)
- •3.4. Пятая нормальная форма (5нф)
- •В отношени r, в отличие от
- •В отношении r4, в отличие от
В отношении r2 №зачетки и Идент_номер являются детерминантами и в то же время являются возможными ключами, т.Е. Это отношение в нфбк.
3.3. Четвертая нормальная форма (4нф)
Прежде чем перейти к рассмотрению 4НФ, введем следующее определение:
В отношении R(А,В,С) существует многозначная зависимость (multi valid dependence – MVD) том и только в том случае, если множество значений В, соответствующих паре значений А и С, зависят только от А и не зависят от С.
Здесь выделяется случай, когда одному значению атрибута соответствует устойчиво постоянное множество значений другого атрибута.
Рассмотрим отношение R:Сессия (№зачетки, №группы, Дисциплина), в котором присутствуют две MVD зависимости (табл.3.1):
1. №группы №зачетки, т.к. список студентов (№зачетки) зависит только от номера группы (№группы) и не зависит от дисциплин, сдаваемых в сессию (Дисциплина).
2. №группы Дисциплина, т.к. список сдаваемых дисциплин зависит
от номера группы (№группы) и не зависит от списка студентов, обучающихся в данной группе.
R:Сессия Таблица 3.1.
№зачетки |
№группы |
Дисциплина |
001001 001001 001001 001002 001002 001002 …… 001020 001020 001020
|
4351 4351 4351 4351 4351 4351 ….. 4351 4351 4351 |
Базы данных Программирование
Т
Б
Информатика Программирование
Т
Информатика ….. Базы данных
П
Информатика Теория информации |
Отметим недостатки отношения Сессия:
1. Нет возможности хранить информацию о новой, создаваемой группе пока не набраны студенты, т.к. №зачетки является частью ключа;
2. При изменении учебного плана, например, при добавлении только одной дисциплины Информатика, придется изменять столько кортежей, сколько студентов обучаются по этому плану;
3.При изменении состава студентов группы, например, при добавлении нового студента в группу, приходится вводить информацию о нем столько раз, сколько дисциплин сдает группа в сессию (См. стрелки справа).
Понятно, что для эффективной работы необходимо преобразовать это отношение. Но прежде рассмотрим следующую теорему.
Теорема Фейджина
ОтношениеR(А,В,С) можно спроецировать без потерь в отношения R1(А,В) и R2(А,С) том и только в том случае, когда в R существуют две MVD зависимости R.А R.В и R.А R.С.
Под проецированием при этом понимается декомпозиция (разделение) отношения на два отношения путем применения операции проекции. Исходное отношение из проекций полностью без избыточности и потерь восстанавливается путем естественного соединения проекций.
Определение: Отношение R находится в 4НФ том и только в том случае, когда в нем существует MVDзависимость R.А R.В, а все остальные атрибуты зависят только от А и не зависят от В.
Вернемся к нашему примеру R:Сессия. Это отношение удовлетворяет условиям теоремы Фейджина, что позволяет получить две проекции R1 и R2 из которых путем естественного соединения можно получить исходное отношение R.
R1 R2
№зачетки
|
№группы |
|
№группы |
Дисциплина |
001001 001001 001001 001002 001002 001002 …… 001020 001020 001020
|
4351 4351 4351 4351 4351 4351 ….. 4351 4351 4351
|
|
4351 4351 4351 4351 4351 4351 ….. 4351 4351 4351 |
Базы данных Программирование
Т
Базы данных Программирование Теория информации ….. Базы данных Программирование Теория информации |
Эти новые отношения находятся в 4НФ по определению, т.к. в каждом из них естьMVDзависимость R.А R.В, а других атрибутов просто нет.
Недостатки, которые были отмечены в исходном отношении R, устранились. Таким образом, вместо одного исходного отношения R мы получили два новых отношения R1 и R2 в 4НФ.