
- •Понятие отношения
- •Что такое отношения?
- •Выявление отношений
- •Чтение отношений
- •Степень отношения
- •Направленность отношения
- •Неидентифицирующие отношения
- •Типизирующие отношения
- •Исключающие типизирующие отношения
- •Концепции моделирования
- •Часть I
- •Рекурсивные отношения
- •Количество элементов отношения
- •Один-к-одному
- •Один-ко-многим
- •Многие-ко-многим
- •Обязательность отношения
- •Необходимость или необязательность
- •Заключение
http://www.interface.ru/fset.asp?Url=/ca/ponatie.htm
22.01.03
Понятие отношения
Зайцев С.Л., к.ф.-м.н.
В предыдущих статьях были описаны основные концепции моделирования данных, сущностей и атрибутов для выявления и определения требований к информации, предъявляемых моделируемой областью бизнеса. Как вы уже знаете, логическая модель представляется на ERD сущностями, атрибутами и отношениями. В этой статье основное внимание будет уделено детальному рассмотрению отношений.
В следующих разделах будут освещены следующие вопросы, касающиеся отношений:
-
Роль отношений в процессе моделирования
-
Свойства отношений, такие как степень и направление
-
Основные виды отношений (идентифицирующие и не идентифицирующие), количество элементов и обязательность
-
Распространенные ошибки при выявлении отношений
На ER диаграммах сущности представляют контейнеры для атрибутов, атрибуты представляют интересующие нас факты, а отношения позволяют вам применять реляционную алгебру для связанных групп атрибутов в соответствие с бизнес-правилами. Давайте теперь рассмотрим отношения - сердце реляционной модели данных.
Что такое отношения?
Отношение - это ассоциация или "связь" между двумя сущностями. Отношение представляется в модели линией, соединяющей две сущности и глагольной конструкцией, которая описывает, как две сущности зависят друг от друга. Глагольная конструкция - механизм описания бизнес-правил, определяющих отношение. Хорошая глагольная конструкция описывает отношение в терминах бизнеса, а не на языке технических спецификаций. На Рисунке 4.1 показано отношение между двумя сущностями.
Рис. 4.1. На ER диаграммах отношения представляются линией между двумя сущностями, или замкнутой на саму сущность. Тип и свойства отношения представляют бизнес-правила. Экземпляр сущности БАНАНОВЫЙ ДЕСЕРТ может иметь один, два, три или ни одного экземпляра сущности ВЕРХУШКА БАНАНОВОГО ДЕСЕРТА. Экземпляр сущности ВЕРХУШКА БАНАНОВОГО ДЕСЕРТА может принадлежать одному, и только одному экземпляру сущности БАНАНОВЫЙ ДЕСЕРТ.
Отношения используются и в логической и в физической модели, и представляются в них в виде одного или нескольких мигрирующих атрибутов внешнего ключа. Отношения двунаправлены и представляют значимые ассоциации между двумя сущностями или сущности самой с собой.
Отношение обладает следующими свойствами:
-
Степень
-
Направленность
-
Тип
-
Количество элементов
-
Обязательность
ПРИМЕЧАНИЕ Важно иметь в виду, что не все методологии моделирования используют именно эти термины для описания отношений, хотя большинство из них поддерживают сходные концепции. |
Выявление отношений
Другим хорошим источником является корпоративная модель.
Проверьте отношения между сущностями в рамках моделируемой предметной области. Внимательно изучите внешние ключи, которые определяют отношения между кодовыми и другими сущностями. Эти отношения могут помочь выявить сущности, которые должны быть добавлены в вашу модель, или определить уровень абстракции, который улучшит ее расширяемость.
Вы можете выявить отношения и во время нормализации при появлении новых сущностей, связанных отношениями. Разрешение отношений многие-ко-многим в логической модели, скорее всего, приведет к появлению дополнительных сущностей и отношений.
ПРИМЕЧАНИЕ Редко в приложении все сущности связаны друг с другом отношениями попарно. Если в модели присутствует только несколько сущностей, то они все могут быть связаны отношениями. Однако в более крупных приложениях отношениями могут быть связаны не все сущности. |