русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Требования четвертой нормальной формы - 4NF


Дата добавления: 2015-07-09; просмотров: 737; Нарушение авторских прав


 

Четвертая нормальная форма касается отношений, в которых имеются повторяющиеся наборы данных. На практике нарушения 4NF часто происходят в таблицах-связках, которые связывают более двух сущностей. В этом случае используют декомпозицию, основанную на многозначных зависимостях.

Многозначная зависимость является обобщением функциональной зависимости.

В качестве примера рассмотрим отношение:

Расписание_занятий (день_недели, номер_пары, код_группы, предмет, преподаватель, аудитория),

хранящее сведения о расписании занятий студенческих групп за неделю (для упрощения считаем, что нет разбиения на подгруппы и объединения в потоки).

В данном отношении можно выделить несколько альтернативных составных ключей:

(день_недели, номер_пары, код_группы),

(день_недели, номер_пары, преподаватель),

(день_недели, номер_пары, аудитория).

Некоторые атрибуты этого отношения трудно назвать абсолютно независимыми. Однако при условии, что каждый преподаватель может вести несколько предметов, а каждый предмет может вести несколько преподавателей, между этими атрибутами отсутствует ФЗ, соответствующая определению, приведенному в начале лекции. Если предположить, что аудитория явно не определяется ни предметом, ни группой, ни преподавателем, никаких нежелательных ФЗ в отношении выделить нельзя, поэтому оно удовлетворяет требованиям не только 3NF, но и NFBC.

Связь между атрибутами предмет и преподаватель можно определить как «многие ко многим». Между ними существует многозначная зависимость, которая обозначается так:

предмет ->> преподаватель

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

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



Определение четвертой нормальной формы:

Отношение находится в 4NF, если оно находится в BCNF и в нем отстутсвуют многозначные зависимости.

В приведенном примере не так-то просто избавиться от многозначных зависимостей. Можно предложить такой вариант:

Выносим в отдельные отношения зависимости предмет и преподаватель и предмет и группа. Естественное соединение этих отношений даст допустимые сочетания (предмет, преподаватель, группа).

Тогда схема отношения Расписание будет иметь вид:

Расписание (день_недели, номер_пары, аудитория, код допустимого сочетания предмет_ преподаватель_ группа )



<== предыдущая лекция | следующая лекция ==>
Требования третьей нормальной формы - 3NF | Требования пятой нормальной формы - 5NF


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.032 сек.