
- •Глава 2 Уровни Демонстрации Изображения в ERwin
- •Глава 3 Сущности и Атрибуты ERwin
- •Глава 4 Связи в ERwin и Соответствующие Редакторы
- •Глава 5 Редактирование Графических Объектов
- •Глава 6 Области (Subject Area) и Хранимые Изображения
- •Глава 7 Шрифты и Цвета
- •Глава 16
- •Глава 17 Отчеты В Erwin
- •Глава 18 Прямое и Обратное Проектирование
- •Глава 19 Импорт и Экспорт Без Использования SQL
- •Глоссарий

Глава 7 Шрифты и Цвета
Содержание главы
Вэтой главе описывается, как пользоваться шрифтовыми и цветовыми возможностями ERwin для создания красивых диаграмм с целью анализа и презентации. Вы можете пользоваться шрифтами Windows TrueType или другими масштабируемыми шрифтами и цветовой гаммой для того, чтобы улучшить внешний вид объектов на диаграмме ERwin.
Вы можете мгновенно улучшить внешний вид и читабельность диаграммы, изменив шрифтовые и цветовые установки только для нескольких важных объектов, например, для имени сущности и внешних ключей. Вы можете использовать разные шрифты и цвета для выделения важных участков структуры данных или для визуальной связи наследуемых атрибутов с их родителями.
Когда Вы начинаете работу с новой диаграммой, ERwin присваивает всем типам объектов, которые Вы можете поместить на нее, шрифты и цвета по умолчанию. ERwin позволяет Вам изменить значения шрифтов и цветов, присваиваемые по умолчанию, для одного объекта или для группы объектов.
Вэтой главе Вы узнаете, как:
•Определять текстовые и нетекстовые характеристики объекта на диаграмме.
•Изменять шрифты и цвета для одного объекта.
•Изменять шрифты и цвета для всех объектов из группы.
•Выбирать правильный редактор шрифтов и цветов в ERwin для того объекта, который Вы хотите изменить.
•Работать в редакторе Object Font/Color.
•Работать в редакторе Default Font/Color.
•Пользоваться окном Preview.
Использование шрифтов и цветов в диаграмме ERwin
ERwin позволяет Вам использовать стандартные цветовые и шрифтовые возможности Windows для улучшения внешнего вида Вашей модели данных. Когда Вы располагаете объекты на диаграмме, ERwin автоматически присваивает объекту - сущности, атрибуту, связи и тексту - цвет и шрифт в соответствии со значениями, присваиваемыми по умолчанию. Вы можете изменить цвет и шрифт любого индивидуального объекта или группы в любое время, войдя в соответствующий редактор и изменив текущие значения.
Кроме того, что использование шрифтов и цветов улучшает внешний вид модели, оно может сделать ее более понятной. Например, по умолчанию атрибут внешнего ключа автоматически наследует цвет и шрифт связанного с ним первичного ключа. Функция наследования в ERwin позволяет Вам легко найти источник различных внешних ключей в Вашей модели данных.
ПРИМЕЧАНИЕ: ERwin позволяет Вам делать цветные распечатки, если Ваша диаграмма цветная и если у Вас есть цветной принтер. См. Гл.1, Основные свойства ERwin, разд. “Как распечатать диаграмму из окна ERwin”.
Графические характеристики диаграммы в ERwin
Обычно диаграмма в ERwin содержит три типа графических характеристик: текст, объекты заполнения и контур. Для того, чтобы изменить внешний вид текста, Вы изменяете текстовые характеристики объекта: шрифт, цвет, тип, стиль, размер. Чтобы изменить внешний вид нетекстового объекта, например, прямоугольного окна, представляющего сущность, Вы изменяете цвет контура и (или) цвет заполнения. Зная, какие графические возможности у Вас есть для каждого типа объектов, Вы сможете легче планировать и проектировать свои диаграммы в ERwin. Диаграмма с измененными шрифтами и цветами выглядит привлекательной и более наглядно передает назначение каждого объекта на диаграмме.
Далее следует описание текстовых и графических характеристик для каждого типа объектов.
Текстовые характеристики
Текстовые характеристики определяют внешний вид имени сущности, определения сущности или другого текстового объекта. Они включают в себя:
•Шрифт - позволяет Вам выбрать тип печатного текста, например Arial, Courier, Times Roman.
•Стиль шрифта - позволяет выбрать стиль печатного текста: Normal, Bold, Italic.
•Размер - позволяет Вам выбрать размер шрифта.
•Цвет - позволяет Вам выбрать цвет текста.
Нетекстовые характеристики
Кроме изменения цвета текста в диаграмме ERwin, Вы можете модифицировать цвет определенных параметров нетекстовых объектов:
•Линия сущности - позволяет Вам выбирать цвет контура сущности.
•Линия связи - позволяет Вам выбирать цвет линии, соединяющей две взаимосвязанные сущности.
Глава 7 |
1 |

•Заполнение сущности - позволяет Вам выбирать цвет внутренности окна сущности.
•Заполнение подтипа - позволяет Вам выбирать цвет внутренности символа подтипа, соединяющего родительскую сущность с дочерней.
•Фон - позволяет Вам изменить фон всей диаграммы. По умолчанию фон белый. Фон также можно задать из меню Display командой “Background Color”.
•Тень - позволяет Вам придать сущности “эффект трехмерности”. Вы можете добавить теневой эффект как дополнение к изменениям шрифтов и цветов при помощи команды “Shadow” меню
Display. См. Гл.2, Уровни демонстрации изображения в ERwin, разд. “Теневой эффект”.
Шрифты и цвета, устанавливаемые по умолчанию
Диаграмма в ERwin состоит из графических и текстовых объектов. ERwin использует графические объекты как символы для обозначения сущностей, подтипов и связей. ERwin использует текстовые объекты для того, чтобы помечать сущности и атрибуты, описывать связи, помечать диаграммы и создавать заголовки.
Вы можете изменить внешний вид объекта, изменяя его графические характеристики. Графические характеристики каждого объекта распространяются на шрифты, цвет текста, цвет линии и цвет заполнения.
Некоторые объекты обладают множеством графических характеристик, другие - только одной характеристикой. Например, Вы можете использовать разные шрифты и цвета для улучшения внешнего вида текстового блока. Но по отношению к фону диаграммы или внутренности окна сущности Вы можете использовать только один цвет.
Объекты в ERwin делятся на 13 групп объектов.
Группа объектов “Шрифты” задает шрифтовые и цветовые характеристики всех объектов, кроме Фонового цвета, Заполнения сущности и Заполнения подтипа.
ERwin присваивает каждой графической характеристике каждой группы объектов цветовые и шрифтовые установки по умолчанию. С помощью редактора Default Font/Color Вы можете изменить установки, присваиваемые по умолчанию, для любой группы объектов.
Изменение и установка старых значений шрифтов и цветов
Если Вы хотите изменить установки, задаваемые по умолчанию, для одной или нескольких групп объектов, мы советуем Вам сделать это до того, как Вы начнете проектировать новую диаграмму в ERwin. См. разд. “Работа в редакторе Default Font/Color” далее в этой главе.
Если Вы хотите снова задать старые значения шрифтов и цветов группы объектов, обратитесь к таблице, которая здесь приводится. См. также разд. “Работа в редакторе Default Font/Color”.
ШРИФТОВЫЕ И ЦВЕТОВЫЕ УСТАНОВКИ ПО УМОЛЧАНИЮ
|
Группа |
Шрифт по |
Цвет текста |
Цвет |
Цвет заполнения |
|
|
|
объектов |
умолчанию |
по |
линии по |
по умолчанию |
|
|
|
|
|
умолчанию |
умолчанию |
|
|
|
|
|
|
|
|
|
|
|
|
Имя сущности |
Arial, Regular, |
Черный |
Не применимо |
Не применимо |
|
|
|
|
10 Point |
|
|
|
|
|
|
Определение |
Arial, Regular, |
Черный |
Не применимо |
Не применимо |
|
|
|
сущности |
10 Point |
|
|
|
|
|
|
Контур сущности |
Не применимо |
Не применимо |
Черный |
Не применимо |
|
|
|
Заполнение |
Не применимо |
Не применимо |
Не применимо |
Белый |
|
|
|
сущности |
|
|
|
|
|
|
|
Собственный |
Arial, Regular, |
Черный |
Не применимо |
Не применимо |
|
|
|
атрибут сущности |
10 Point |
|
|
|
|
|
|
(в т.ч. первичный |
|
|
|
|
|
|
|
ключ) |
|
|
|
|
|
|
|
Атрибут внешнего |
Наследуется от |
Наследуется |
Не применимо |
Не применимо |
|
|
|
ключа |
связанного с |
от связанного |
|
|
|
|
|
|
ним первичного |
с ним |
|
|
|
|
|
|
ключа |
первичного |
|
|
|
|
|
|
|
ключа |
|
|
|
|
|
Связь (глагольная |
Наследуется от |
Наследуется |
Наследуется от |
Не применимо |
|
|
|
фраза и |
шрифта имени |
от цвета линии |
цвета линии |
|
|
|
|
соединительная |
родительской |
родительской |
родительской |
|
|
|
|
линия) |
сущности |
сущности |
сущности |
|
|
|
|
Имя подтипа (в т.ч. |
Наследуется от |
Наследуется |
Наследуется от |
Не применимо |
|
|
|
символ подтипа, |
шрифта имени |
от цвета линии |
цвета линии |
|
|
|
|
соединительная |
родительской |
родительской |
родительской |
|
|
|
|
линия и связанный |
сущности |
сущности |
сущности |
|
|
|
|
с ним текст) |
|
|
|
|
|
|
|
Заполнение |
Не применимо |
Не применимо |
Не применимо |
Белый |
|
|
|
подтипа |
|
|
|
|
|
|
|
Текст текстового |
Arial, Regular, |
Черный |
Не применимо |
Не применимо |
|
|
|
блока |
10 Point |
|
|
|
|
|
|
|
|
|
|
|
|
|
2 |
|
|
|
Глава 7 |

