Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Нормализация сущностей






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

Процесс нормализации сводится к последовательному приведению структур данных к нормальным формам — формализованным требованиям к организации данных.[2].. В теории реляционных баз данных известны шесть нормальных форм. В данной работе ограничиваемся приведением к третьей нормальной форме.

Нормальные формы основаны на понятии функциональной зависимости: для сущности реквизит В функционально зависим от реквизита А тогда и только тогда, когда конкретному значению А соответствует одно единственное значение В, то есть А однозначно определяет В. Графическое представление функциональной зависимости см. на рисункеРис. 14.

 
 

 

 


Рис. 14 Графическое представление функциональной зависимости

Далее представлена характеристика трех нормальных форм.

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

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

Третья нормальная форма (3НФ). Сущность находится в третьей нормальной форме, если она находится во второй нормальной форме и никакой неключевой атрибут не зависит от другого неключевого атрибута. Для приведения сущности во третью нормальную форму необходимо создать новую сущность и перенести в неё атрибуты с одной и той же зависимостью от неключевого атрибута, использовать атрибуты, определяющую проблемную зависимость в качестве первичного ключа новой сущности.

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

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

Для нормализации сущностей автоматизируемой предметной области необходимо определить функциональные зависимости внутри сущностей и в соответствии с вышеописанными требованиями привести к третьей нормальной форме.

1 Сущность Товар.

 

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

 

2 Сущность Контрагент.

 
 

 

 


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

 

3 Сущность Склад.

 
 

 


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

4 Сущность Поставка на склад.

 


Так как № накладной поставки уникален для контрагента, то конкретному номеру накладной может соответствовать несколько контрагентов и несколько дат поставки (см. ограничения). Поэтому рассматриваем функциональную зависимость от группы атрибутов: № накладной поставки, Код контрагента. Для каждого № накладной, относящегося к конкретному контрагенту существует единственная дата поставки и единственна сумма по накладной. Следовательно, Дата поставки и Сумма по накладной функционально-зависимы от № накладной поставки, Код контрагента.

Функциональные зависимости Наименования контрагента от Кода контрагента, Наименования товара, Единицы измерения от Кода товара рассматривались выше.

Для каждого № накладной, относящегося к конкретному контрагенту существует несколько кодов товаров (см. ограничения стр. 23), поэтому рассматриваем функциональную зависимость от зависимость от группы атрибутов: № накладной поставки, Код контрагента, Код товара. Для каждого товара, относящегося к конкретному № накладной для конкретного контрагента существует единственная Цена поставщика и единственное значение атрибута Количество поставлено. Следовательно, Цена поставщика и Количество поставлено функционально-зависимы от № накладной поставки, Код контрагента, Код товар.

Данная сущность не удовлетворяет требованиям 3 нормальным формам: присутствуют зависимости от части ключа (от разных ключей). Так Дата поставки и Сумма по накладной зависят от № накладной поставки, Код контрагента, а Цена поставщика и Количество поставлено зависят от № накладной поставки, Код контрагента, Кода товара.

Следуя правилам приведения к третьей нормальной форме, формируем новые сущности, находящиеся в третьей нормальной форме:

4.1 Сущность Поставка товаров

 
 

 

 


Атрибут Сумма по накладной является вычисляемым, потому в сущность Поставка товаров не включается.

4.2 Сущность Спецификация поставки

 
 

 


5 Сущность Отпуск со склада

 
 

 

 


Анализ функциональных зависимостей данной сущности приводит к выводу, что сущность Отпуск со склада не находится в третьей нормальной форме.

Следуя правилам приведения к третьей нормальной форме, формируем новые сущности, находящиеся в третьей нормальной форме:

5.1 Сущность Отпуск со склада

 
 

 

 


5.2 Сущность Спецификация отпуска со склада

 

 

Жирным шрифтом выделены ключевые атрибуты.

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






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.