Шаг 10.
Работа с локальными БД в Delphi.
Нормализация. Реляционные отношения (связи)

    На этом шаге мы рассмотрим понятие реляционных отношений.

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

   Между двумя или более сущностями могут существовать отношения подчиненности. Отношения подчиненности определяют, что для каждой записи главной таблицы (master, называемой еще родительской) может существовать одна или несколько записей в подчиненной таблице (detail, называемой еще дочерней). Возьмем две гипотетические сущности - Студент и Факультет. Один вариант связи между ними состоит в том, что Студент "приписан" к Факультету. Этот Факультет "отвечает" за Студента. Таким образом, Студент является дочерней сущностью "приписан", а со стороны Факультет "отвечает" - родительской сущностью.

   Степень показывает, сколько экземпляров описывающей сущности должны описывать один экземпляр описываемой сущности. Степень выражается с помощью двух разных значений - "один-к-одному" (1-1) и "один-ко-многим" (1-М). Студент обычно приписан одновременно только одному Факультету, поэтому у сущности Студент связь с сущностью Факультет "один-к-одному". В обратном направлении, Факультет отвечает за многих студентов. Поэтому мы говорим, что у сущности Факультет связь с сущностью Студент "один-ко-многим".

   Иногда полезно выразить связь словами. Один из способов выразить направление связи в следующих формулах:

сущность1 [одну и только одну] сущность2
сущность1 [одну или много] сущность2

    Согласно этой формуле связь между Студентом и Факультетом можно выразить так:


Рис.1. Анатомия связи

    Можно использовать эту формулу для описания сущностей в нашей модели данных. В каждом CD содержится много или одна Песня, и каждая Песня содержится хотя бы в одном CD.


Рис.2. Связь CD - Песня

    На практике Песня может содержаться на многих CD, но для нашего примера мы этим пренебрежем.

    Прочно установив связи, мы можем вернуться к процессу нормализации и опять улучшить нашу схему. Пока мы лишь нормализовали повторяющиеся песни, преобразовав их в отдельную сущность, и смоделировали связь между ней и сущностью CD.

    На следующем шаге мы рассмотрим вторую нормальную форму (2NF).




Предыдущий шаг Содержание Следующий шаг