Номер страницы |
Arial, Regular, |
Черный |
Не применимо |
Не применимо |
|
10 Point |
|
|
|
Фоновый цвет |
Не применимо |
Не применимо |
Не применимо |
Белый |
Все шрифты |
Arial, Regular, |
Черный |
Не применимо |
Не применимо |
|
10 Point |
|
|
|
|
|
|
|
|
РИС. 7.5 |
|
|
|
|
ПРИМЕЧАНИЕШрифтовые и цветовые установки применяются как к логической модели, так и
:к физической схеме.
Выбор нужного редактора шрифтов и цветов
ERwin позволяет редактировать шрифты и цвета объектов на диаграмме в двух редакторах: Object Font/Color Editor и Default Font/Color Editor. Оба редактора позволяют Вам задавать шрифты и цвета и определять, как шрифты и цвета будут располагаться на диаграмме.
Редактор Object Font/Color позволяет Вам изменять шрифты и (или) цвета одного объекта. Изменения, проделанные в этом редакторе для одного объекта, не распространяются на другие объекты, находящиеся на диаграмме сейчас, и на объекты, которые будут добавлены потом.
Редактор Default Font/Color позволяет Вам изменять шрифты и цвета для всех объектов из одной группы объектов. Изменения, проделанные в этом редакторе по отношению к группе объектов, могут отразиться на других объектах, находящихся на диаграмме, а также и на тех, которые будут добавлены потом.
Работа в редакторе Object Font/Color
Редактор Object Font/Color позволяет Вам изменять шрифтовые и цветовые характеристики одного объекта на диаграмме, такого, как имя сущности, один или несколько атрибутов, линия связи или текстовый блок. Редактор Object Font/Color - контекстно-чувствительный. Строка-заголовок, различные метки и варианты выбора изменяются в зависимости от того, какой объект Вы выбрали. Например, если Вы выбрали связь, то заголовок будет выглядеть так: “Relationship Font/Color Editor”.
Окно Preview позволяет Вам изменить цвет объекта, не выходя из редактора Object Font/Color. Вы также можете пользоваться методом SHIFT-Click или CTRL-Click для того, чтобы выбирать несколько частей одного и того же объекта (например, для того, чтобы задать одинаковые шрифты и цвета для имени сущности и одного или нескольких ее атрибутов).
Вы можете пользоваться закладками характеристик, которые находятся в нижней части редактора, для задания шрифтов и (или) цветов для характеристик объекта. Например, если Вы выбрали сущность, то Вы можете выбрать такие закладки:
•Text - для задания типа, стиля, размера шрифта и цветов для текста имени сущности и атрибута.
•Fill - для того, чтобы задать цвет внутренности окна сущности.
•Entity Outline - для того, чтобы задать цвет контура окна сущности.
Варианты выбора, предлагаемые в окне-списке, также меняются в зависимости от выбранного объекта. Например, если Вы выбрали Text, то появляются варианты шрифтов и цветов. Если же Вы выбрали Entity Outline, появляются только варианты цветов.
Если Вы выбрали сущность, то появляется список “Entity”, в котором приводятся имена всех сущностей диаграммы. Если Вы выбрали связь или текстовый блок, то список “Entity” будет пустой. ERwin показывает шрифт, который присваивается по умолчанию, или который был выбран до этого, и цветовые характеристики объекта.
Как изменить шрифт и (или) цвет объекта
1. Выберите объект с помощью правой кнопки мыши. Появится меню Editor.
Например, если Вы хотите выбрать сущность CUSTOMER, установите курсор в окно сущности и нажмите правую кнопку мыши, появится меню Editor.
2.Дайте команду “Object Font/Color...” в меню Editor.
3.Для того, чтобы изменить шрифтовые характеристики выбранного объекта, просмотрите списки “Font”, “Style”, “Size” в верхней части редактора. Выберите любое сочетание шрифтовых характеристик из этих списков.
Поставьте метку в окне “Strikeout”, чтобы перечеркнуть выбранный объект, или в окне “Underline”, чтобы подчеркнуть текст на диаграмме.
4.Для того, чтобы изменить цветовые характеристики выбранного объекта, просмотрите список “Color” и щелкните по нужному цвету.
Для того, чтобы просмотреть диаграмму с новыми шрифтами и цветами, увеличьте размер окна Preview до максимального. При необходимости пользуйтесь стрелками прокручивания (scroll arrows) окна Preview для поиска объекта, который Вы хотите помотреть. Когда Вы захотите вернуться в редактор Object Font/Color, восстановите окно Preview, нажав для этого кнопку
Restore.
5.Для выхода из редактора нажмите “ОК”. Все изменения будут сохранены и Вы вернетесь в окно диаграммы.
Глава 7 |
3 |

Вы можете также нажать кнопку “Cancel” для того, чтобы отменить изменения и вернуться в окно диаграммы.
ПРИМЕЧАНИЕ: Если Вы хотите изменить несколько объектов на диаграмме, Вы можете выбрать новый объект из окна Preview. При возвращении в редактор Object Font/Color ERwin продемонстрирует варианты выбора и характеристики, соответствующие новому выбранному объекту.
Как изменить фон диаграммы
1. Дайте команду “Background Color” в меню Display. Вы войдете в редактор background Default Font/Color. Откройте список “Background Color” и выберите нужный цвет для фона диаграммы.
2.Нажмите “ОК” для сохранения нового цвета и вернитесь в диаграмму. Для отмены изменения и возвращения в диаграмму нажмите “Cancel”.
ПРИМЕЧАНИЕ: Вы можете также войти в редактор Background Default Color через команду
“Default Font/Color...” меню Option.
Работа в редакторе Default Font/Color
Редактор Default Font/Color позволяет Вам изменять шрифтовые и цветовые характеристики объектов, относящихся к одной группе объектов, одновременно. Например, Вы можете изменить шрифт, используемых для всех объектов из группы “Связь” на диаграмме. Или Вы можете изменить цвет, присваиваемый всем текстовым блокам по умолчанию, с черного на красный.
Редактор Default Font/Color - контекстно-чувствительный. Строка-заголовок, различные метки и управляющие функции меняются в зависимости от того, какую группу объектов Вы выбрали. Например, если Вы щелкнете по закладке Subtype Name, то строка-заголовок примет вид: “Subtype Default Font/Color Editor”,
а в редакторе будут списки и “Font” и “Color”. Если же Вы выбрали закладку Background Color, то ERwin покажет только спискок “Color”, а списки “Font’ и “Apply Settings To” спрячет.
В ERwin есть 13 групп объектов: Имя сущности (Entity Name), Определение сущности (Entity Definition), Линия сущности (Entity Line), Заполнение сущности (Entity Fill), Собственный атрибут сущности (Owned EntityAttribute), Aтрибут внешнего ключа (Foreign-Key Attribute), Связь (Relationship), Имя подтипа (Subtype Name),
Заполнение подтипа (Subtype Fill), Текст текстового блока (Text Block Text), Номер страницы (Page Number), Фоновый цвет (Background Color), Все шрифты (All Fonts). Вы выбираете группу объектов щелчком по закладке, которая находится в нижней части редактора.
Закладка All Fonts (все шрифты) позволяет Вам изменить цветовые и шрифтовые характеристики всех объектов (включая контуры сущностей и линии связи) на диаграмме, за исключением Фонового цвета, Заполнения сущности и Заполнения подтипа.
Распространение шрифтов и цветов на имеющиеся и новые объекты
После того как Вы выбрали группу объектов, Вы можете контролировать порядок присваивания шрифтовых и цветовых значений в ERwin, как уже существующим объектам, так и новым объектам, которые Вы будете добавлять в диаграмму, с помощью кнопок “Apply Setting To”. Если Вы изменили шрифты и (или) цвета для группы объектов и выбрали:
•All Objects - новые установки будут применяться как к уже существующим объектам, так и к тем, которые Вы будете добавлять в диаграмму.
•New Objects Only - новые установки будут применяться к тем объектам, которые Вы будете добавлять в диаграмму. Установки для уже существующих объектов не изменятся.
•Current Object Pool - новые установки применяются как к уже существующим объектам, так и к тем, которые Вы будете добавлять в диаграмму.
Текущий пул объектов содержит все объекты текущей области. Текущая область может быть Главной областью или областью, созданной Вами.
Если текущий пул объектов - область, отличная от Главной области, и Вы выбираете режим Current Object Pool, то новые установки будут применены как к уже существующим, так и к новым объектам этой области. Но объекты Главной области, которые не входят в эту область, не попадут под влияние новых установок для текущей области.
Распространение шрифтов и цветов на текущий пул объектов
Если Вы изменили шрифт и (или) цвет группы объектов в области и выбрали режим “Current Object Pool” из “Apply Settings To”, то новые установки могут отразиться на объектах и в текущей, и в Главной областях. На рис. 7.11 - 7.13 показано, как влияет на объекты изменение шрифтов и цветов в зависимости от того, расположен ли текущий пул объектов в Главной или иной области.
На рис. 7.11 показана ситуация до задания установок. В Главной области есть три красных объекта (Е1, Е2, Е3). Е1 и Е2, кроме того, находятся еще в одной области. На рис. 7.12 - 7.14 показано, каким образом эти
4 |
Глава 7 |

