Популярные статьи | |
Сейчас на сайте | Гостей: 1
На сайте нет зарегистрированных пользователей
Пользователей: 9,955
новичок: Logyattella
|
|
Реализация в базе данных |
в двух словах, как модель для сущностей КУПОН,
МЕСТО и САМОЛЕТ может быть организована с помощью различных баз
данных.
Реляционная база данных
В реляционной БД каждая сущность становится таблицей, а ее
атрибуты - столбцами в таблице.
Рисунок 2-10
Реляционный проект
-------------------------------------------------------------¬
¦ Таблица Столбцы ¦
¦ AIRCRAFT Name char(40) not null ¦
¦ (САМОЛЕТ) Registration number char(20) not null ¦
¦ Type char(6) not null ¦
¦ Description char(40) not null ¦
¦ ¦
¦ SEAT Number char(3) not null ¦
¦ (МЕСТО) Aircraft registration ¦
¦ number char(20) not null ** ¦
¦ Smoking indicator char(1) not null ¦
¦ Position char(6) not null ¦
¦ ¦
¦ COUPON Airline code char(4) not null ** ¦
¦ (КУПОН) Flight number integer(4) not null ** ¦
¦ Date of departure date not null ** ¦
¦ Date of issue date not null ** ¦
¦ Passenger title char(9) not null ** ¦
¦ Passenger surname char(30) not null ** ¦
¦ Passenger initial char(1) not null ** ¦
¦ Class char(1) not null ¦
¦ Status char(2) not null ¦
¦ Confirmed indicator char(1) not null ¦
¦ Comment char(40) null ¦
¦ Seat number char(3) null ** ¦
L-------------------------------------------------------------
Столбцы с отметкой "**" используются для реализации связей
между таблицами. Так, например, регистрационный номер самолета,
включенный в таблицу SEAT, реализует связь между сущностями МЕСТО
и САМОЛЕТ. Такой столбец именуют внешним ключом.
Выражение "not null" соответствует либо обязательной связи
(которая на модели обозначается сплошной линией), либо обязатель-
ному атрибуту. Выражение "null" используется для обозначения либо
необязательной связи (пунктирная линия), либо необязательного ат-
рибута - "null" означает "значение может отсутствовать".
Сетевая база данных
В сетевой БД каждой сущности обычно соответствует запись.
Каждой связи присваивается набор указателей NPO (Следующий, Пре-
дыдущий и Владелец). Записи, требующие доступа по ключу, распола-
гаются с использованием алгоритма хэширования (CALC). Записи, ко-
торые на диске должны быть сгруппированы, требуют для своего
размещения использования еще одной записи (VIA).
Символами "MA" на схеме обозначается обязательная автомати-
ческая связь (Mandatory Automatic) - скажем, между записью "БИ-
ЛЕТ" и владельцем "САМОЛЕТ". Символы "OM" служат для обозначения
необязательной связи.
Рисунок 2-11
Сетевой проект
-----------------------------------------------------------------¬
¦ --------------¬ ¦
¦ ¦ САМОЛЕТ ¦ ¦
¦ +------T------+ ¦
¦ ¦ 1001 ¦ CALC ¦ ¦
¦ +------+------+ ¦
¦ AIR_FL¦ REG_NO ¦ ¦
¦ NPO LT-----T------- ¦
¦ OM ¦ ¦AIR_SEAT ¦
¦ ------------------- ¦NPO ¦
¦ ¦ ¦MA ¦
¦ v v ¦
¦ --------------¬ --------------¬ --------------¬¦
¦ ¦ РЕЙС ¦ ¦ МЕСТО ¦ ¦ БИЛЕТ ¦¦
¦ +------T------+ +------T------+ +------T------+¦
¦ ¦ 1005 ¦ CALC ¦ ¦ 1002 ¦ VIA ¦ ¦ 1003 ¦ CALC ¦¦
¦ +------+------+ +------+------+ +------+------+¦
¦ ¦ FL_ID ¦ ¦ AIR_SEAT ¦ ¦ TICK_NO ¦¦
¦ L------T------- L------T------- L------T-------¦
¦ FL_COUP¦ ¦SEAT_COUP ¦ ¦
¦ NPO L-----------------¬ ¦NP ------------------- ¦
¦ MA ¦ ¦OM ¦ TICK_COUP¦
¦ v v v NPO ¦
¦ --------------¬ MA ¦
¦ ¦ КУПОН ¦ ¦
¦ +------T------+ ¦
¦ ¦ 1004 ¦ VIA ¦ ¦
¦ +------+------+ ¦
¦ ¦ TICK_COUP ¦ ¦
¦ L-------------- ¦
L-----------------------------------------------------------------
|
|
Комментарии |
Добавить комментарий |
Пожалуйста залогиньтесь для добавления комментария.
|
Рейтинги |
Рейтинг доступен только для пользователей.
Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.
Нет данных для оценки.
|
|
Гость |
Вы не зарегистрированны? Нажмите здесь для регистрации.
Забыли пароль? Запросите новый здесь.
|
Мини-чат | Вам необходимо залогиниться.
Нет присланных сообщений.
|
|