- •Понятие отношения
- •Что такое отношения?
- •Выявление отношений
- •Чтение отношений
- •Степень отношения
- •Направленность отношения
- •Неидентифицирующие отношения
- •Типизирующие отношения
- •Исключающие типизирующие отношения
- •Концепции моделирования
- •Часть I
- •Рекурсивные отношения
- •Количество элементов отношения
- •Один-к-одному
- •Один-ко-многим
- •Многие-ко-многим
- •Обязательность отношения
- •Необходимость или необязательность
- •Заключение
Необходимость или необязательность
При определении необязательности отношения и определении того, требуется ли наличие экземпляра одной сущности для существования экземпляра другой, важно убедиться, что требуемый экземпляр всегда доступен.
Можно попытаться обеспечить значения по умолчанию для требуемых внешних ключей. Однако часто выгода от заполнения необходимых данных фиктивными значениями невелика. Если информация так важна, что корпорация считает ее обязательной, в чем выгода от подставленных значений? Если существует вероятность, что сущность может не быть доступной для всех экземпляров, лучше сделать отношение необязательным.
Заключение
Отношения представляют собой ассоциации или связи между сущностями. Они являются ядром реляционной модели данных. Визуально на ER диаграмме отношение представляется линией, соединяющей две сущности. Глагольная конструкция, описывающая взаимосвязь, позволяет вам "прочесть" отношение в форме сущность - глагольная конструкция - сущность. Отношения выявляются в ходе рабочих сессий, в процессе нормализации и путем сравнения с корпоративной моделью данных (если она доступна).
Отношения определяются в терминах степени, направленности, типа, количества элементов и обязательности. Степень определяет число сущностей, участвующих в отношении. По степени можно выделить унарные, бинарные и n-арные отношения. Унарным является отношение между экземплярами одной и той же сущности. Бинарные отношения связывают две сущности. N-арные отношения - это отношения между n сущностями, где n является числом больше двух. Наиболее часто используются бинарные отношения. Направление отношения определяется от исходной, или родительской, сущности, к завершающей, или подчиненной, сущности.
Тип отношения определяет поведение мигрирующих вторичных ключей. В ERwin тип отношения может быть одним из следующих:
-
Идентифицирующее отношение
-
Неидентифицирующее отношение
-
Типизирующее отношение
-
Отношение монгие-ко-многим
-
Рекурсивное отношение
Идентифицирующим является отношение, в котором первичный ключ родительской сущности требуется для идентификации экземпляра подчиненной сущности. В неидентифицирующем отношении первичный ключ родительской сущности становится одним или несколькими неключевыми атрибутами подчиненной сущности. Типизирующее отношение, в котором родительская сущность может иметь одну или несколько подчиненных сущностей, может быть исключающим или включающим. Исключающее типизирующее отношение указывает, что экземпляр родительской сущности может иметь соответствующие экземпляры только в одной из подчиненных сущностей. Включающее типизирующее отношение указывает, что экземпляр родительской сущности может иметь соответствующие экземпляры в нескольких подчиненных сущностях.
Отношения многие-ко-многим - это такие отношения, в которых экземпляры сущности связаны со многими экземплярами другой сущности, и наоборот. Это логические отношения, которые не могут быть представлены в физической модели и должны быть преобразованы за счет введения ассоциативной сущности между двумя сущностями. Ассоциативная сущность содержит первичные ключи каждой из исходных сущностей, что позволяет экземплярам ассоциативной сущности быть уникальными. Рекурсивными являются отношения, в которых экземпляр сущности связан с другим экземпляром той же самой сущности.
Количество элементов задает максимальное число экземпляров сущности, участвующих в отношении. Необязательность задает минимальное число. Количество элементов выражается терминами один или много. Необязательность выражается терминами ноль или один.
Понятия сущности, атрибута и отношений между ними исключительно важны для эффективного использования ERwin. В следующей статье "С чего начать работу с ERwin" будет описана инсталляция ERwin, настройка среды моделирования, а также будет представлены некоторые расширенные режимы отображения в ERwin.