объекты и новые объекты, добавляемые в диаграмму, будут изменять свой цвет с красного на синий вследствие изменения цвета группы объектов.
Если текущий пул объектов - Главная область и Вы изменяете цвет с красного на синий, и если Вы добавляете еще два объекта (Е4 и Е5), то ERwin присваивает цвета, как показано на рис. 7.12.
Если текущий пул объектов - “другая” область и Вы изменяете цвет с красного на синий, и если Вы добавляете еще два объекта (Е4 и Е5), то ERwin присваивает цвета, как показано на рис. 7.13.
Если текущий пул объектов - “другая” область и Вы изменяете цвет с красного на синий, и если Вы добавляете еще два объекта (Е4 и Е5), то ERwin присваивает цвета, как показано на рис. 7.14.
Цвета объектов в “другой” области - такие, как на рис. 7.13.
Как применить шрифтовые и цветовые установки к группе объектов
1. Дайте команду “Default Font/Color...” в меню Option. Вы входите в редактор Default Font/Color.
2.Выберите группу объектов, используя для этого закладки в нижней части редактора. Используйте стрелки для прокручивания закладок влево и вправо, для поиска нужной закладки.
3.Нажмите одну из кнопок в окне “Apply Settings To” для того, чтобы задать, каким образом заданные Вами шрифтовые и цветовые характеристики будут отражаться на новых и на уже существующих объектах. См. выше “Распространение шрифтов и цветов на имеющиеся и новые объекты”.
4.Для изменения шрифтовых характеристик выбранной группы объектов просмотрите списки “Font”, “Font Style” и “Size” в верхней части редактора. С помощью этих списков задайте любой сочетание шрифтовых характеристик.
Поставьте метку в окне “Strikeout” для того, чтобы перечеркнуть выбранный объект. Поставьте метку в окне “Underline” для того, чтобы подчеркнуть выбранный текст.
5.Для того, чтобы изменить цвет группы объектов, просмотрите список “Color” и выберите нужный цвет. Щелкните мышью по выбранному цвету.
Если Вы задали какой-то режим в окне “Apply Settings To”, отличный от “New Objects Only”, Вы сможете немедленно увидеть изменения в окне Preview.
6.Для того, чтобы сохранить шрифтовые и цветовые установки для группы объектов и вернуться в окно диаграммы, нажмите “ОК”.
Вы можете отменить изменения и вернуться в диаграмму, нажав кнопку “Cancel”.
Вы можете изменить установки, задаваемые по умолчанию, для какой-нибудь еще группы объектов, прежде чем вернетесь в окно диаграммы. Для этого выберите другую закладку группы объектов.
ПРИМЕЧАНИЕ: Если Вы выбрали множество общих объектов с различными значениями шрифтовых и цветовых параметров и установили режим “New Objects Only” в окне “Apply Settings To”, то ERwin покажет значения шрифтов и цветов по умолчанию в соответствующих окнах-списках. Если для этого же множества объектов Вы установите режим “Current Object Pool” или “All Objects”, то ERwin покажет пустые списки шрифтов, а в списке цветов - слово “None”, чтобы показать, что выбранные объекты не подобны друг другу. Вы можете задать общий шрифт для объектов, не подобных друг другу, открыв разворачивающийся список и выбрав в нем желаемые значения шрифтов и цветов.
Подсказка: Если Вы изменяете имя атрибута в редакторе Attribute Definition, то это не влияет на цвет атрибута. Если Вы изменяете имя собственного атрибута или атрибута первичного ключа в редакторе Entity-Attribute, то это не влияет на цвет атрибута, если для группы объектов Owned Attribute или Foreign Key не задан режим “New Objects Only” в окне “Apply To Setting”. Поскольку изменение имени атрибута в редакторе Entity-Attribute рассматривается как создание нового атрибута, цвет изменяется на тот, который присваивается по умолчанию данной группе объектов - атрибутов.
Просмотр результатов изменения шрифтов и цветов
В обоих редакторах - Object Font/Color и Default Font/Color - есть окно Preview для просмотра результатов изменений применительно к текущей диаграмме. Как правило, Вы можете просматривать результаты изменений, не выходя из редактора.
Кнопка “Maximize” в окне Preview позволяет Вам расширить диаграмму при просмотре. увеличение размера окна до максимального может помочь Вам найти то место на диаграмме, к которому применимы изменения шрифтов и (или) цветов.
Находясь в окне Preview, Вы можете вызывать и использовать большую часть возможностей демонстрации изображения в ERwin. Например, если Вы изменили цвет группы объектов Entity Definition и хотите просмотреть результаты, то Вы можете войти в меню Display, находясь в окне Preview, и установить режим просмотра Entity Definition.
Глава 7 |
5 |

Хотя окно Preview и напоминает окно диаграммы, оно не поддерживает всех функций ERwin. Например, для того, чтобы удалить. добавить или перенести объект, Вы должны вернуться в окно диаграммы.
В окне Preview редактора Object Font/Color ERwin позволяет Вам выбирать и изменять шрифты и цвета нескольких атрибутов выбранной суущности, не выходя из редактора. Поскольку редактор Default Font/Color позволяет Вам изменять шрифты и цвета группы объектов, например Owned Entity Attributes (собственных атрибутов сущности), нет необходимости выбирать отдельные атрибуты или группы атрибутов на других объектах при работе в окне Preview редактора Default.
Как просматривать результаты изменения шрифтов и (или) цветов
1. Находясь в одном из редакторов Object Font/Color или Default Font/Color, нажмите кнопку Maximize окна Preview или используйте средства изменения размера для того, чтобы увеличить окно Preview.
2.Прокручивая окно Preview, найдите искомый объект (объекты).
3.Работая в окне Preview редактора Object Font/Color, Вы можете выбрать объект, щелкнув по любому месту на его поверхности.
Вы можете войти в меню Display (нажав на правую кнопку мыши) из окна Preview обоих редакторов.
4.Для того. чтобы вернуться в редактор (любой из двух), восстановите размер окна Preview (функции Restore, Resize).
Краткое повторение главы 7
Как войти в редактор Object Font/Color
Щелкните по объекту правой кнопкой мыши для входа в меню Object Editor. Дайте команду “Object Font/Color Editor”.
Как изменить шрифт и (или) цвет объекта
Щелкните по закладке с названием характеристики в нижней части редактора для того, чтобы выбрать ту характеристику, которую Вы хотите изменить. Задайте новые шрифты и цвета, затем нажмите “ОК”, чтобы зафиксировать изменения и вернуться в окно диаграммы.
Как изменить значения шрифтов и (или) цветов, присваиваемых группе объектов по умолчанию
Дайте команду “Default Font/Color Editor” в меню Option. Щелкните по закладке той группы объектов, которую Вы хотите изменить. Задайте новые шрифты и цвета и, если хотите, выберите режим в окне “Apply Settings To”. Просмотрите результаты изменений в окне Preview. Нажмите “ОК” для того, чтобы зафиксировать изменения и вернуться в окно диаграммы.
Как просмотреть результаты изменений шрифтов и цветов
Находясь в любом из двух редакторов, щелкните по любому месту окна Preview. Пользуйтесь кнопкой Maximize или передвиньте границы окна с тем, чтобы увеличить его размеры. Нажмите правую кнопку мыши для вызова меню Display и установите режим просмотра. Если Вы работаете в редакторе Object Font/Color, Вы можете выбрать объект, щелкнув по его поверхности. Для того, чтобы вернуться в редактор, уменьшите размер окна Preview.
6 |
Глава 7 |

