Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ТЭИС ответы.doc
Скачиваний:
2
Добавлен:
20.04.2019
Размер:
238.08 Кб
Скачать

11. Реляционная модель данных – функциональные зависимости и ключи. Первая нормальная форма.

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

Простейший случай функциональной зависимости охватывает 2 атрибута. В отношении R(A,B,...) атрибут А функционально определяет атрибут В, если в любой момент времени каждому значению А соответствует единственное значение В (обозначается А -» В)

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

Отношение в первой нормальной форме (сокращенно 1НФ) - это обычное отношение с двухуровневой структурой.

Недопустимость в структуре отношения третьего и последующих уровней является ограничением, определяющим 1 НФ отношения.

Преобразование ненормализованного отношения в представление, соответствующее 1НФ, - это операция нормализации, рассмотренная выше. Следует отметить определенное терминологическое несоответствие - нормализация СЕИ приводит к 1НФ, а нормализация отношений реляционной БД обычно производится до ЗНФ или 4НФ.

Реляционная база данных в целом характеризуется 1НФ, если все ее отношения соответствуют 1НФ.

12. Реляционная модель данных – вторая и третья нормальные формы отношений. Алгоритм нормализации (к 3 нф).

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

Отношение, не соответствующее 2НФ, характеризуется избыточностью хранимых данных.

Отношение соответствует ЗНФ, если оно соответствует 2НФ и среди его атрибутов отсутствуют транзитивные функциональные зависимости (ФЗ).

Алгоритм нормализации (к ЗНФ)

1. Получить исходное множество функциональных зависимостей для атрибутов рассматриваемой БД.

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

Затем рассматриваются сочетания:

• по три атрибута, где первые два могут функционально определять третий,

• по четыре атрибута, где первые три могут функционально определять четвертый и т.д.

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

2. Получить минимальное покрытие множества функциональных зависимостей. В минимальном покрытии должны отсутствовать зависимости, которые являются следствием оставшихся зависимостей по теоремам 1 - 6. В частности, требуется объединить функциональные зависимости с одинаковой левой частью в одну зависимость. Обозначим полученное минимальное покрытие функциональных зависимостей через F={fl,...,fi,...,fk}.

3. Определить первичный ключ отношения.

4. Для каждой функциональной зависимости fi создать проекцию исходного отношения Ri = R[Xi], где Xi - объединение атрибутов из левой и правой частей fi.

5. Если первичный ключ исходного отношения не вошел полностью ни в одну проекцию, то создать отдельное отношение из атрибутов ключа.

Для практического применения алгоритма нормализации до ЗНФ существенны два вопроса:

• как учесть наличие взаимно-однозначных соответствий,

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

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