Руководство по программному пакету ERwin

         

Использование имен ролей атрибутов


Когда атрибут первичного ключа мигрирует из родительской сущности в дочернюю, то там он становится атрибутом внешнего ключа. Поскольку у внешнего ключа может быть иная роль, отличающаяся от роли связанного с ним первичного ключа, то ERwin разрешает Вам связать с внешним ключом имя роли. Имя роли - это алиас, присваиваемый атрибуту внешнего ключа.

Например, в диаграмме Video Store первичный ключ сущности MOVIE - movie-numbER, уникальным образом определяет название каждого фильма таким образом, что даже если есть два фильма с одинаковыми названиями, каждый из них может быть идентифицирован как отдельный фильм. Когда атрибут movie-numbER мигрирует из сущности MOVIE в сущность MOVIE-COPY и становится в ней внешним ключом, то ему присваивается имя роли mastER-numbER, которое поясняет, что этот атрибут обозначает конкретную строку в master-таблице MOVIE, а не в child-таблице MOVIE-COPY. Атрибут movie-copy-numbER обозначает конкретную копию этого фильма в child- таблице MOVIE-COPY. Это означает, например, что если в прокате есть две копии фильма The Wizard of Oz, то mastER-numbER служит для определения названия фильма, а movie-copy-numbER - для определения каждой из двух имеющихся копий.

При рекурсивной связи, когда сущность связана сама с собой, один и тот же атрибут может быть и первичным, и внешним ключом, и имя роли помогает прояснить вторую роль атрибута. Например, если одна организация управляет другой, как это показано ниже, то атрибут organization-id, являющийся первичным ключом в сущности ORGANIZATION, может также служить и внешним ключом в рекурсивной связи. Для того, чтобы прояснить роль внешнего ключа, ему присваивается имя роли parent-org-id для того, чтобы обозначить управляющую организацию по отношению к конкретной дочерней организации. Например, если компания Logic Works будет управлять IBM, то атрибут parent-org-id будет обозначать Logic Works, а organization-id будет обозначать IBM.

Синтаксис имени роли

Имя роли состоит из трех частей: присваиваемое имя роли, точка-разграничитель и базовое имя. Имя роли присваивается атрибуту внешнего ключа в редакторе Relationship и Subtype Relationship. ERwin вставляет точку после имени роли, а затем ставит базовое имя атрибута. Базовое имя - это имя атрибута, которое мигрировало из родительской сщности в дочернюю. См. ниже в этой главе 'Присваивание имени роли'.

Изображение имен ролей на диаграмме

Когда Вы даете команду меню Display 'Rolename/Attribute', то ERwin показывает на экране и базовое имя и имя роли (см. рис.).



Содержание раздела