Глава 8 Сущности и Атрибуты: Возможности Повышенного Уровня Сложности
Содержание главы
До этого Вы знакомились с главой, посвященной основным возможностям при работе с функциями и атрибутами в ERwin. В данной главе эти возможности взяты за основу.
Вглавах, посвященных основным понятиям ERwin, описывалась работа в редакторах Entity-Attribute, Entity Definition, Attribute Definition - ввод информации о сущностях и атрибутах Вашей диаграммы. Эта глава снова рассматривает редактор ЕА (Entity-Attribute) и показывает, как использовать его для записи информации об альтернативных ключах и Inversion Entry.
Вэтой главе Вы узнаете, как:
•Назначать атрибут альтернативным ключом.
•Присваивать имена ролей атрибутам внешнего ключа.
•Назначать атрибут Inversion Entry.
•Просматривать информацию SML.
Назначение альтернативных ключей
В целях улучшения работы базы данных в таблице обычно имеется несколько индексов. преимущество множественных индексов в том, что у Вас есть несколько точек доступа к данным в таблице. В ERwin атрибут(ы) первичного ключа автоматически индексируются. Кроме этого, индексируются альтернативные ключи и Inversion Entry. Альтернативным ключом называется атрибут или группа атрибутов, уникальным образом определяющие экземпляр сущности. Если у сущности есть несколько атрибутов, уникальным образом определяющих каждый экземпляр, то Вы можете назначить любой из этих атрибутов, за исключением атрибутов первичного ключа, альтернативным ключом, и ERwin создаст дополнительные индексы.
ERwin создает уникальный индекс для каждого альтернативного ключа. Информация об альтернативных ключах вводится в редакторе Entity-Attribute. См. Гл.3, Сущности и атрибуты в ERwin, разд. “Создание новых сущностей”.
Как назначить атрибут или группу атрибутов альтернативным ключом
1. Войдите в редактор Entity-Attribute.
2.Щелкните по концу атрибута, который находится в неключевом окне и который Вы хотите назначить альтернативным ключом или частью ключа.
3.Введите “(АК1)”, т.е. альтернативный ключ 1, после имени каждого атрибута, входящего в альтернативный ключ 1.
Например, если у Вас три атрибута вместе составляют альтернативный ключ, то каждый из них должен заканчиваться на “(АК1)”, и все три будут по очереди проиндексированы вместе.
4.Нажмите “ОК” для сохранения изменений.
У сущности может быть несколько альтернативных ключей. Они нумеруются последовательно - АК1, АК2, АК3 и т.д. Если атрибут - часть нескольких альтернативных ключей, отделите метки разных ключей, стоящие в скобках, запятыми (АК1, АК2).
Порядок создания альтернативных ключей
При генерации схемы индексы создаются в определенном порядке. Сначала создается индекс первичного ключа, затем индексы альтернативных ключей: АК1, АК2, АК3, затем индексы Inversion Entry: IE1, IE2, IE3 и т.д.
Как показать индикаторы альтернативных ключей на Вашей диаграмме
1. Дайте команду “Alternate Key” в меню Display.
Когда в меню рядом с “Alternate Key” cтоит метка, то на диаграмме показываются (Акn). Если же метка не стоит, соглашения об альтернативных ключах не будут показаны.
Установите курсор в любое место диаграммы, где нет объектов, и нажмите правую кнопку мыши. Появится pop-up меню. Дайте команду “Alternate Key” и отпустите кнопку мыши.
Использование имен ролей атрибутов
Когда атрибут первичного ключа мигрирует из родительской сущности в дочернюю, то там он становится атрибутом внешнего ключа. Поскольку у внешнего ключа может быть иная роль, отличающаяся от роли связанного с ним первичного ключа, то ERwin разрешает Вам связать с внешним ключом имя роли. Имя роли - это алиас, присваиваемый атрибуту внешнего ключа.
Например, в диаграмме Video Store первичный ключ сущности MOVIE - movie-numbER, уникальным образом определяет название каждого фильма таким образом, что даже если есть два фильма с одинаковыми названиями, каждый из них может быть идентифицирован как отдельный фильм. Когда атрибут movie-numbER мигрирует из сущности MOVIE в сущность MOVIE-COPY и становится в ней внешним ключом, то ему присваивается имя роли mastER-numbER, которое поясняет, что этот атрибут обозначает конкретную строку в master-таблице MOVIE, а не
1
Глава 8

в 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 показывает на экране и базовое имя и имя роли (см. рис.).
Как показать на экране или убрать имя роли с присоединенным базовым именем
1. Дайте команду “Rolename/Attribute” в меню Display для того, чтобы изменить режим показа имени роли (включить или выключить).
Если режим “Rolename/Attribute” включен, то ERwin показывает на экране атрибуты с именами ролей в формате имя роли.базовое имя.
Если этот режим выключен, то ERwin показывает на экране атрибуты с именами ролей в формате имя роли.
Присваивание имени роли
Редакторы Relationship и Subtype Relationship позволяют Вам присвоить имя роли атрибуту внешнего ключа. Вы присваиваете имя роли внешнему ключу. Оно описывает его роль в данной сущности и помогает отличить его от другого атрибута с таким же именем.
Для входа в редактор Relationship или Subtype Relationship щелкните правой кнопкой мыши по линии связи, присоединенной к сущности, содержащей атрибут, которому Вы хотите присвоить имя роли. После этого дайте команду “Relationship” меню Editor. Вы войдете в редактор, соответствующий типу выбранной Вами связи. Этот метод используется для присваивания имени роли независимо от того, какой тип редактора будет активизирован. Когда ERwin откроет редактор, выберите внешний ключ из списка “Foreign Key”. После этого введите имя роли в текстовое окно “Role Name”. Старайтесь использовать имя роли, оисывающее роль атрибута в сущности. Например, имя роли renting-customER (см.рис.) четко обозначает роль конкретного клиента в сущности MOVIE- RENTAL-RECORD.
См. Гл.4, Связи в ERwin и соответствующие редакторы, разд. “Работа в редакторе Relationship”, а также гл.9,
Связи: возможности повышенного уровня сложности, разд. “Создание связи подтипов”.
ПРИМЕЧАНИЕ: Атрибут внешнего ключа наследует несколько характеристик от первичного ключа, включая базовое имя. См. Гл.9, Связи: возможности повышенного уровня сложности, разд. “Задание режимов наследования”.
Как присвоить атрибуту имя роли
1. Выберите связь, соединенную с тем атрибутом, которому нужно присвоить имя роли. Установите курсор на линию связи и нажмите правую ккнопку мыши. Откроется pop-up меню Editor.
2.Дайте команду “Relationship” меню Editor. Вы войдете в редактор Relationship или Subtype Relationship.
3.В списке “Foreign Key” щелкните по тому атрибуту, которому Вы хотите присвоить имя роли.
4.Введите имя роли для выбранного атрибута в окно “Role Name”. ERwin автоматически ставит точку после имени роли, перед базовым именем. Вы увидите запись формата имя роли.базовое имя, когда вернетесь в редактор после того, как присвоите имя роли или когда дадите команду меню Display “Rolename/Attribute”.
5.Нажмите кнопку “ОК” для сохранения нового имени роли и выхода в диаграмму. Вы также можете нажать “Cancel” для выхода из редактора без сохранения имени роли.
Как изменить имя роли
1. Выберите связь, соединенную с тем атрибутом, которому нужно присвоить имя роли. Установите курсор на линию связи и нажмите правую ккнопку мыши. Откроется pop-up меню Editor.
2.Дайте команду “Relationship” меню Editor. Вы войдете в редактор Relationship или Subtype Relationship.
3.В списке “Foreign Key” щелкните по тому атрибуту, которому Вы хотите присвоить имя роли.
2
Глава 8

4.Отредактируйте имя роли для выбранного атрибута в окне “Role Name”.
5.Нажмите кнопку “ОК” для сохранения нового имени роли и выхода в диаграмму. Вы также можете нажать “Cancel” для выхода из редактора без сохранения имени роли.
Как удалить имя роли
1. Выберите связь, соединенную с тем атрибутом, у которого нужно удалить имя роли. Установите курсор на линию связи и нажмите правую ккнопку мыши. Откроется pop-up меню Editor.
2.Дайте команду “Relationship” меню Editor. Вы войдете в редактор Relationship или Subtype Relationship.
3.В списке “Foreign Key” щелкните по тому атрибуту, у которого Вы хотите удалить имя роли.
4.Выделите (подсветите) имя роли для выбранного атрибута в окне “Role Name”.
5.Нажмите клавишу DELETE.
6.Нажмите кнопку “ОК” для сохранения нового имени роли и выхода в диаграмму. Вы также можете нажать “Cancel” для выхода из редактора без сохранения имени роли.
ПРИМЕЧАНИЕ: В предыдущих версиях ERwin Вы могли присваивать имена ролей собственным атрибутам, так же как и внешним ключам. Если Вы в предыдущей версии ERwin (более ранней, чем 2.0) присвоили имя роли атрибуту, который не является внешним ключом, это имя роли не появится в редакторе Relationship, и следовательно Вы не сможете его изменить или удалить так, как описано выше. Если Вы хотите удалить имя роли, присвоенное собственному атрибуту в ранней версии ERwin, Вам придется удалить атрибут и создать его заново с новым именем.
Понятие унификации
Зависимая сущность может унаследовать один и тот же внешний ключ из нескольких родительских сущностей, а также сущность может унаследовать один и тот же внешний ключ несколько раз от одного и того же родителя через несколько разных связей. Когда ERwin обнаруживает одно из этих событий, то он распознает, что два атрибута одинаковы, и предполагает, что Вы хотите видеть атрибут в зависимой сущности только один раз. Хотя в редакторе ЕА эта сущность показана с обоими атрибутами, на диаграмме атрибут показывается только один раз. Это комбинирование, или объединение идентичных атрибутов называется унификацией.
Унификацией называется слияние двух или более атрибутов внешнего ключа в один атрибут внешнего ключа на основе предположения, что значения исходных атрибутов внешнего ключа, вероятно, идентичны. Эта унификация производится, поскольку правила нормализации запрещают существование в одной сущности двух атрибутов с одинаковыми именами. В некоторых случаях (один из них показан в примере) это и есть желаемый результат.
В этом простом примере EMPLOYEE/SPOUSE EMPLOYEE, первичный ключ которого - employee-numbER, связан со SPOUSE и CHILD идентифицирующими связями. Миграция ключа приводит к тому, что ключ employee-numbER мигрирует в обе зависимые сущности. Сущность SPOUSE имеет также неидентифицирующую связь с сущностью
CHILD. См. Гл. 9, Связи: возможности повышенного уровня сложности, разд. “Задание неидентифицирующих связей”, а также руководство по методам ERwin Methods Guide.
Исходя из правил миграции ключей в результате неидентифицирующих связей, принятых в ERwin, мы ожидаем, что атрибуты первичных ключей обоих сущностей - EMPLOYEE и SPOUSE - появятся под чертой в сущности CHILD. Однако в первичном ключе обоих сущностей присутствует employee-numbER. ERwin распознает, что значение employee-numbER одно и то же, независимо от того, переходит ли оно непосредственно от EMPLOYEE или непрямым образом через SPOUSE. Поэтому ERwin производит унификацию employee-numbER и помещает атрибут только по одному разу в каждую сущность CHILD.
Есть и другие случаи, когда унификация нежелательна. Например, когда два атрибута имеют одинаковые имена, но на самом деле они немного отличаются и Вы хотите, чтобы это отличие отражалось в диаграмме. Имена ролей используются для сохранения отличий между двумя разными атрибутами, имеющими одинаковые имена. См. выше в этой главе “Использование имен ролей атрибутов”.
Более подробная информация об унификации содержится в ERwin Methods Guide.
Назначение Inversion Entries
На основе атрибутов, назначенных альтернативными ключами, строятся индексы, дополняющие индексы, основанные на первичном ключе. Вы можете назначать также и атрибуты, которые будут участвовать в неуникальных индексах. Атрибуты, участвующие в неуникальных индексах, называются Inversion Entries. InvERsion Entry - это атрибут, который не определяет экземпляр сущности уникальным образом, но часто используется для обращения к экземплярам сущности. ERwin генерирует неуникальный индекс для каждого Inversion Entry.
Как задать Inversion Entry в ERwin
1. Войдите в редактор ЕА для той сущности, для которой Вы хотите создать Inversion Entry.
2.Добавьте к имени атрибута (атрибутов), которые будут составлять Inversion Entry под номером n, “(Ien)”. Например, если у Вас есть два атрибута, которые вместе составляют Inversion Entry, то каждый из них должен заканчиваться на “(IE1)”. Оба атрибута будут по очереди проиндексированы вместе как неуникальный индекс.
3.Нажмите “ОК” для выхода с сохранением всех изменений.
У сущности может быть несколько разных Inversion Entry. Они будут нумероваться: IE1, IE2, IE3 и т.д. Если атрибут входит более чем в одно Inversion Entry, отделите их номера в скобках запятыми друг от друга: (IE1, IE2).
3
Глава 8

