WebClub - Всероссийский Клуб Веб-разработчиков
WebClub.RU » Архив » Введение в проектирование реляционных баз данных: 4.2. Универсальное отношение

Введение в проектирование реляционных баз данных: 4.2. Универсальное отношение


Дата публикации: 17-03-2013

Предположим, что проектирование базы данных "Питание" (рис. 3.2) начинается с выявления атрибутов и подбора данных, образец которых (часть блюд изготовленных и реализованных 1/9/94 г.) показан на рис. 4.1.

Этот вариант таблицы "Питание" не является отношением, так как большинство ее строк не атомарны. Атомарными являются лишь значения полей Блюдо, Вид, Рецепт (хотя он и большой), Порций и Дата_Р остальные же поля таблицы рис. 4.1 – множественные. Для придания таким данным формы отношения необходимо реконструировать таблицу. Наиболее просто это сделать с помощью простого процесса вставки, результат которой показан на рис. 4.2. Однако такое преобразование приводит к возникновению большого объема избыточных данных.

Блюдо Вид Рецепт Порций Дата Р Продукт Калорийность Вес (г) Поставщик Город Страна Вес (кг) Цена ($) Дата П
Лобио Закуска Лом. 158 1/9/94 Фасоль 3070 200 "Хуанхэ" Пекин Китай 250 0.37 24/8/94
Лук 450 40 "Наталка" Киев Украина 100 0.52 27/8/94
Масло 7420 30 "Лайма" Рига Латвия 70 1.55 30/8/94
Зелень 180 10 "Даугава" Рига Латвия 15 0.99 30/8/94
Харчо Суп ... 144 1/9/94 Мясо 1660 80 "Наталка" Киев Украина 100 2.18 27/8/94
Лук 450 30 "Наталка" Киев Украина 100 0.52 27/8/94
Томаты 240 40 "Полесье" Киев Украина 120 0.45 27/8/94
Рис 3340 50 "Хуанхэ" Пекин Китай 75 0.44 24/8/94
Масло 7420 15 "Полесье" Киев Украина 50 1.62 27/8/94
Зелень 180 15 "Наталка" Киев Украина 10 0.88 27/8/94
Шашлык Горячее ... 207 1/9/94 Мясо 1660 180 "Юрмала" Рига Латвия 200 2.05 30/8/94
Лук 450 40 "Полесье" Киев Украина 50 0.61 27/8/94
Томаты 240 100 "Полесье" Киев Украина 120 0.45 27/8/94
Зелень 180 20 "Даугава" Рига Латвия 15 0.99 30/8/94
Кофе Десерт ... 235 1/9/94 Кофе 2750 8 "Хуанхэ" Пекин Китай 40 2.87 24/8/94
Рис. 4.1. Данные, необходимые для создания базы данных "Питание"

Таблица на рис. 4.2 представляет собой экземпляр корректного отношения. Его называют универсальным отношением проектируемой БД. В одно универсальное отношение включаются все представляющие интерес атрибуты, и оно может содержать все данные, которые предполагается размещать в БД в будущем. Для малых БД (включающих не более 15 атрибутов) универсальное отношение может использоваться в качестве отправной точки при проектировании БД.

Блюдо Вид Рецепт Порций Дата Р Продукт Калорийность Вес (г) Поставщик Город Страна Вес (кг) Цена ($) Дата П
Лобио Закуска Лом. 158 1/9/94 Фасоль 3070 200 "Хуанхэ" Пекин Китай 250 0.37 24/8/94
Лобио Закуска Лом 108 1/9/94 Лук 450 40 "Наталка" Киев Украина 100 0.52 27/8/94
Лобио Закуска Лом 108 1/9/94 Масло 7420 30 "Лайма" Рига Латвия 70 1.55 30/8/94
Лобио Закуска Лом 108 1/9/94 Зелень 180 10 "Даугава" Рига Латвия 15 0.99 30/8/94
Харчо Суп ... 144 1/9/94 Мясо 1660 80 "Наталка" Киев Украина 100 2.18 27/8/94
Харчо Суп ... 144 1/9/94 Лук 450 30 "Наталка" Киев Украина 100 0.52 27/8/94
Харчо Суп ... 144 1/9/94 Томаты 240 40 "Полесье" Киев Украина 120 0.45 27/8/94
Харчо Суп ... 144 1/9/94 Рис 3340 50 "Хуанхэ" Пекин Китай 75 0.44 24/8/94
Харчо Суп ... 144 1/9/94 Масло 7420 15 "Полесье" Киев Украина 50 1.62 27/8/94
Харчо Суп ... 144 1/9/94 Зелень 180 15 "Наталка" Киев Украина 10 0.88 27/8/94
Шашлык Горячее ... 207 1/9/94 Мясо 1660 180 "Юрмала" Рига Латвия 200 2.05 30/8/94
Шашлык Горячее ... 207 1/9/94 Лук 450 40 "Полесье" Киев Украина 50 0.61 27/8/94
Шашлык Горячее ... 207 1/9/94 Томаты 240 100 "Полесье" Киев Украина 120 0.45 27/8/94
Шашлык Горячее ... 207 1/9/94 Зелень 180 20 "Даугава" Рига Латвия 15 0.99 30/8/94
Кофе Десерт ... 235 1/9/94 Кофе 2750 8 "Хуанхэ" Пекин Китай 40 2.87 24/8/94
Рис. 4.2. Универсальное отношение "Питание"
Домен продается

Популярное

Не так давно в сети появился новый сервис, под названием Dead Man Zero. Этот сервис сделал...
Рынок социальных площадок уже давно стал стабильным. Несмотря на то, что время от времени...
Artisteer 4 – единственный в своем роде продукт, позволяющий автоматизировать работу над созданием...
Октябрь 2018 (14)
Февраль 2017 (3)
Январь 2017 (1)
Август 2016 (1)
Май 2016 (2)
Ноябрь 2015 (1)

Карта сайта: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41

Друзья сайта



Случайная цитата

Alan J. Perlis:

"Низкоуровневый язык — это когда требуется внимание к вещам, которые никак не связаны с программами на этом языке."

Опрос

Какими социальными сетями Вы пользуетесь?

Vkontakte.ru
Одноклассники
Мой Мир - mail.ru
Google Plus
Facebook
ЖЖ
Другие
Не пользуюсь