Логическое проектирование базы данных

  • Часть 1
  • | 2
  • | 3
  • | 4

Таблица 7.2

Магазины

Название

Адрес

Специализация

Директор

ИНН

Светлый

Мира, 14

Хозяйственные товары

Деев О.И.

27213456

Восток

Запарина, 2

Промышленные товары

Стогов П.И.

27243212

Факел

Фрунзе, 13

Хозяйственные товары

Репина О.Г.

27231217

Когда между сущностями имеется связь «один к одному», а класс принадлежности связи для одной сущности является обязательным, а для другой необязательным, для каждой сущности формируется отдельная таблица. К таблице, сущность которой имеет обязательный класс принадлежности, добавляется в качестве поля ключ таблицы с необязательным классом принадлежности.

Рассмотрим связь между сущностями Магазин и Автомобиль. Предположим, лишь некоторым магазинам («Светлый», «Восток») принадлежит автомобиль (только один). У других магазинов («Факел») автомобиля нет (класс принадлежности связи для сущности Магазин является необязательным). Каждый автомобиль является собственностью некоторого магазина (класс принадлежности связи для сущности Автомобиль является обязательным). Таблица с информацией о магазинах будет идентична табл. 7.1, а таблица с информацией об автомобилях будет иметь следующий вид (табл. 7.3):

Таблица 7.3

Автомобили

Номер

Марка

Водитель

Адрес магазина

Х 123 МН

ЗИЛ-130

Андреев Р.С.

Мира, 14

Х 234 РТ

ГАЗ-66

Реутов С.П.

Запарина, 2

При связи между сущностями «один ко многим» в процессе формирования таблиц решающую роль играет класс принадлежности сущности, находящейся со стороны «много». Если он не является обязательным, следует создать три таблицы. Две из них будут соответствовать каждой сущности, ключи сущностей станут первичными ключами этих таблиц. Третья таблица будет связующей, в нее должны входить первичные ключи связываемых таблиц.

предыдущаяследующая