Как показать индикаторы Inversion Entry на Вашей диаграмме
Один и тот же режим демонстрации изображения контролирует изображение на диаграмме альтернативных ключей и Inversion Entries.
1. Дайте команду “Alternate Key” в меню Display.
Когда в меню рядом с “Alternate Key” cтоит метка, то на диаграмме показываются (IEn). Если же метка не стоит, соглашения об Inversion Entry не будут показаны.
Установите курсор в любое место диаграммы, где нет объектов, и нажмите правую кнопку мыши. Появится pop-up меню. Дайте команду “Alternate Key” и отпустите кнопку мыши.
Порядок создания Inversion Entry
При генерации схемы индексы создаются в определенном порядке. Сначала создается индекс первичного ключа, затем индексы альтернативных ключей: АК1, АК2, АК3, затем индексы Inversion Entry: IE1, IE2, IE3 и т.д.
Назначение атрибута одновременно альтернативным ключом и Inversion Entry
Вероятно, что некоторые атрибуты сущности будут включены и в альтернативные ключи, и в Inversion Entry. В таком случае оба типа индикаторов будут стоять в одних скобках (например: “(АК1, IE1)”, что означает: этот атрибут участвует в альтернативном ключе №1 и в Inversion Entry №1).
Использование редакторов SML Note
Что такое SML?
SML (Structured Modeling Language - язык структурного моделирования) - текстовый язык для определения моделей “сущность-связь”. Он определяет модели в ERwin подобно тому, как SQL DDL (язык определения данных SQL - языка структурных запросов) определяет базы данных.
SML бывает полезно использовать в моделях, которые можно хранить и перносить в другие средства, которые поддерживают этот формат. ERwin поддерживает как импорт, так и экспорт файлов формата SML. См. Гл.19,
Имопрт и экспорт без использования SQL, разд. “Использование формата SML”.
ERwin поддерживает ввод информации, ориентированной на SML, в редакторах SML Note для сущностей, атрибутов и связей.
Как войти в редакторы SML Note
1. Дайте команду меню Option “Preference...”.
2.Щелкните по окну “Show SML” и нажмите “ОК”.
3.Войдите в меню Report. Вы увидите в нем четыре дополнительных раздела, связанных с SML.
•Команда “SML Report...” служит для экспорта файлов моделей в формате SML.
•Команды “SML Entity Note...”, “SML Attribute Note”, “SML Relationship Note...” работают идентичным образом.
Вход в SML Notes
Редакторы SML Entity Note и SML Attribute Note (а также SML Relationship Note) работают идентичным образом.
Как войти в редакторы SML
1. Дайте команду: “SML Entity”, “Attribute” или “Report Note...” в меню Report.
Единственное отличие редакторов - в том, что Вы можете выбирать и присваивать notes только тому типу объектов, который поддерживается редактором: сущностям, атрибутам или связям. Редактор SML Attribute Note требует, чтобы у Вас была выбрана сущность, для того чтобы можно было из нее выбирать атрибуты. Редакторы Entity и Relationship предоставляют доступ ко всем объектам модели, относящимся к типу редактора.
Иллюстрации показывают, чем отличаются редакторы SML Note.
Как создать новые SML Notes
1. Находясь в любом из трех редакторов, нажмите кнопку “New” для того, чтобы открыть новый note. окне All Notes: появится число - идентификатор note. Число будет выделено цветом, чтобы показать, что текст, который будет вводиться в окно ввода Note, относится к этому note.
2.Введите в окно Note тот текст, который Вы хотите поместить в модель.
ML Notes совместно используются всеми тремя редакторами. Note, введенные в любом из трех редакторов, можно прочитать из всех редакторов. Все окна выбора можно просматривать, прокручивая их, если информация не помещается в область окна. Кроме того, размер окна ввода текста Note можно менять, а само окно можно переносить на любое удобное место.
•Пользуйтесь кнопками “Attach” и “Detach” для связывания note с объектами и для уничтожения имеющейся связи.
• |
Пользуйтесь кнопкой “Delete” для удаления note из ERwin. |
|
• |
Пользуйтесь кнопкой “Exit” для выхода из |
редактора SML без сохранения изменений. |
Как связывать SML Notes с объектами ERwin и уничтожать связи
1. Выберите сущность, атрибут или связь, пользуясь для этого окном выбора Entity, Entity-Attribute или
Relationship.
4
Глава 8

2.Для того, чтобы связать note с объектом, выберите note из списка All Notes: и нажмите кнопку “Attach”. ERwin изменяет колонку Attached Notes: таким образом, что в ней будет отражена новая связь note с объектом.
Для того, чтобы уничтожить связь, выберите note из списка Attached Notes: и нажмите на кнопку
“Detach”. ERwin удалит номер note из списка Attached Notes.
ERwin позволяет Вам связывать notes с любыми сущностями, связями и атрибутами, которые есть в списках в редакторах SML Note. Вы можете также связать несколько разных notes с одним объектом.
Как удалить SML Note
1. Выберите удаляемую SML Note из списка All Notes:. 2. Нажмите кнопку “Delete” для того, чтобы удалить note.
Как выйти из редактора SML
Нажмите кнопку “Exit”.
Краткое повторение главы 8
Как назначать альтернативные ключи сущности
Войдите в редактор ЕА для сущности и введите (АКn) после каждого атрибута, который входит в альтернативный ключ n. Если атрибут входит в несколько альтернативных ключей, то отделите их индикаторы друг от друга запятыми: (АК1, АК3). Контролируйте изображение на диаграмме индикатора ключа при помощи команды меню “Alternate Key” меню Display.
Как назначать InvERsion Entries для сущности
Войдите в редактор ЕА для сущности и введите (IEn) после каждого атрибута, который входит в Inversion Entry n. Если атрибут входит в несколько Inversion Entry, то выполняйте то же правило, как для альтернативных ключей. Контролируйте изображение на диаграмме индикатора Inversion Entry при помощи команды меню “Alternate Key” меню Display.
Как присвоить имя роли атрибуту внешнего ключа
Щелкните правой кнопкой мыши по линии связи или связи подтипов, соединенной с той сущностью, внешнему ключу которой Вы хотите присвоить имя роли. Дайте команду “Relationship” в меню Editor. Выберите атрибут из списка в окне “Foreign Key”. Введите имя роли в окно “Role Name”. Нажмите кнопку “ОК” для того, чтобы сохранить имя роли и вернуться в диаграмму. Поставьте метку рядом с названием режима “Rolename/Attribute” в меню Display для того, чтобы имя роли появилось на диаграмме.
Как изменить или удалить имя роли для атрибута внешнего ключа
Щелкните правой кнопкой мыши по линии связи или связи подтипов, соединенной с той сущностью, атрибут внешнего ключа которой Вы хотите удалить или изменить. Дайте команду “Relationship” в меню Editor. Выберите атрибут из списка в окне “Foreign Key”. Измените или удалите имя роли в окне “Role Name”. Нажмите кнопку “ОК” для того, чтобы сохранить имя роли и вернуться в диаграмму.
Как унифицировать (объединить) два атрибута с одинаковыми именами, которые мигрировали в сущность
Ничего не делайте. ERwin автоматически произведет унификацию, когда обнаружит два атрибута с одинаковыми именами, появившиеся в сущности вследствие миграции ключей.
Как войти в редакторы SML Notes
Убедитесь, что режим “Show SML” включен (в окне-диалоге Option Preferences), затем выберите редактор SML Note из меню Report.
5
Глава 8

