Третья нормальная форма
Преобразование в третью нормальную форму состоит в расщеплении исходного отношения на два: Если соединение включает также проецирование, то применяются оба приведенных выше правила. Отношение можно привести к третьей нормальной форме путем его расщепления (рис. 5.5): Ключ В однозначно определяется элементом данных или группой элементов данных в Л. Для чего в проектировании реляционных баз данных… Читать ещё >
Третья нормальная форма (реферат, курсовая, диплом, контрольная)
В ряде случаев и вторая нормальная форма порождает неудобства. Для их устранения используется последний шаг нормализации, преобразующий вторую нормальную форму в третью. На этом шаге ликвидируется так называемая транзитивная зависимость. Пусть А, В и С — три атрибута или три набора атрибутов отношения R. Если С зависит от В, а В — от А, то С зависит от А. Если при этом обратное соответствие неоднозначно (т. е. А не зависит от В или В не зависит от С), то говорят, что С транзитивно зависит от А. На диаграмме транзитивную зависимость С от А изображают следующим образом:
Преобразование в третью нормальную форму состоит в расщеплении исходного отношения на два:
Например, на рис. 5.1 атрибут ДАТА-ОКОНЧАНИЯ зависит от атрибута НОМЕР-ПРОЕКТА, который в свою очередь зависит от атрибута НОМЕР-СЛУЖАЩЕГО. Таким образом, ДАТАОКОНЧАНИЯ транзитивно зависит от атрибута НОМЕРСЛУЖАЩЕГО.
Рис. 5.5. Приведение отношения, показанного на рис. 5.1, к третьей нормальной форме путем расщепления его на два отношения
Отношение можно привести к третьей нормальной форме путем его расщепления (рис. 5.5):
СЛУЖАЩИЙ (НОМЕР-СЛУЖАШЕГО. ИМЯ;
СЛУЖАЩЕГО, ЗАРПЛАТА, НОМЕР-ПРОЕКТА) ПРОЕКТ (НОМЕР-ПРОЕКТА. ДАТА-ОКОНЧАНИЯ) Пример пары отношений:
НОМЕР; СЛУЖАЩЕГО. | ИМЯ; СЛУЖА ЩЕГО. | ЗАРПЛАТА. | НОМЕР. ПРОЕК ТА. | НОМЕР ПРОЕКТА. | ДАТА; ОКОНЧАНИЯ. |
JONES. | X. | X. | 17.7.81. | ||
HARPO. | X. | Y. | 12.1.84. | ||
GARFUNKA. | Y. | Z. | 21.3.82. | ||
SSLSJ. | X. | ||||
2/4. | ABRAHMS. | Z. | |||
HIGGINS. | V. | ||||
FLANNEL. | 1SOO. | z. | |||
MCGRAW. | z. | ||||
EKSON. | 3CSO. | z. | |||
GCLDSTEIN. | Y. | ||||
PUORRO. | У. | ||||
MANSINI. | Y. | ||||
SPOTO. | X. | ||||
SCHAFT. | Y. | ||||
GOLD. | Z. |
Пара отношений на рис. 5.5 предпочтительнее первоначального отношения, потому что информация об окончании проекта может потребоваться независимо от информации о служащем, а атрибут ДАТА-ОКОНЧАНИЯ относится скорее к проекту, чем к служащему.
ТРЕТЬЯ НОРМАЛЬНАЯ ФОРМА определяется следующим образом. Отношение R задано в третьей нормальной форме, если оно задано во второй нормальной форме и каждый атрибут из R, не являющийся первичным, нетранзитивно зависит от каждого возможного ключа /?,.
Пара отношений в третьей нормальной форме (рис. 5.5) не содержит транзитивных и неполных зависимостей.
Отвлекаясь от понятия возможных ключей, определение третьей нормальной формы можно было бы сформулировать следующим образом: все элементы данных в логической записи функционально зависят только от ключа этой записи (от всего ключа).
Семантическая целостность
Если отношения находятся в третьей нормальной форме, то несколько несложных правил помогают сохранить семантическую целостность при операциях проецирования и соединения.
Полученное отношение АДРЕС некорректно, так как атрибут АДРЕС принадлежит ОТДЕЛУ, а не СЛУЖАЩЕМУ.
Правила:
- 1. Проецирование корректно, если получающийся в результате сегмент (или запись) содержит тот же самый ключ, что и исходный сегмент, или эквивалентный ему возможный ключ.
- 2. Сегмент Л можно соединять с сегментом В, если:
- а) ключ В является элементом данных или группой элементов данных в А
- б) ключ В однозначно определяется элементом данных или группой элементов данных в Л.
- 3. Если соединение включает также проецирование, то применяются оба приведенных выше правила.
Рис. 5.7. Примеры семантической раздробленности.
Контрольные вопросы и задания
- 1. Для чего в проектировании реляционных баз данных применяется нормализация?
- 2. Что такое вторая нормальная форма?
- 3. Расскажите о следствиях нарушений второй нормальной формы.
- 4. Для чего нужна третья нормальная форма?
- 5. Каковы правила семантической целостности третьей нормальной формы?