Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Проектирование реляционных баз данных.docx
Скачиваний:
55
Добавлен:
16.03.2016
Размер:
189.97 Кб
Скачать

4.6. Четвертая нормальная форма

Первые три нормальные формы и связанные с ними составные атрибуты, неполные функциональные и транзитивные зависимости выявил автор реляционной модели Э.Кодд. Дальнейшие исследования и, в частности, работы Фейджина (Fagin) выявили многозначные зависимости и связанную с ними четвертую нормальную форму.

Четвертая нормальная форма исследует связи «многие ко многим» или «многие ко одному». Отношение в четвертой нормальной форме не должно содержать двух и более не связанных многозначных фактов. Кроме того, это отношение должно находиться в третьей нормальной форме. Если в отношении есть несвязанные многозначные факты, возникают проблемы неоднозначности формирования таблиц, возможны также избыточность, аномалии удаления и включения.

Пусть имеются два несвязанных многозначных факта:

Служащий Проекты

Служащий Друзья

Один служащий может участвовать в работе над различными проектами, один проект может выполняться коллективом служащих.

Один служащий может иметь нескольких друзей, один друг может дружить с несколькими служащими.

Если объединить данные о служащих, проектах и друзьях в одну таблицу, возможны различные варианты ее формирования.

Расчлененный формат.

Служащий

Проекты

Друзья

Иванов И.И.

Проект 1

Иванов И.И.

Проект 2

Иванов И.И.

Проект 3

Иванов И.И.

Друг 1

Иванов И.И.

Друг 2

Этот вариант для больших таблиц, содержащих многозначные факты с существенной разницей в мощности множества значений, может быть неоправданно затратным из-за большого количества пустых полей.

Смешанный формат возможен в нескольких вариантах:

а) минимум записей с пустыми значениями

Служащий

Проекты

Друзья

Иванов И.И.

Проект 1

Друг 1

Иванов И.И.

Проект 2

Друг 2

Иванов И.И.

Проект 3

б) минимум записей с повторами

Служащий

Проекты

Друзья

Иванов И.И.

Проект 1

Друг 1

Иванов И.И.

Проект 2

Друг 2

Иванов И.И.

Проект 3

Друг 2

в) без ограничений

Служащий

Проекты

Друзья

Иванов И.И.

Проект 1

Друг 1

Иванов И.И.

Проект 2

Друг 2

Иванов И.И.

Проект 3

Иванов И.И.

Друг 2

При рассмотрении таблиц возникают вопросы. Почему в варианте а) пустым является значение в третьей строке, а не в какой-либо другой? Почему в варианте б) повтор сделан для значения «Друг 2», а не «Друг 1»? Почему именно таким образом расположены повторы и пустые значения в варианте в)? Налицо неоднозначность, произвольность в формировании строк таблицы

Гибрид” всех вариантов.

Служащий

Проекты

Друзья

Иванов И.И.

Проект 1

Друг 1

Иванов И.И.

Проект 1

Друг 2

Иванов И.И.

Проект 2

Друг 2

Иванов И.И.

Проект 2

Друг 1

Иванов И.И.

Проект 3

Друг 1

Иванов И.И.

Проект 3

Друг 2

Здесь также неясно, по какому принципу составлены кортежи, почему именно данный проект и друг оказались в одной строке.

Возможны также аномалии удаления и включения. Если, например, был принят смешанный формат в любом из вариантов, удаление информации о первом проекте повлечет утрату о первом друге. Добавление информации в поле «Проекты» («Друзья») порождает вопрос, что заносить в поле «Друзья» («Проекты»).

Таким образом, наличие в одной таблице несвязанных многозначных фактов порождает серьезные проблемы вне зависимости от выбранного варианта формирования кортежей.

Определение. Четвертой нормальной формой называется либо данное отношение, если оно в третьей нормальной форме и при существовании многозначной зависимости, например, атрибутов В от атрибутов А, все остальные атрибуты отношения R зависят от множества атрибутов А только функционально (т.е. многозначная зависимость единственная). Если это не выполняется, то отношением в четвертой нормальной форме называется набор проекций отношения R, обладающий вышеуказанными свойствами.

Нарушение четвертой нормальной формы возможно только в случае, если многозначные факты не связаны между собой. Иначе проблема произвольного формирования кортежей не возникает. Если, например, работу над проектом служащий получил по рекомендации друга, принцип формирования кортежей очевиден.