Глава 9 Связи: Возможности Повышенного Уровня Сложности
Содержание главы
Впредыдущих главах рассматривался наиболее часто встречающийся тип связей - идентифицирующие связи - и было показано, как ERwin производит миграцию ключей через эти связи.
Вэтой главе Вы узнаете, как:
•Создавать и использовать неидентифицирующие, рекурсивные связи и связи подтипов.
•Производить автоматическую миграцию ключевых атрибутов из одной сущности в другую.
•Предотвращать появление одинаковых имен атрибутов.
•Задавать режимы наследования атрибутов.
•Задавать порядок обработки нулевых значений в дочерней сущности связи.
•Исключать связи “многие-ко-многим”.
Управление внешними ключами
При создании диаграммы, хотя Вам, может быть, и хочется добавить ключевые атрибуты в сущность, когда Вы ее создаете, ERwin может сделать большую часть этой работы за Вас, если Вы ему позволите. Когда Вы создаете связь между двумя сущностями, ERwin автоматически производит миграцию ключевых атрибутов родительской сущности в дочернюю сущность, где они становятся внешними ключами. Поскольку ERwin поддерживает автоматическую миграцию ключей, мы рекомендуем Вам добавлять первичные ключи в независимую сущность сразу же, как только она создана, но не беспокойтесь о ключах для дочерних сущностей. После того, как Вы создадите связь и ERwin произведет автоматическую миграцию внешних ключей, вернитесь и добавьте собственные ключи в дочерние сущности диаграммы.
Чтобы облегчить проектирование базы данных, ERwin позволяет задать режим Unique Key, который можно использовать для того, чтобы предупредить Вас о создании атрибута, который может автоматически мигрировать через связь, или запретить Вам создание таких атрибутов. Кроме того, если Вы удаляете связь, ERwin автоматически удаляет соответствующие внешние ключи из дочерних сущностей. См. Гл.11, Документирование правил, разд. “Обеспечение уникальности имен сущностей и атрибутов”.
Как создать внешние ключи
1. Нарисуйте связь между двумя сущностями или между сущностью и ею же самой (рекурсивная связь). Внешний ключ автоматически мигрирует. Вам не нужно ничего делать!
ПРИМЕЧАНИЕ: Чтобы видеть автоматическую миграцию внешних ключей, нужно установить режим просмотра диаграммы Attribute Display. У Вас должны быть уже созданы атрибуты первичного ключа в родительской сущности.
Как посмотреть атрибуты внешнего ключа
1. Щелкните правой кнопкой мыши по соединительной линии связи - Вы войдете в меню Relationship. 2. Дайте команду “Relationship” для входа в редактор Relationship.
Задание режимов наследования атрибутов
Когда ERwin производит миграцию атрибута первичного ключа, то по умолчанию внешний ключ, который появляется в дочерней сущности, наследует имя, но не наследует определение атрибута первичного ключа. Если Вы хотите, чтобы определение атрибута первичного ключа тоже мигрировало в дочернюю сущность, Вам нужно изменить режимы наследования - Attribute Inheritance Option - которые ERwin устанавливает по умолчанию. Для того, чтобы изменить режим наследования по отношению к мигрирующим ключам, дайте команду “Attribute Inheritance...” в меню Option. Вы войдете в окно-диалог Attribute Inheritance Option.
В этом диалоге можно установить три режима. По умолчанию установлен режим “No Inheritance”, а Вы можете изменить его на “Full Inheritance” или “Restricted Inheritance”, нажимая соответствующую кнопку, а затем - “ОК” для сохранения нового режима.
Как задать режим наследования атрибута
1. Дайте команду “Attribute Inheritance...” из меню Option.
2.Нажмите на одну из кнопок в окне “Inheritance of Primary Key Definitions” для того, чтобы задать нужный Вам режим наследования атрибута:
“Full Inheritance” - определения атрибутов первичного ключа мигрируют во внешний ключ для всех новых и уже созданных связей текущей диаграммы.
“Restricted Inheritance” - определения атрибутов первичного ключа мигрируют во внешний ключ для всех новых cвязей, но это не распространяется на уже созданные связи текущей диаграммы.
“No Inheritance” - миграция определений атрибутов запрещается для всех связей текущей диаграммы. Это тот режим, который установлен по умолчанию.
3.Нажмите “ОК”, чтобы сохранить Ваши установки и вернуться в окно диаграммы.
|
|
|
|
Глава 9 |
1 |
||
|
|
|

Задание неидентифицирующих связей
Идентифицирующей связью называется связь, которая добавляет признаки идентичности в дочернюю сущность путем миграции ключей родительской сущности в область ключевых атрибутов дочерней и таким образом делая дочернюю сущность зависимой от родительской в смысле своей идентичности. Например, когда атрибут movienumbER мигрирует из сущности MOVIE в MOVIE-COPY на диаграмме MOVIES.ER1, токаждый экземпляр MOVIECOPY зависит и от movie-numbER, и от movie-copy-numbER, которые уникальным образом его определяют (ни один из этих двух атрибутов не может сам по себе уникальным образом определить конкретную копию фильма). Можно задать также и такую связь, которая не ставит дочернюю сущность в зависимость от родительской. Этот тип связи называется неидентифицирующей связью. В ERwin такая связь обозначается пунктирной линией с жирной точкой на конце, соответствующем дочерней связи. При неидентифицирующей связи атрибуты первичного ключа родиетльской сущности мигрируют в область данных (неключевая область) , которяа расположена под чертой в дочерней сущности. Если атрибуты, которые мигрировали в неключевую область дочерней сущности, не нужны в этой сущности, то связь называется необязательной неидентифицирующей связью, что подразумевает, что мигрировавшие атрибуты не нужны дочерней сущности для ее идентификации и что она может существовать и без этих атрибутов. В ERwin необязательная неидентифицирующая связь обозначается пунктирной линией с жирной точкой на одном конце (дочернем) и ромбиком на другом (родительском).
На рисунке ниже показано, как изображаются в ERwin идентифицирующие, неидентифицирующие и необязательные неидентифицирующие связи, и обобщаются различия между этими связями.
Если связь уже создана на диаграмме, то Вы можете изменить ее тип в редакторе Relationship.
Как изменить тип связи
1. Выберите ту связь, которую Вы хотите изменить. Установите курсор на линию связи и щелкните правой кнопкой мыши для входа в pop-up меню Editor.
2.Дайте команду “Relationship” в меню Editor для входа в редактор Relationship.
3.Нажмите нужную кнопку в окне Relationship Type (Identifying - идентифицирующая, Non-Identifying -
неидентифицирующая).
4.Нажмите “ОК” для того, чтобы зафиксировать изменения. ERwin изменяет линию связи на диаграмме в соответствии с новым типом.
ПРИМЕЧАНИЕ: Рекурсивной связи в ERwin автоматически присваивается тип Non-Identifiyng. Изменить его нельзя.
Разрешить или не разрешить нулевые значения?
Когда Вы рисуете неидентифицирующую связь, Вам нужно решить, могут ли атрибуты внешнего ключа, наследуемые от родителя, принимать значение NULL или нет. По умолчанию для неидентифицирующей связи задается режим “Nulls Allowed”, что означает, что дочерняя сущность может существовать без родительской, и связь называется необязательной. “No Nulls” означает, что существование дочерней сущности зависит от родительской, и связь называется обязательной. В случае необязательной связи (Nulls Allowed) на родительском конце неидентифицирующей связи ERwin ставит знак - ромбик.
Одно из основных различий между идентифицирующей и неидентифицирующей связью - в том, что только те внешние ключи, которые мигрируют через неидентифицирующую связь, могут принимать значения NULL. См. руководство по методам ERwin Methods Guide, Гл.3, “Обзор языка”, разд. “Идентифицирующие и неидентифицирующие связи”.
ПРИМЕЧАНИЕ: По умолчанию для неидентифицирующей связи установлен режим “Nulls Allowed”, т.е. значения NULL для внешних ключей дочерней сущности разрешаются. Если требуется ненулевой внешний ключ и тип связи - неидентифицирующая, то нужно изменить режим на No Nulls.
Как изменить режим нулевых значений для связи
1. Выберите ту связь, которую Вы хотите изменить. Установите курсор на линию связи и щелкните правой кнопкой мыши для входа в pop-up меню Editor.
2.Дайте команду “Relationship” в меню Editor для входа в редактор Relationship.
3.Нажмите нужную кнопку в окне Nulls.
4.Нажмите “ОК” для того, чтобы зафиксировать изменения. ERwin изменяет линию связи на диаграмме в соответствии с новым типом.
Исключение связей “многие-ко-многим”
Инструмент “неопределенная связь” позволяет Вам создавать связи “многие-ко-многим” между двумя сущностями. Отношение “многие-ко-многим” означает, что каждый экземпляр первой сущности может быть связан с несколькими экземплярами второй сущности и наоборот. В примере “Video Store” можно создать связь”многие-ко- многим” между сущностями CUSTOMER и MOVIE, что означает, что каждый клиент может взять напрокат много фильмов и каждый фильм можно дать напрокат многим коиентам. Однако, заметьте, что если бы эта связь “многие-ко-многим” была единственной связью между клиентами и фильмами, то было бы очень трудно отслеживать выдачу фильмов клиентам. Как проследить, какие фильмы брал напрокат какой-то конкретный клиент? Предположите, что у Вас есть две копии фильма и обе даны напрокат двум разным клиентам. Где Вы запишете, какую копию взял каждый из клиентов? Как видите, при использовании связей “многие-ко-многим” многие проблемы проектирования базы данных остаются неразрешенными.
2 |
Глава 9 |
|

