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

         

Использование доменов в ERwin


В издательских программах Вы можете быстро присвоить абзацу набор характеристик для форматирования, присвоив ему именованный Style. В ERwin имеется аналогичная возможность, помогающая экономить время, - домен. Он позволяет Вам сохранить набор характеристик колонки вместе под одним именем.

Если Вы используете стандартную версию ERwin (ERwin/ERX), то домен может включать в себя одну или более характеристик колонки, ориентированных на СУБД, таких как тип данных, режим нулевых значений, значение по умолчанию и правило валидации. Если у Вас версия ERwin, ориентированная на конкретный инструмент разработки клиентских систем, типа ERwin/ERX for PowerBuilder или ERwin/ERX for SQLWindows, то домен модет также включать характеристики колонки, ориентированные на среду клиента, например форматы изображения и стили редактирования PowerBuilder.

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

Например, если Ваша модель данных содержит несколько разных атрибутов с номерами телефонов (например, home-phone, business-phone и т.д.), Вы можете создать домен под именем 'AREA CODE', в котором имя колонки будет определено как area_code, а тип и длина данных - как CHAR(3). Кроме того, Вы можете связать с доменом список допустимых AREA CODE в правиле валидации (201, 202, 203, 204, и т.д.), и присвоить местный код в качестве значения по умолчанию (609). Наконец, Вы можете задать формат изображения, при котором код местности заключается в апострофы. Когда Вы связываете домен 'AREA CODE' с колонкой Вашей базы данных, которая содержит информацию о телефонных кодах, она автоматически наследует весь набор характеристик колонки, который задан в домене.


Редактор Domain позволяет Вам задавать имя домена, родительский домен, имя колонки, тип данных, режим нулевых значений, значение по умолчанию, правило валидации и другие характеристики, которые можно скомбинировать и сохранить в домене. Режимы и возможности, доступные в редакторе Domain, различаются в зависимости от того, насколько выбранная СУБД поддерживает домены.



Как войти в редактор Domain



1. Дайте команду 'Domain...' в меню Server для входа в редактор Domain
ИЛИ

установите курсор на сущность и нажмите правую кнопку мыши для входа в pop-up меню Editor. Дайте команду меню 'Diagram-wide' для входа в каскадное меню и в нем дайте команду 'Domain' для входа в редактор Domain.



Работа в редакторе Domain



Редактор Domain подобен редактору Column Property, описанному ранее в этой главе, за тем исключением, что он позволяет Вам просматривать и изменять характеристики домена, а не колонки. У домена может быть одна или более характеристик из следующего списка: Имя колонки, Тип данных, Режим нулевых значений, Правило валидации. Значение по умолчанию и Родительский домен.

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

Чтобы создать домен, выберите домен в списке 'Domain Name' и выберите родительский домен в списке 'Inheritance Hierarchy'. Установите курсор в окно 'Name' и введите имя домена. По желанию можете ввести определение домена в текстовое окно 'Domain Definition'. После этого нажмите кнопку 'New' для создания домена.

Для изменения характеристик колонки, связанной с выделенным доменом, щелкните по нужным значениям в текстовом окне или нажмите нужные кнопки, а затем нажмите кнопку 'Update'.


Например, чтобы изменить режим нулевых значений, присвоенный домену '<default>', с 'NULL' на 'NOT NULL', нажмите кнопку 'NOT NULL' в групповом окне '<DB> Null Option' и нажмите кнопку 'Update'.

Для удаления домена выделите удаляемый домен в верхнем списке и нажмите кнопку 'Delete'.

Кнопки 'Default...' и 'Validation...' в редакторе Domain служат для входа в редакторы Default и Validation Rule, так что Вы можете перейти в определенный редактор, задать новую характеристику колонки, например значение по умолчанию, а затем вернуться в редактор Domain и присвоить ее существующему домену, не обращаясь при этом к главному меню.

