Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ГОС_ответы.doc
Скачиваний:
35
Добавлен:
27.10.2018
Размер:
21.59 Mб
Скачать

9 Нормалізація відношень. 3 нормальна форма та нормальна форма Бойса-Кодда. Навести приклади

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

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

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

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

Потенциальный ключ [ключевой атрибут], состоящий из нескольких атрибутов, называется составным.

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

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

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

Третья нормальная форма (3НФ):отношение находится в 1НФ и 2НФ, и в отношении нет неключевых атрибутов, находящихся в транзитивной зависимости от атрибутов первичного ключа

Приведение отношения к 3НФ: из отношения удаляются транзитивно-зависимые атрибуты и переносятся в новое отношение вместе с копией детерминантов. В новом отношении детерминанты становятся ключами.

Нормальная форма Бойса-Кодда (НФБК): отношение находится в НФБК тогда и только тогда, когда детерминанты всех функциональных зависимостей являются потенциальными ключами.

Отличие 3НФ и НФБК

В 3НФ допускается зависимость ключевого атрибута А от неключевого атрибута В. В НФБК все детерминанты должны быть потенциальными ключами.

НФБК применяется для отношений:

  • с составными ключами

  • потенциальные ключи имеют совместно- используемый атрибут

Приведение отношения к 3НФ:

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

При этом детерминанты отношений становятся потенциальными ключами

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

Собеседование с клиентом

Собеседование (КодКлиента, Дата, время, КодСотр, Комната) Функциональные зависимости отношения Собеседование

1ФЗ: КодКлиента, Дата® Сотрудник, Время, Комната(Первичный ключ)

2ФЗ: Сотрудник, Дата, Время ® КодКлиента (Потенциальный ключ)

3ФЗ: Комната, Дата, Время ® КодКлиента, Сотрудник (Потенциальный ключ)

4ФЗ: Сотрудник, Дата ® Комната (Зависимость между неключевыми атрибутами)

Атрибуты Сотрудник, Дата не являются потенциальным ключом, поэтому функционально-зависимые атрибуты Сотрудник, Дата ® Комната выносятся в отдельное отношение, причем детерминант Сотрудник, Дата становится ключом нового отношения.

Для соответствия НФБК отношение Собеседование с клиентом декомпозируется на два отношения:

Собеседование ( КодКлиента, Дата, Сотрудник, Время)

Занятость комнаты (Сотрудник, Дата, Комната)