на начало
На главную страницу
Форум   

Статья :: Универсальное отношение

4.2. Универсальное отношение

Предположим, что проектирование базы данных "Питание" (рис. 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. Универсальное отношение "Питание"

[Назад] [Содержание] [Вперед]

Универсальное отношение

страницы в данном разделе 
Данные и ЭВМ Концепция баз данных
Архитектура СУБД Модели данных
Основные понятия Характеристика связей и язык моделирования
Классификация сущностей О первичных и внешних ключах
Ограничения целостности О построении инфологической модели
Реляционная структура данных Реляционная база данных
Манипулирование реляционными данными Цели проектирования
Универсальное отношение Почему проект БД может быть плохим?
О нормализации, функциональных и многозначных зависимостях Нормальные формы
Процедура нормализации Процедура проектирования
Различные советы и рекомендации Назначение и предметная область
Построение инфологической модели Проектирование базы данных
ПРЕДМЕТНЫЙ УКАЗАТЕЛЬ Основы проектирования реляционных баз данных
ЛИТЕРАТУРА >  


Содержание сайта (выборка)
Apache
Протоколы TCP/IP (принципы, протоколы и архитектура)



PHP, PELR, JSP
PHP
JavaServer Pages (JSP)

Базы данных
Основы mysql
СУБД INFORMIX
СУБД POSTGRES
Основы проектирования реляционных баз данных

HTML, javascript
Спецификация HTML 4.01
Каскадные Таблицы Стилей, Уровень 2
Клиентский JavaScript. Справочник.
JavaScript руководство пользователя
Серверный JavaScript 1.4. Руководство по Использованию.

Паскаль, C, C++, C#
GCC (примеры)
FAQ Валентинa Озеровa DELPHI
C



 
© faq.pp.ru, справочник программиста