Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
4 курс (заочка) / Методический материал / Методический материал БСТ17xx.docx
Скачиваний:
14
Добавлен:
08.01.2022
Размер:
444.27 Кб
Скачать

Последовательность нормальных форм. Их свойства. Первая нормальная форма (1нф), вторая нормальная форма (2нф)

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

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

Последовательность НФ:1, 2, 3, БК, 4, 5

Каждая следующая НФ улучшает свойства предыдущей, но при переходе к следующей НФ свойства предыдущих сохраняются.

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

Отношение находится в 2НФ тогда и только тогда, когда находится в 1НФ и не содержит неполных функциональных зависимостей не первичных атрибутов от атрибутов первичного ключа.

Функциональная зависимость – определяет устойчивые отношения между объектами и их свойствами в рассматриваемой предметной области.

Полная функциональная зависимость:R.A -> R.B полная, если А1  А R.A ↛ R.B (если набор атрибутов В функционально зависит от А и не зависит функционально от любого подмножества А)

Например, есть отношение: (ФИО, № зачетки, Группа, Дисциплина, Оценка), PK=зачетка+дисциплина

ФИО зависит от № зачетки, Оценка зависит от Дисциплины.

Эти атрибуты зависят только от части ключа – неполная функциональная зависимость.

Чтобы привести к 2НФ надо разбить на проекции:

№ зачетки, ФИО, Группа

№ зачетки, Дисциплина, оценка

Третья нормальная форма (3нф), нормальная форма Бойса-Кодда (бк нф)

Последовательная нормализация схемы отношений – это когда каждая следующая итерация соответствует нормальной форме более высокого уровня и обладает лучшими свойствами по сравнению с предыдущей, при этом следующая НФ сохраняет свойсва предыдущей.

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

Отношение находится в 3НФ тогда и только тогда, когда оно находится в 2НФ и не содержит транзитивных зависимостей.

Транзитивная функциональная зависимость, если существует набор атрибутов С такой, что:

1) С  А (С не является подмножеством А)

2) В  С (С не включает в себя В)

3)  R.A -> R.С (существует функциональная зависимость С от А)

4) R.С ↛ R.А (НЕ существует функциональная зависимость А от С)

5) R.С -> R.B (существует функциональная зависимость В от С)

id_клиента, ФИО, город, почтовый индекс фио зависит от ID город зависит от ID почтовый индекс зависит от города

в рамках данной таблицы индекс зависит от города а город зависит от ID => индекс зависит от ID

есть транзитивная зависимость, чтобы избавиться, строим дополнительное отношение:

  • город, индекс

  • id_клиента, фио, город

Отношение находится в НФБК тогда и только тогда, когда оно находится в 3НФ и каждый детерминант является возможным ключом отношения.

Рассмотрим отношение, моделирующее сдачу студентом экзаменов.

(№ зачетки, ID_студента, Дисциплина, Дата, Оценка)

Возможные ключи: 1) № зачетки, Дисциплина, Дата и 2) ID_студента, Дисциплина, Дата

Имеются следующие функциональные зависимости:

№ зачетки, Дисциплина, Дата -> Оценка

ID_студента, Дисциплина, Дата -> Оценка

№ зачетки -> ID_студента

ID_студента -> № зачетки

Это отношение находится в 2НФ и 3НФ, но не удовлетворяет НФБК, потому что есть 2 детерминанта (ID_студента, № зачетки), которые не являются возможными ключами отношения.в

Поэтому можно разделить отношение:

(ID_студента, Дисциплина, Дата, Оценка), (№ зачетки, ID_студента)

ИЛИ

(№ зачетки, Дисциплина, Дата, Оценка), (№ зачетки, ID_студента)

Эти схемы равнозначны.

3НФ или НФБК являются достаточными для реальных проектов БД, однако в теории нормализации существуют НФ высших порядков.