ПРИМЕЧАНИЕ: Для того, чтобы лучше проиллюстрировать понятия, связанные с созданиями связей, в этом и последующих примерах используются глагольные фразы, содержащие имена обоих сущностей - как родительской, так и дочерней. Когда Вы будете составлять настоящую диаграмму, старайтесь использовать краткие глагольные фразы при описании связей.
Для того, чтобы избежать конфликтов, создаваемых связями “многие-ко-многим”, проектировщики баз данных часто добавляют в модель данных промежуточные сущности, например MOVIE-COPY и MOVIE-RENTAL-RECORD, которые служат “посредниками” между двумя сущностями, между которыми имеется неопределенная связь. Добавляя промежуточную сущность между двумя сущностями, состоящими в связи “многие-ко-многим”, Вы можете превратить связь в последовательность связей “один-ко-многим” и использовать эти связи для того, чтобы яснее выразить, как работает модель данных.
Например, добавление к модели данных сущности MOVIE-COPY и задание связи “один-ко-многим” между MOVIE и MOVIE-COPY позволяет Вам прослеживать множество копий одного и того же фильма. Аналогично, добавление сущности MOVIE-RENTAL-RECORD и задание связи “многие-ко-многим” между CUSTOMER и MOVIE-RENTAL- RECORD позволяет Вам прослеживать множество случаев аренды фильма одним и тем же клиентом.
Для того, чтобы улучшить проект базы данных, ищите способы, как избавиться от связей “многие-ко-многим”, которыми Вы пользовались на более ранних стадиях процесса проектирования, и заменяйте их промежуточными сущностями-”посредниками”, между которыми существуют связи “один-ко-многим”.
Задание рекурсивных связей
Рекурсивная связь - такая связь, при которой одна и та же сущность является и родительской, и дочерней. Такая ситуация часто встречается в “реальном мире”. Люди - родители людей. Руководители управляют руководителями. Компании приобретают компании. Существует два типа рекурсии, оба распространены и оба отражены в ERwin. Первый тип называется “иерархической рекурсией” (другое название - однотабличная рекурсия или “петля”), и задает иерархию связей между родительской и дочерней сущностью, при которой родитель может породить любой количество дочерних сущностей, но дочерняя сущность может иметь только одного родителя. Второй тип - сетевая рекурсия (другое название - двухтабличная рекурсия), она задает “сеть” или “паутину” отношений между родительскими и дочерними сущностями, когда родитель может иметь любое количество дочерних сущностей и дочерняя сущность может иметь любое количество родителей. В обоих случаях все связи представляют собой пары первичных ключей в одной и той же таблице, но каждый из двух случаев имеет свое собственное значение.
Сетевая рекурсия - это такая ситуация, когда сущность находится сама с собой в связи “многие-ко-многим”. Например, поскольку компания может одновременно быть владельцем и дочерней компанией по отношению к нескольким другим компаниям, то может существовать связь “многие-ко-многим” между сущностью COMPANY и этой же сущностью. Когда возникает проблема рекурсии “многие-ко-многим”, то есть сетевой рекурсии, Вы можете прояснить ситуацию, создав промежуточную сущность и превращая связь “многие-ко-многим” в две связи “один-ко- многим”, что описывается ниже.
В диаграмме ERwin рекурсивная связь, описывающая тот факт, что одна компания может владеть другой, показан на обеих конструкциях, одна из которых представляет отношения единоличного владения (один родитель), а другая - конгломерат (множество родителей). В обоих случаях необходимо присвоить имена ролей мигрировавшим внешним ключам для того, чтобы передать значение рекурсивной связи.
Рекурсивные связи должны быть неидентифицирующими. Почему? Легче будет ответить, по какой причине им не имеет смысла быть идентифицирующими. В идентифицирующей связи первичный ключ родительской сущности становится подмножеством первичного ключа дочерней, и ключевые атрибуты никогда не могут принимать значение NULL. Подумав об этом и нарисовав простую таблицу экземпляров на основе примера из “реального мира”, Вы сможете убедить себя, что идентифицирующая связь не имела бы смысла, потому что она бы утверждала, что некоторая сущность является своим собственным родителем. Мигрирующий ключ мигрировал бы бесконечное число раз.
ERwin позволяет рисовать только неидентифицирующие рекурсивные связи.
В соответствии с правилами методологии IDEF1X, которую поддерживает ERwin, рекурсивные неидентифицирующие связи могут быть как обязательными (No Nulls), так и необязательными (Nulls Allowed). Однако на практике не принято устанавливать для рекурсивной связи “NoNulls”. (Подумайте о проблеме, возникающей при задании значения для начального (базового) элемента цепочки, если его нельзя установить в NULL). Рекурсивные связи, у которых отсутствует ромбик “Nulls Allowed”, должны быть подвергнуты тщательному анализу.
Как нарисовать однотабличную рекурсивную связь
1. Щелкните по инструменту “Независимая сущность”, а затем - по любому месту окна диаграммы, для того, чтобы поместить сущность на диаграмму. Это будет родительская сущность.
2.Войдите в редактор Entity-Attribute и присвойте имя родительской сущности, добавьте атрибуты первичного ключа и неключевые атрибуты.
3.Щелкните по инструменту “Неидентифицирующая связь”. Затем щелкните по родительской сущности и сделайте паузу, чтобы ERwin не подумал, что Вы вызываете редактор. Щелкните второй раз по этой же сущности, для задания рекурсивной связи.
|
|
|
|
Глава 9 |
3 |
||
|
|
|

4.Щелкните по инструменту “указатель”, а затем дважды щелкните по соединительной линии связи для входа в редактор Relationship.
5.Введите глагольную фразу, описывающую рекурсивную связь, и присвойте “говорящее” имя роли атрибуту (атрибутам) мигрировавшего внешнего ключа.
Например, если Вы задаете рекурсивную связь между COMPANY и COMPANY для того, чтобы показать, какие компании управляют другими компаниями, то глагольная фраза должна выглядеть: COMPANY manages
COMPANY, а имя роли для мигрировавшего атрибута company-id - managing-company.company-id.
6. Нажмите “ОК” для выхода из редактора и возвращения в диаграмму.
См. Гл.8, Сущности и атрибуты: возможности повышенного уровня сложности, разд. “Использование имен ролей атрибутов”.
Как нарисовать двухтабличную рекурсивную связь
1. Щелкните по инструменту “Независимая сущность”, а затем - по любому месту окна диаграммы, для того, чтобы поместить сущность на диаграмму. Это будет родительская сущность.
2.Войдите в редактор Entity-Attribute и присвойте имя родительской сущности, добавьте атрибуты первичного ключа и неключевые атрибуты. Например, можно присвоить родительской сущности имя
MANAGING COMPANY.
3.Щелкните по инструменту “Зависимая сущность”. Затем щелкните по любому месту диаграммы, для того чтобы поместить дочернюю сущность рядом с родительской, созданной в п.1.
4.Войдите в редактор Entity-Attribute и присвойте имя дочерней сущности. Это имя должно отличать ее от родителя. Например, можно присвоить родительской сущности имя OWNED COMPANY.
5.Щелкните по инструменту “Неидентифицирующая связь”. Затем щелкните по родительской сущности, а затем - по дочерней для задания связи.
ERwin производит миграцию первичных ключей родительской сущности во внешние ключи дочерней.
6.Щелкните по инструменту “указатель”, а затем дважды щелкните по соединительной линии связи для входа в редактор Relationship.
7.Введите глагольную фразу, описывающую рекурсивную связь, и присвойте “говорящее” имя роли атрибуту (атрибутам) мигрировавшего внешнего ключа.
Например, Вы можете задать глагольную фразу: MANAGING COMPANY manages OWNED COMPANY. Нажмите “ОК” для выхода из редактора и возвращения в диаграмму.
8.Повторите п. 4-7 для создания второй рекурсивной связи. Затем присвойте “говорящую” глагольную фразу этой связи и подходящее имя роли - атрибуту (атрибутам) мигрировавшего внешнего ключа, для того, чтобы отличить этот мигрировавший ключ от того, с которым Вы работали в п.7.
Например, если Вы создали рекурсивную связь между MANAGING COMPANY и OWNED COMPANY, как в п.2, то глагольная фраза для первой связи может быть MANAGING COMPANY manages OWNED COMPANY. Имя роли для мигрировавшего атрибута company-id может быть managing-company.company-id. Глагольная фраза для второй связи может быть OWNED COMPANY is managed by MANAGING COMPANY. Имя роли для мигрировавшего атрибута второго ключа может быть subsidiary-company.company-id.
ПРИМЕЧАНИЕ: Если вы создадите рекурсивную связь “многие-ко-многим” (где одна и та же сущность является и родительской и дочерней), то любое значение, связанное с этой связью, например - тип связи, глагольная фраза, кардинальность и т.д., может оказаться пустым, когда Вы войдете в соотсетствующий редактор ERwin.
Использование сокращенного меню, ориентированного на связи
Если Вы щелкнете правой кнопкой мыши по линии связи, то ERwin выведет на экран pop-up версию меню Editor, которяа содержит только те команды меню, которые нужны для задания или изменения характеристик связи. Это сокращенное меню Relationship содержит команды доступа к редакторам Relationship, Referential Integrity, Relationship Definition, Relationship Template.
Когда Вы задаете один из режимов сокращенного меню, он остается активным до тех пор, пока Вы не зададите какой-то другой режим, ориентированный на связи. ERwin автоматически открывает редактор, связанный с активным режимом, когда Вы дважды щелкаете по линии связи.
ПРИМЕЧАНИЕ: Если Вы дважды щелкнете по соединительному звену связи подтипа, ближайшей к родительской сущности, то ERwin входит в редактор Subtype Relationship. Если Вы дважды щелкнете по соединительному звену связи подтипа, ближайшей к дочерней сущности, то ERwin входит в активный редактор.
Создание связей подтипов
Анализируя домен для Вашей базы данных, Вы, вероятно, обнаружите, что есть сущности, определяющие целую категорию предметов одного и того же типа. В ERwin Вы отображаете это на диаграмме, создавая и сущность, описывающую категорию, и каждый элемент категории, а затем соединяя их с помощью специальной связи, называемой Subtype Relationship Connector - coeдинитель связи подтипов. Родительская сущность категории называется надтипом, а дочерние - подтипами.
Рассмотрим, например, сущность EMPLOYEE (см.рис.). Служащие различаются между собой. Некоторые из них работают полный день, а другие - часть дня. Рабочие с полной и частичной занятостью могут иметь
4 |
Глава 9 |
|