Если Вы вошли в один из этих редакторов, а в check box 'Attach' в нижней части редактора Domain стоит метка, то ERwin автоматически связывает новую характеристику, которую Вы задаете в этом редакторе, с текущим доменом. Например, если Вы нажмете кнопку 'Validation...' в редакторе Domain, а в окне 'Attach' стоит метка, то при входе в редактор Validation Rule имя текущего домена появляется в окне 'Name' и правило валидации, ккоторое Вы задаете, автоматически присваивается выделенному домену.

Кнопка 'Reset...' открывает окно-диалог, в котором Вы можете восстановить значения домена по умолчанию для одной или более характеристик колонки. Например, если Вы изменили режим нулевых значений для домена '<default>' с 'NULL' на 'NOT NULL', то Вы можете использовать кнопку 'Reset' для восстановления начального значения 'NULL'.

Вы можете изменить характеристики нескольких доменов в течение одного сеанса, не выходя из редактора Domain. Вместе с тем, если Вы изменяете какие-то из характеристик, связанных с доменом, изменение происходит, когда Вы выделяете другой домен.

Закончив изменение характеристик колонок, нажмите 'ОК' для сохранения изменений и выхода в окно диаграммы. Для отмены изменений и выхода в окно диаграммы нажмите 'Cancel'.



Если Вы выбрали одну из следующих СУБД: Rdb, SYBASE или SQL Server, то в редакторе Domain появляется дополнительное окно check box 'User-Datatype'.


