Упражнение №7: Нормализация реляционной модели базы данных

 

Нормализуйте реляционную логическую моделя данных для задачи “Учет поставки товаров по договорам” (Таблица 1).

Таблица 1: “Учет поставки товаров по договорам”

Дата заключения договора Код поставщика Код товара Колич. Срок поставки Дата фактич поставки Нарушения Меры Название поставщика Адрес Название товара Категория качества
нет 100 001 1000 1.11.99 1.11.99 нет нет ИВП Москва..   Краска 1  
штраф 200 001 2000 1.11.99 2.11.99 да штраф Мера С-П…   Краска 1  
2.10.99 100 002 500 1.11.99 1.11.99 нет нет ИВП Москва..   Кирпич 1  
2.10.99 200 002 800 1.11.99 2.11.99 да штраф Мера С-П…   Кирпич 1  
3.10.99 100 003 700 1.11.99 1.11.99 нет нет ИВП Москва..   Доски 2  
3.10.99 200 003 600 1.11.99 2.11.99 да штраф Мера С-П…   Доски 2  

 

Ответ:

Таблица 1 - 1 нормальная форма: в одной клеточке таблицы только одно значение не смотря на повторяющиеся данные.

В таб.1 необходимо определить ключ - состоит из трех столбцов: Дата заключения договора+ Код поставщика+ Код товара. А теперь определите какие столбцы зависят не от полного ключае, то есть сразу от всех трех столбцов. Название и адрес поставщика зависят только от кода поставщика, поэтому из таб.1 они исключаются и образуют нову таб.2 “Поставщики, где ключем будет Код поставщика. Аналогично и со столбцами Название товара и Категория качества товара – таб.3 “Товар”.

Итак, мы получили 2 нормальную форму, состоящую из таб. 2,3 и части таб.1.

Еще раз проанализируем таб.1. Между неключевым атрибутом Нарушение и неключевым атрибутом Меры есть зависимость. Исключим ее образовав таб.4 “Меры за нарушение, где ключем отношения будет столбец Нарушение.

Итак, мы получили 3 нормальную форму отношений, состоящую из таб.2,3,4 и части таб.1, которая представлена в таб.5. Тем самым нормализовали модель, то есть закончили проектирование реляционной логической модели, теперь она готова к реализации средствами выбранной СУБД.

Таблица 2: “ Поставщики”

Код поставщика

Название

Адрес

Банковские реквизиты

Руководитель

Телефон

100 ИВП Москва… Комерч. Банк… Иванов И.И. (095)…
200 Мера С-П… Банк… Петров П.П. (812)…

Таблица 3: “Товар”

Код товара

Название

Производитель

Категория качества

Единица измерения

Цена

001 Краска FGD 1 л 100
002 Кирпич Завод… 1 шт 20
003 Доски Фабрика… 2 кубом 130

Таблица 4: “Меры за нарушение”

Нарушение

Меры

нет -
да штраф

Таблица 5: “Учет поставки товаров по договорам”

Дата заключения договора Код поставщика Код товара Колич. Срок поставки Дата фактич поставки Нaрушения
нет 100 001 1000 1.11.99 1.11.99 нет
штраф 200 001 2000 1.11.99 2.11.99 да
2.10.99 100 002 500 1.11.99 1.11.99 нет
2.10.99 200 002 800 1.11.99 2.11.99 да
3.10.99 100 003 700 1.11.99 1.11.99 нет
3.10.99 200 003 600 1.11.99 2.11.99 да

Последняя версия с дополнениями от Rambler, торрент трекер.

Hosted by uCoz