различающиеся атрибуты, которые мы хотим хранить. Давайте примем как правило (business rule) для нашего Video Store, что у нас есть три типа служащих: с полной занятостью и на окладе, с полной занятостью и почасовой оплатой, с частичной занятостью и почасовой оплатой. У первых есть оклад, некоторое число дней отпуска, и номер пенсионного плана. У вторых - размер оплаты за час работы и за сверхурочные. У третьих - размер оплаты за час работы и количество часов в неделю (которое не изменяется).
Неполная связь подтипов
Вы, может быть, заметили, что в предыдущем примере список возможных типов служащих был неполным. Другими словами, список категории неполный, потому что могут быть и другие типы служащих. На языке ERwin это называется неполным подтипом, для создания которого используется инструмент Incomplete Subtype Relationship (связь c неполным подтипом).
Как создать множество сущностей неполного подтипа
1. Создайте родительскую и дочерние сущности. Для создания сущностей пользуйтесь инструментом “Независимая суущность”. ERwin автоматически изменит тип сущности на зависимый при создании связи подтипа.
2.Щелкните по инструменту “Incomplete Subtype Relationship”.
3.Щелкните по родительской сущности, затем - по одной из дочерних для начального задания подтипа.
4.Для того, чтобы связать родительскую сущность с другими дочерними, щелкните сначала по новому символу связи подтипа (на диаграмме), а затем - по каждой из дочерних сущностей, чтобы добавить каждую из них в качестве подтипа.
5.Когда Вы закончите подсоединение сущностей к связи подтипа, щелкните по пиктограмме инструмента “стрелка выбора” для того, чтобы продолжить работу с другими объектами диаграммы.
Полная связь подтипа
Когда все связи подтипа известны, можно пользоваться инструментом Complete Subtype Relationship. В приведенном ниже примере, у клиента может быть три типа банковских счетов: чековый счет, счет для сбережений и кредитный счет. В этой ситуации мы используем инструмент Complete Subtype Relationship - это говорит о том, что других типов счетов не бывает.
Как создать множество сущностей полного подтипа
1. Создайте родительскую и дочерние сущности. Для создания сущностей пользуйтесь инструментом “Независимая суущность”. ERwin автоматически изменит тип сущности на зависимый при создании связи подтипа.
2.Щелкните по инструменту “Сomplete Subtype Relationship”.
3.Щелкните по родительской сущности, затем - по одной из дочерних для начального задания подтипа.
4.Для того, чтобы связать родительскую сущность с другими дочерними, щелкните сначала по новому символу связи подтипа (на диаграмме), а затем - по каждой из дочерних сущностей, чтобы добавить каждую из них в качестве подтипа.
5.Когда Вы закончите подсоединение сущностей к связи подтипа, щелкните по пиктограмме инструмента “стрелка выбора” для того, чтобы продолжить работу с другими объектами диаграммы.
Присваивание имен связям подтипа
Как и любому другому объекту в ERwin, связи подтипа должно быть присвоено имя. В ERwin Вы можете присвоить связи как логическое имя, так и физическое. Логическое имя связи подтипа называется ее дискриминатором. Дискриминатор должен быть выбран из списка атрибутов сущности надтипа (родительской).
Как присвоить связи подтипа логическое имя
1. Дважды щелкните по символу связи подтипа для входа в редактор Subtype Relationship. Установите курсор на одну из линий связи подтипа и нажмите правую кнопку мыши для входа в сокращенное меню для связей подтипа. Дайте команду “Subtype Relationship” для входа в редактор.
2.Выберите нужный Вам атрибут из списка Discriminator Attribute Choices и нажмите “ОК”.
Выбранный атрибут станет именем связи подтипа. После того как Вы выбрали дискриминатор, он будет всегда демонстрироваться на диаграмме.
ПРИМЕЧАНИЕ: Если Вы не хотите присваивать имя связи подтипа, выберите пунктирную линию (--)
в последней строке списка Discriminator Attribute Choice в редакторе Subtype Relationship.
Как присвоить связи подтипа физическое имя
1. Дайте команду “Relationship Definition” в меню Editor и дважды щелкните по соединительным линиям подтипа для входа в редактор Relationship Definition.
ИЛИ Установите курсор на одну из соединительных линий связи подтипа и нажмите правую кнопку мыши для
входа в объектно-ориентированное сокращенное меню для связей подтипа. Дайте команду “Relationship Definition” для входа в редактор.
2.Введите физическое имя в текстовое окно “Relationship Physical Name” и нажмите “ОК”. Вы также можете нажать “Cancel” для выхода из редактора без сохранения изменений.
|
|
|
|
Глава 9 |
5 |
||
|
|
|

Как задать определение связи подтипа
1. Дайте команду “Relationship Definition” в меню Editor.
2.Дважды щелкните по любой из соединительных линий подтипа (под символом связи подтипа) для входа в редактор Relationship Definition.
3.Введите определение в текстовое окно “Relationship Definition”. В конце каждой строки нажимайте клавишу “Возврат каретки”.
4.Закончив ввод определения, нажмите “ОК”. Для выхода без сохранения изменений нажмите “Cancel”.
Как показать на диаграмме физические имена соединителей подтипа
1. Щелкните правой кнопкой мыши для входа в меню Display.
Установите курсор в любое место области фона диаграммы и нажмите правую кнопку мыши для входа
в сокращенное меню Display.
2.Дайте команду “Schema Display”, чтобы показать дополнительные команды меню.
3.С помощью мыши включите переключатель “Display Subtype Physical Relationship Name” для того, чтобы показать на диаграмме имена и определения всех соединителей подтипа.
ПРИМЕЧАНИЕ: Для того, чтобы Вы могли войти в каскадное меню “Schema Display”, должен быть установлен режим “Physical Schema Level” в меню Display.
Как присвоить имя роли атрибуту в связи подтипа
1. Дайте команду Relationship в меню Editor.
2.Дважды щелкните по ближайшему к дочерней сущности звену соединителю связи подтипа. ERwin
открывает редактор Subtype Relationship.
3.Выберите атрибут, которому нужно присвоить имя роли, из списка “Foreign Key”. Введите имя роли в текстовое окно “Role Name”.
4.Нажмите “ОК” для сохранения имени роли, выхода из редактора и возвращения в диаграмму. Для
выхода из диалога без сохранения имени роли нажмите “Cancel”.
См. Гл.8, Сущности и атрибуты: возможности повыышенного уровня сложности, разд. “Использование имен ролей”.
Краткое повторение главы 9
Как работать с внешними ключами
Вводите ключи только для независимых сущностей, до задания связей. ERwin автоматически произведет миграцию внешних ключей до того, как Вы введете собственные ключи зависимых сущностей.
Как установить режим наследования атрибутов
Дайте команду “Attribute Inheritance...” в меню Option. Нажмите одну из кнопок “Restricted Inheritance”, “Full Inheritance” или “No Inheritance” для задания режима наследования мигрирующих атрибутов. Нажмите “ОК” для того, чтобы сохранить заданный режим и вернуться в окно диаграммы.
Как создать неидентифицирующую связь
Щелкните по пиктограмме неидентифицирующей связи в Toolbox, а затем - по родительской и по дочерней сущностям связи.
Как задать для неидентифицирующей связи “No Nulls” и “Nulls Allowed”.
Войдите в редактор Relationship для связи и нажмите кнопки “Nulls Allowed” или “No Nulls”, в зависимости от Вашего желания. “Nulls Allowed” на диаграмме изображается ромбиком на родительском конце связи.
Как задать рекурсивную связь
Щелкните по пиктограмме неидентифицирующей связи в Toolbox, а затем - по сущности и после небольшой паузы - снова по этой же сущности.
Как пользоваться сокращенным меню, ориентированным на связь
Установите курсор на связь, редактор для которой Вы хотите открыть, и нажмите на правую кнопку мыши. Выберите один из редакторов связи из pop-up меню, которое появится в месте, где стоит курсор.
Как создать неполную связь подтипов
Щелкните по инструменту неполной связи подтипов в Toolbox, затем - по родительской сущности и затем - по одной из дочерних для того, чтобы инициировать связь подтипа. Для того чтобы сразу добавить дополнительные подтипы, щелкните по символу связи подтипа на диаграмме, а затем - по дочерней сущности, и так пока не будут связаны все.
Как создать полную связь подтипов
Щелкните по инструменту неполной связи подтипов в Toolbox, затем - по родительской сущности и затем - по одной из дочерних для того, чтобы инициировать связь подтипа. Для того чтобы сразу добавить дополнительные подтипы, щелкните по символу связи подтипа на диаграмме, а затем - по дочерней сущности, и так пока не будут связаны все.
6 |
Глава 9 |
|

Как присвоить логическое имя связи подтипа
Дважды щелкните по символу связи подтипа на диаграмме и выберите имя из списка дискриминаторов (имен связи подтипа) в редакторе Subtype Relationship.
Как присвоить физическое имя связи подтипа
Дайте команду “Relationship Definition” в меню Editor, затем дважды щелкните по соединительным линиям подтипа для входа в редактор; введите имя в текстовое окно “Relationship Physical Name” и нажмите “ОК”.
Как присвоить определение связи подтипа
Дайте команду “Relationship Definition” в меню Editor или с помощью правой кнопки мыши; введите определение в текстовое окно “Relationship Definition” и нажмите “ОК”.
|
|
|
|
Глава 9 |
7 |
||
|
|
|