Создание модели "сущность-связь", Нормализация модели данных, Устранение связей "многие-ко-многим" - Базы данных "Склад"

Для информационных объектов, идентифицированных в рамках рассматриваемой предметной области Склад, с помощью Microsoft Word создана модель "сущность-связь" (рис.1).

модель

Рис.1. Модель "сущность-связь" для предметной области Склад

Нормализация модели данных

Модель "сущность-связь", представленная на рис.1 не находится в первой нормальной форме, так как в сущностях Покупатель, Товар и Заказ имеются множественные и повторяющиеся атрибуты, которые представляют собой упущенные в модели сущности.

На рис.2 показан результат приведения к 1НФ сущности Покупатель. Атрибут Тип_покупателя выделен в отдельную сущность и исключен из сущности Покупатель, как повторяющийся атрибут.

На рис. 2 также показан результат приведения к 1НФ сущности Товар. Группа множественных атрибутов Дата_поставки, Количество, Наличие, Цена_поставки являются упущенной сущностью Партия_товара, поэтому они были удалены из сущности Товар и вынесены в отдельную сущность Партия_товара. Установлена логическая связь между новой сущностью Партия_товара и сущностью Поставщик.

Повторяющийся атрибут Тип_товара вынесен из сущности ТОВАР в отдельную сущность.

Также на рис.2 показан результат приведения к 1НФ сущности Заказ. Повторяющийся атрибут Форма_оплаты вынесен в отдельную сущность и исключен из сущности Заказ. Группа множественных атрибутов Наименование_товара, Количество, Цена_реализации вынесена в отдельную сущность Пункт_заказа и исключена из сущности Заказ.

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

Окончательный результат приведения к 1НФ всей модели показан на рис. 2. Между сущностями Полка и Тип_товара установлена логическая связь, которая следует из анализа предметной области: полки спроектированы под определенные типы товаров, то есть полка характеризуется типом товара, который может быть на ней размещен.

приведенная к 1нф модель склад

Рис.2. Приведенная к 1НФ модель Склад

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

Приведение к 3НФ состоит в исключении транзитивных зависимостей атрибутов от атрибутов, не являющихся частью ключа.

В модели нет сущностей, имеющих транзитивные зависимости атрибутов от атрибутов, не являющихся частью ключа, таким образом, модель находится в 3НФ.

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

Устранение связей "многие-ко-многим"

В модели Склад присутствует связь "многие-ко-многим" между сущностями Полка и Товар. Устранение этой связи требует создания межсекционной сущности. По смыслу, имя такой межсекционной сущности может быть Партия_товара. Так как в модели уже присутствует сущность Партия_товара, то в целях устранения избыточности хранения данных, эта сущность может быть использована в качестве межсекционной при устранении связи "многие-ко-многим". Результат устранения множественной связи показан на рис. 3.

модель

Рис.3. Модель "Склад" после устранения связей "многие-ко-многим

Похожие статьи




Создание модели "сущность-связь", Нормализация модели данных, Устранение связей "многие-ко-многим" - Базы данных "Склад"

Предыдущая | Следующая