Шаг 12.
Работа с локальными БД в Delphi.
Нормализация. Виды связей
На этом шаге мы рассмотрим виды связей.
При моделировании связей между сущностями важно определить оба направления связи. После определения обеих сторон связи
мы приходим к трем основным видам связей.
- "один-к-одному" - если оба конца связи имеют степень "один и только один", то связь
называется "один-к-одному". Как мы позднее убедимся, связи "один-к-одному" встречаются редко.
В нашей модели данных их нет.
- "один-ко-многим" - если одна сторона имеет степень "один или много", а другая сторона имеет
степень "один и только один", то эта связь "один-ко-многим". Все связи в нашей модели - это связи
"один-ко-многим". Этого можно было ожидать, потому что связи "один-ко-многим" наиболее распространены.
- "многие-ко-многим" - когда обе стороны имеют степень "один-ко-многим". В предыдущей версии
нашей модели данных Исполнитель-CD имела тип "многие-ко-многим".
Как отмечалось ранее, связи "один-к-одному" очень редки. На практике, если в процессе моделирования вы
столкнетесь с такой связью, следует внимательно изучить свой проект. Такая связь может означать, что две сущности
являются на самом деле одной, и если это так, их следует объединить в одну.
Связи "многие-ко-многим" встречаются чаще, чем "один-к-одному". Все связи "многие-ко-многим" нужно разрешать с
помощью следующей технологии:
- Создайте новую сущность, иногда называемую сущностью-связкой. Назовите ее подходящим
образом. Если вы не можете придумать название, образуйте его из сочетания имен связываемых сущностей,
например Исполнитель-CD.
- Свяжите новую сущность с двумя исходными. Каждая из исходных сущностей должна иметь связь
"один-ко-многим" с сущностью-связкой.
- Если в новой сущности нет очевидного уникального идентификатора, введите в нее идентифицирующие атрибуты
исходных сущностей и сделайте эту пару уникальным идентификатором в новой сущности.
На следующем шаге мы рассмотрим третью нормальную форму.
Предыдущий шаг
Содержание
Следующий шаг