Вторая Нормальная Форма. Задание Пример Отношение в 2НФ, но не в 3нф предметная область МагазиныОписание функциональных зависимостей и ключей
Скачать 0.54 Mb.
|
Задание 2. Пример 2. Отношение в 2НФ, но не в 3НФ Предметная область: Магазины Описание функциональных зависимостей и ключей: Магазин – первичный ключ. Компания зависит от магазина (однозначно). Функциональная зависимость. Зная Компанию, мы можем точно определить Владельца. Следовательно, мы можем узнать Владельца, зная только Магазин. Функциональная зависимость. Обосновано нахождение отношения в 2НФ: Отношение находится в 2НФ, так как у него простой, а не составной первичный ключ – атрибут Магазин, и функциональные зависимости атрибутов Компания и Владелец от этого ключа, очевидно являются неприводимыми слева. Отношение не находится в 3НФ, НФБК, 4НФ, 5НФ, так как необходимые для этого условия не выполняются. Приводимая слева функциональная зависимость: Отсутствует. Не приводимые слева функциональные зависимости: Магазин –> Компания Компания –> Владелец Магазин –> Владелец (транзитивная) Магазин - Владелец Магазин Компания Владелец Магазин Компания Владелец Аномалия операции вставки: Причина аномалии: мы не сможем добавить информацию о новой компании и её владельце до тех пор, пока нет данных о принадлежащих ей магазинах, так как первичный ключ Магазин не может принимать значения NULL. Например: добавим запись о новой компании и её владельце, но, из-за отсутствия хотя бы одного собственного магазина, кортеж будет некорректен. Аномалия операции удаления: Причина аномалии: при удалении информации о компании также можно потерять данные о магазине и владельце. Например: удалим запись о компании ОАО “Киреево” – как результат, мы теряем информацию о магазине Юнона и его владельце Кирееве П.Н.. Аномалия операции обновления: Причина аномалии: возможна ситуация, когда разные магазины имеют одного владельца – тогда, допуская случай смены имени владельца, данные придётся изменить для всех кортежей с данным владельцем. После декомпозиции: Обосновано нахождение отношения в 3НФ: В полученных после декомпозиции отношениях каждый неключевой атрибут нетранзитивно зависит от потенциального ключа. Отношение не находится в НФБК, 4НФ, 5НФ, так как необходимые для этого условия не выполняются. Описание функциональных зависимостей и ключей: В отношении Магазин – Компания: Магазин - Компания Магазин Компания Компания - Владелец Компания Владелец Компания Компания Магазин Владелец Магазин – первичный ключ (потенциальный, детерминант). Компания зависит от магазина (однозначно). Функциональная зависимость. В отношении Компания – Владелец: Компания – первичный ключ (потенциальный, детерминант). Зная компанию, мы можем определить её владельца. Функциональная зависимость. Почему не произошло потерь: В отношениях, полученных после декомпозиции, приводимые слева ФЗ неключевых атрибутов от первичных ключей уже отсутствуют. Доказывается по теореме Хеза. Устранение аномалии операции вставки: Теперь мы сможем добавить информацию о новой компании и её владельце, даже если нет данных о принадлежащих ей магазинах, и не будет возникать полей, где первичный ключ Магазин будет NULL. Устранение аномалии операции удаления: Теперь мы сможем удалить данные частично, не теряя информацию из других полей. Например: удаляем данные о магазине, здание которого снесли, но компания и владелец остаются нетронутыми в своём отношении. Устранение аномалии операции обновления: Теперь мы сможем изменить повторяющиеся в нескольких кортежах данные, изменив лишь одно поле. Например: компания ОАО “Киреево” сменило название на ОАО “Морошка” – изменяем запись в отношении Компания – Владелец, и, как следствие, записи о компании изменятся и в отношении Магазин – Компания с внешним ключом Компания. Таким образом, все аномалии успешно устранены. |