3.2. Реляционная база данных
Реляционная база данных – это совокупность отношений, содержащих всю информацию, которая должна храниться в БД. Однако пользователи могут воспринимать такую базу данных как совокупность таблиц. Так на рис. 3.2 показаны таблицы базы данных, построенные по инфологической модели базы данных "Питание" рис. 2.4.
Блюда
БЛ | Блюдо | Вид |
1 | Лобио | Закуска |
2 | Харчо | Суп |
3 | Шашлык | Горячее |
4 | Кофе | Десерт |
Расход
БЛ | Порций | Дата_Р |
1 | 158 | 1/9/94 |
2 | 144 | 1/9/94 |
3 | 207 | 1/9/94 |
4 | 235 | 1/9/94 |
... | ... | ... |
|
Продукты
ПР | Продукт | Калор. |
1 | Фасоль | 3070 |
2 | Лук | 450 |
3 | Масло | 7420 |
4 | Зелень | 180 |
5 | Мясо | 1660 |
6 | Томаты | 240 |
7 | Рис | 3340 |
8 | Кофе | 2750 |
Рецепты
БЛ | Рецепт |
1 | Ломаную очищ |
... | ... |
|
Состав
БЛ | ПР | Веc (г) |
1 | 1 | 200 |
1 | 2 | 40 |
1 | 3 | 30 |
1 | 4 | 10 |
2 | 5 | 80 |
2 | 2 | 30 |
2 | 6 | 40 |
2 | 7 | 50 |
2 | 3 | 15 |
2 | 4 | 15 |
3 | 5 | 180 |
3 | 6 | 100 |
3 | 2 | 40 |
3 | 4 | 20 |
4 | 8 | 8 |
|
Поставщики
ПОС | Поставщик | Город |
1 | "Полесье" | Киев |
2 | "Наталка" | Киев |
3 | "Хуанхэ" | Пекин |
4 | "Лайма" | Рига |
5 | "Юрмала" | Рига |
6 | "Даугава" | Рига |
Города
Город | Страна |
Киев | Украина |
Пекин | Китай |
Рига | Латвия |
|
Поставки
ПОС | ПР | Вес (кг) | Цена | Дата_П |
1 | 6 | 120 | 0.45 | 27/8/94 |
1 | 3 | 50 | 1.82 | 27/8/94 |
1 | 2 | 50 | 0.61 | 27/8/94 |
2 | 2 | 100 | 0.52 | 27/8/94 |
2 | 5 | 100 | 2.18 | 27/8/94 |
2 | 4 | 10 | 0.88 | 27/8/94 |
3 | 1 | 250 | 0.37 | 24/8/94 |
3 | 7 | 75 | 0.44 | 24/8/94 |
3 | 8 | 40 | 2.87 | 24/8/94 |
4 | 3 | 70 | 1.56 | 30/8/94 |
5 | 5 | 200 | 2.05 | 30/8/94 |
6 | 6 | 15 | 0.99 | 30/8/94 |
|
Рис. 3.2. База данных "Питание" (см. п. 2.3)
1. Каждая таблица состоит из однотипных строк и имеет уникальное имя.
2. Строки имеют фиксированное число полей (столбцов) и значений (множественные поля и повторяющиеся группы недопустимы). Иначе говоря, в каждой позиции таблицы на пересечении строки и столбца всегда имеется в точности одно значение или ничего.
3. Строки таблицы обязательно отличаются друг от друга хотя бы единственным значением, что позволяет однозначно идентифицировать любую строку такой таблицы.
4. Столбцам таблицы однозначно присваиваются имена, и в каждом из них размещаются однородные значения данных (даты, фамилии, целые числа или денежные суммы).
5. Полное информационное содержание базы данных представляется в виде явных значений данных и такой метод представления является единственным. В частности, не существует каких-либо специальных "связей" или указателей, соединяющих одну таблицу с другой. Так, связи между строкой с БЛ = 2 таблицы "Блюда" на рис. 3.2 и строкой с ПР = 7 таблицы продукты (для приготовления Харчо нужен Рис), представляется не с помощью указателей, а благодаря существованию в таблице "Состав" строки, в которой номер блюда равен 2, а номер продукта – 7.
6. При выполнении операций с таблицей ее строки и столбцы можно обрабатывать в любом порядке безотносительно к их информационному содержанию. Этому способствует наличие имен таблиц и их столбцов, а также возможность выделения любой их строки или любого набора строк с указанными признаками (например, рейсов с пунктом назначения "Париж" и временем прибытия до 12 часов).
Содержание