Третья нормальная форма

Понятие третьей нормальной формы основывается на понятии нетранзитивной зави­симости.

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

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

Требование третьей нормальной формы сводится к тому, чтобы все нёключевые поля зависели только от первичного ключа и не зависели друг от друга. Другими словами, нужно иметь возможность изменять значение любого неключевого поля, не изменяя значения любого другого поля базы данных. Это требо­вание исключает любое поле, значения в котором получаются как результат вычислений, использующих значения других полей.

Пример 7. Если в состав описательных реквизитов информационного объекта Студент включить фамилию старосты группы (Староста), которая определяется только номером группы, то одна и та же фамилия старосты будет многократно повторять­ся в разных экземплярах данного информационного объекта. В этом случае наблюдаются затруднения в корректировке фамилии старосты в случае назначения нового старосты, а также неоправданный расход памяти для хранения дублированной информации.

Для устранения транзитивной зависимости описательных реквизитов необходимо про­вести "расщепление" исходного информационного объекта. В результате расщепления часть реквизитов удаляется из исходного информационного объекта и включается в состав других (возможно, вновь созданных) информационных объектов.

Пример 8. "Расщепление" информационного объекта, содержащего транзитив­ную зависимость описательных реквизитов, показано на рис. 5.6. Как видно из рис. 5.6, исходный информационный объект Студент группы пред­ставляется в виде совокупности правильно структурированных информационных объ­ектов (Студент и Группа), реквизитный состав которых тождественен исходному объекту.

Отношение Студент = (Номер, Фамилия, Имя, Отчество, Дата, Группа) нахо­дится одновременно в первой, второй и третьей нормальной форме.

Третья нормальная форма - student2.ru

Рисунок 5.6. "Расщепление" информационного объекта, содержащего транзитив­ную зависимость описательных реквизитов.

Типы связей

Свойства отношений.

Отсутствие кортежей-дубликатов. Из этого свойства вытекает наличие у каждого кортежа первичного ключа. Для каждого отношения, по крайней мере, полный набор его атрибутов является первичным ключом. Однако, при определении первичного ключа должно соблюдаться требование "минимальности", т.е. в него не должны входить те атрибуты, которые можно отбросить без ущерба для основного свойства первичного ключа - однозначно определять кортеж.

Отсутствие упорядоченности кортежей.

Отсутствие упорядоченности атрибутов. Для ссылки на значение атрибута всегда используется имя атрибута.

Атомарность значений атрибутов, т.е. среди значений домена не могут содержаться множества значений (отношения).

Реляционные базы данных состоят из нескольких таблиц, связь между которыми устанавливается с помощью совпадающих полей. Каждая запись в таблицах идентифицирует один объект. Отношение между объектами определяет отношение между таблицами. Существует 4 типа отношений:

Отношение «один-к-одному» (1:1)означает, что каждая запись в одной таблице соответствует только одной записи в другой таблице.

Отношение «один-ко-многим» (1 :М)означает, что каждой записи в одной таблице соответствует одна или несколько записей в другой таблице.

Отношение «многие-ко-одному» (М:1)аналогично рассмотренному ранее типу. Тип отношения между объектами зависит от вашей точки зрения.

Отношение «многие-ко-многим» (М:М).возникает между двумя таблицами в тех случаях, когда:

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

Пример 9. Дана совокупность информационных объектов, отражающих учебный процесс в вузе:

СТУДЕНТ (Номер, Фамилия, Имя, Отчество, Пол, Дата рождения, Группа) СЕССИЯ (Номер, Оценка1, Оценка2, ОценкаЗ, Оценка4, Результат) СТИПЕНДИЯ (Результат, Процент) ПРЕПОДАВАТЕЛЬ (Код преподавателя. Фамилия, Имя, Отчество)

Связь один к одному (1:1) предполагает, что в каждый момент времени одному экземпляру информационного объекта А соответствует не более одного экземпляра информационного объекта В и наоборот. Рисунок 5.7 иллюстрирует указанный тип отношения.

Третья нормальная форма - student2.ru Третья нормальная форма - student2.ru

Рисунок 5.7. Графическое изображение реального отношения 1:1

Пример 10. Примером связи 1:1 может служить связь между информационными объектами СТУДЕНТ и СЕССИЯ:

СТУДЕНТ<–> СЕССИЯ Каждый студент имеет определенный набор экзаменационных оценок в сессию.

При связи один ко многим (1:М) одному экземпляру информационного объекта А соответствует 0, 1 или более экземпляров объектаВ, но каждый экземпляр объекта В свя­зан не более чем с 1 экземпляром объекта А. Графически данное соответствие имеет вид, представленный на рисунок 5.8.

Третья нормальная форма - student2.ru Третья нормальная форма - student2.ru

Рисунок 5.8. Графическое изображение реального отношения 1 :М

Пример 11. Примером связи 1 :М служит связь между информационными объекта­ми СТИПЕНДИЯ и СЕССИЯ:

СТИПЕНДИЯ <-» СЕССИЯ

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

Связь многие ко многим (М:М) предполагает, что в каждый момент времени одному экземпляру информационного объекта А соответствует 0, 1 или более экземпляров объекта В и наоборот. На рисунке 5.9 графически представлено указанное соответствие.

Третья нормальная форма - student2.ru Третья нормальная форма - student2.ru

Рисунок 5.9. Графическое изображение реального отношения М:М

Пример 12. Примером данного отношения служит связь между информационны­ми объектами СТУДЕНТ и ПРЕПОДАВАТЕЛЬ:

СТУДЕНТ «-» ПРЕПОДАВАТЕЛЬ

Один студент обучается у многих преподавателей, один преподаватель обучает многих студентов.

Наши рекомендации