Если Вы поставите метку в этом окне, то присваиваемые домену характеристики будут созданы, как тип данных, определяемый пользователем (User Defined Datatype' при генерации схемы. Если в окне не будет метки, то ERwin использует синтаксис полного типа данных для создания присвоенных ограничений в операторе CREATE TABLE. Более подробную информацию о типах данных, определяемых пользователем, см. в документации по Вашей СУБД.

Домен 'Default'





ERwin поставляется с предопределенным доменом, имя которого '<default>', который автоматически задает характеристики для новых колонок. Эти характеристики, присваиваемые новой колонке доменом default, изначально основываются на значениях типов данных и режима нулевых значений, присваиваемых по умолчанию, которые задаются в редакторе Target Server. См. ранее в этой главе разд. 'Задание значений по умолчанию'.

Кроме таких характеристик, как тип данных по умолчанию и режим нулевых значений, получаемых из редактора Target Server, домен default использует макрокоманду %AttName для присваивания колонке имени логического атрибута в качестве имени колонки.

Как и в случае любого другого домена, Вы можете изменить в редакторе Domain любые характеристики, присвоенные домену default, за исключением его имени.



Наследование домена



Новый домен можно создать только из уже существующего домена. Когда Вы создаете новый домен, то он автоматически наследует все характеристики, присвоенные его родительскому домену.

Чтобы создать новый домен в ERwin, выберите родительский домен, на котором будет основан новый домен, из списка 'Inheritance Hierarchy' с правой стороны диалога. Это означает, что домен '<default>' должен быть использован в качестве родителя первого домена, который Вы создадите в Erwin.

Когда Вы нажимаете кнопку 'New' для создания нового домена, то ERwin добавляет имя домена в список Inheritance Hierarchy и вставляет его после родительского домена с более глубоким уровнем вложенности, чтобы показать иерархию доменов. Например, домены 'ADDRESS' и 'PERSON-NAME' порождены из домена '<default>'.


Если Вы создадите новый домен 'BUSINESS-ADDRESS', взяв домен 'ADDRESS' в качестве родительского, то список Inheritance Hierarchy будет выглядеть так (см. иллюстрацию).



Как создать домен



1. Дайте команду 'Domain...' в меню Server для входа в редактор Domain.

2. Выберите домен в текстовом окне 'Domain Name' и родительский домен в списке 'Inheritance Hierarchy'.

3. Введите имя домена в текстовое окно 'Name'. По желанию, можете ввести определение домена в текстовое окно 'Domain Definition'.

4. Нажмите кнопку 'New' для создания домена. Новый домен автоматически унаследует все характеристики, присвоенные домену, который Вы выбрали в п.2. Если Вы хотите изменить какие-то из этих характеристик, Вы можете:

· Присвоить домену другой тип данных - для этого щелкните по строке в списке '<DB> Datatype' и, если нужно, задайте длину. Если Вы задали длину, снова щелкните по выделенному домену, чтобы длина (параметр рядом с типом данных) была вставлена в список, находящийся в верхней части редактора.

· Присвоить домену другой режим нулевых значений, щелкнув по соответствующей кнопке в групповом окне '<DB> Null Option'.

· Присвоить домену правило валидации, щелкнув по имени правила в списке 'Valid'.

· Присвоить домену значение по умолчанию, щелкнув по имени значения в списке 'Default'.

Если Вы изменили какие-то характеристики домена, нажмите кнопку 'Update' для изменения определения домена.

5. Закончив присваивать характеристики домену, нажмите 'ОК' для сохранения изменений и выхода из редактора Domain или 'Cancel' для отмены изменения имени и выхода в окно диаграммы ERwin.



Если Вы в п.2 выбрали домен 'Default', то Вам нужно нажать кнопку 'New', прежде чем Вы выберете родительский домен из списка Inheritance Hierarchy.

Как изменить имя домена



1. Дайте команду 'Domain...' в меню Server для входа в редактор Domain.

2. Выберите домен, имя которого Вы хотите изменить, в списке в верхней части редактора Domain.

3. Установите курсор в текстовое окно 'Name' и удалите старое имя с помощью DELETE или BACKSPACE.


Введите новое имя, максимальная длина которого определяется Вашей СУБД.

4. Нажмите 'ОК' для сохранения изменений и выхода из редактора Domain или 'Cancel' для отмены изменения имени и выхода в окно диаграммы ERwin.



Как изменить тип данных домена



1. Дайте команду 'Domain...' в меню Server для входа в редактор Domain.

2. Выберите домен, тип данных которого Вы хотите изменить, в списке в верхней части редактора Domain. ERwin покажет тип данных, который сейчас присвоен выбранному домену, в списке '<DB> Datatype' с левой стороны редактора.

3. Щелкните по новому типу данных, который Вы хотите присвоить выбранному домену, в списке '<DB> Datatype'. Если для задания выбранного типа требуется задать длину (например, для типа CHAR()), то введите в скобках нужное Вам число. снова щелкните по домену в верхнем списке, чтобы вставить параметр в заново присвоенный тип данных.

4. Нажмите 'ОК' для сохранения изменений и выхода из редактора Domain или 'Cancel' для отмены изменения имени и выхода в окно диаграммы ERwin.



Как изменить режим нулевых значений домена



1. Дайте команду 'Domain...' в меню Server для входа в редактор Domain.

2. Выберите домен, режим нулевых значений которого Вы хотите изменить, в списке в верхней части редактора Domain.

3. Нажмите одну из кнопок в групповом окне '<DB> Null Option' для изменения режима нулевых значений домена.

4. Нажмите 'ОК' для сохранения изменений и выхода из редактора Domain или 'Cancel' для отмены изменения имени и выхода в окно диаграммы ERwin.



Как присвоить домену значение по умолчанию



1. Дайте команду 'Domain...' в меню Server для входа в редактор Domain.

2. Выберите домен, которому Вы хотите присвоить значение по умолчанию, в списке в верхней части редактора Domain.

3. Щелкните по стрелке 'вниз' для открытия списка 'Default', а затем щелкните по значению Default Value, которое Вы хотите присвоить выбранному домену.

Если Вы хотите задать новое значение по умолчанию и присвоить его домену, то нажмите кнопку 'Default...' для входа в редактор Default.


См. ранее в этой главе 'Работа в редакторе <DB> Default'.

Если Вы хотите убедиться, что никакое значение по умолчанию не было присвоено домену, то выберите из списка верхнюю строку - пунктирную линию (----). См. ранее в этой главе 'Работа в редакторе Domain'.

4. Нажмите 'ОК' для сохранения изменений и выхода из редактора Domain или 'Cancel' для отмены изменения имени и выхода в окно диаграммы ERwin.



Как присвоить домену правило валидации



1. Дайте команду 'Domain...' в меню Server для входа в редактор Domain.

2. Выберите домен, которому Вы хотите присвоить правило валидации, в списке в верхней части редактора Domain.

3. Щелкните по стрелке 'вниз' для открытия списка 'Valid', а затем щелкните по правилу валидации, которое Вы хотите присвоить выбранному домену.

4. Если Вы хотите задать новое правило валидации и присвоить его домену, то нажмите кнопку 'Validation...' для входа в редактор Validation Rule. См. ранее в этой главе 'Работа в редакторе Validation Rule'.

5. Если Вы хотите убедиться, что никакое правило валидации не было присвоено домену, то выберите из списка верхнюю строку - пунктирную линию (----). См. ранее в этой главе 'Работа в редакторе Domain'.

6. Нажмите 'ОК' для сохранения изменений и выхода из редактора Domain или 'Cancel' для отмены изменения имени и выхода в окно диаграммы ERwin.



Как связать с доменом новые ограничения



1. Дайте команду 'Domain...' в меню Server для входа в редактор Domain, а затем выберите домен, с которым Вы хотите связать новое ограничение.

2. Нажмите кнопку 'Attach' и поставьте метку Х в check box.

3. Если после этого Вы нажмете кнопку 'Default...' или 'Validation...' для задания нового ограничения на колонку, ERwin автоматически использует имя выбранного домена в качестве имени ограничения и связывает новое ограничение с выделенным доменом.

Например, если Вы выделите домен due_date в таблице MOVIE в редакторе Domain, а затем нажмете кнопку 'Validation...', то ERwin автоматически вставит due_date в качестве имени нового правила валидации.


Когда Вы закончите задание правила валидаци и вернетесь в редактор Domain, то новое правило валидации будет автоматически связано с доменом due_date.



Как восстановить характеристики домена, присвоив им значения, задаваемые по умолчанию



1. Дайте команду 'Domain...' в меню Server для входа в редактор Domain, а затем выберите домен, характеристики которого Вы хотите восстановить.

2. Нажмите кнопку 'Reset...' для входа в диалог Reset Domain Properties.

3. Щелкните по одному или нескольким check box в диалоге Reset Domain Properties, чтобы показать, какие из характеристик Вы хотите восстановить, присвоив им значения по умолчанию.

Например, если Вы хотите восстановить тот тип данных, который был задан по умолчанию для домена, поставьте Х в окне 'Datatype'. См. ранее в этой главе 'Работа в редакторе Domain'.

4. Нажмите 'ОК' для восстановления помеченных характеристик или 'Cancel' - для выхода из диалога без изменения характеристик.



Как удалить домен



1. Дайте команду 'Domain...' в меню Server для входа в редактор Domain.

2. Выделите имя домена, который Вы хотите удалить, в списке, который находится в верхней части редактора Domain.

3. ажмите кнопку 'Delete' для удаления домена. ERwin удаляет выбранный домен, не спрашивая Вашего подтверждения на удаление.

Если удаляемый домен связан с колонкой, то ERwin выдает окно-диалог, в котором содержится имя домена и связанная с ним колонка (колонки) и спрашивается, подтверждаете ли Вы удаление. Нажмите 'Yes' для удаления домена. Для отмены запроса на удаление нажмите 'No'. Если Вы удалите домен, то все характеристики колонки, определенные этим доменом, восстанавливаются в соответствии с содержимым родительского домена.

4. Нажмите 'ОК' для сохранения изменений и выхода из редактора Domain или 'Cancel' для выхода в окно диаграммы без сохранения изменений.




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