Войдите в редактор Target Server, щелкните, чтобы выбрать СУБД, и нажмите 'ОК'. ERwin спросит, хотите ли Вы преобразовать типы данных. Нажмите 'Yes', чтобы преобразовать типы данных в те, которые поддерживаются Вашей СУБД. Пользуйтесь check box 'Convert User-Defined Datatypes', чтобы задать, будет ли ERwin преобразовывать (если метка стоит) или использовать (нет метки) тип домена исходной СУБД. Если Вы передумаете, нажмите 'No', чтобы отменить Ваш запрос на смену СУБД.
Дайте команду 'Exit' из меню File. ERwin закроет все открытые окна диаграмм, после чего закроет окно приложения ERwin и Вы вернетесь в Windows Program Manager.
1. Снова дайте команду 'Layout...'.
2. Уберите метку в окне check box 'Layout Grid'.
3. Нажмите 'ОК' для сохранения параметров и возвращения в диаграмму.
1. Откройте диаграмму, содержащую объект(ы), которые надо вырезать.
2. Выберите сущность, которую Вы хотите скопировать, или, используя способы множественного выбора, выберите группу сущностей.
3. Дайте команду 'Cut...' в меню Edit или нажмите
Ctrl-X. ERwin попросит Вас подтвердить.
· Для того чтобы вырезать выбранный объект(ы), нажмите 'Yes'.
· Для того, чтобы вырезать выбранный объект(ы) и занести их в clipboard, поставьте метку в окне 'Copy to Clipboard' и нажмите 'Yes'.
ERwin удаляет выбранный объект(ы) из диаграммы и помещает их в Windows Clipboard. Вы можете вставить удаленные объекты в другую диаграмму или в другое приложение, используя команду Paste меню Edit.
Вставка сущностей
После того, как сущности были скопированы с помощью команды 'Model' в окне-диалоге Copy, Вы можете вставить их:
· в ту же самую диаграмму, из которой они были скопированы.
· в существующую диаграмму.
· в новую пустую диаграмму.
Если Вы не хотите вставить скопированные объекты в ту же самую диаграмму, Вам нужно открыть ту диаграмму, в которую Вы хотите вставить сущности. Для этого дайте команду 'New' или 'Open' в меню File для того, чтобы открыть, соответственно, новую или уже существующую диаграмму.
Войдите в редактор Column Property и выберите колонку, для которой Вы хотите задать одну или несколько характеристик. Чтобы присвоить значение по умолчанию, нажмите стрелку 'вниз' рядом со списком 'Default' и выберите значение по умолчанию, которое Вы хотите присвоить колонке. Чтобы присвоить правило валидации, нажмите стрелку 'вниз' рядом со списком 'Valid' и выберите правило валидации, которое Вы хотите присвоить колонке. Чтобы связать с колонкой домен, выберите домен из списка 'Domain'. (Если Вы хотите создать или изменить какие-то характеристики, прежде чем Вы присвоите их колонке, Вы можете использовать кнопки 'Validation...', 'Default...' и 'Domain...' для входа в соответствующие редакторы). Закончив работу в редакторе, нажмите кнопку 'ОК'.
1. Находясь в редакторе Relationship, нажмите кнопку выбора, обозначающую нужную Вам кардинальность.
2. Если Вы нажали кнопку 'Exactly', то необходимо ввести число.
Если Вы задали этот режим и не ввели число, то ERwin не даст Вам выйти из окна-диалога.
Как показать кардинальность связи
ERwin позволяет Вам показать кардинальность связи на диаграмме.
Находясь в редакторе Relationship, нажмите одну из кнопок выбора в окне 'Cardinality' для того, чтобы задать кардинальность связи. Если Вы нажали кнопку 'Exactly', то необходимо ввести точное значение кардинальности в текстовое окно, расположенное рядом с названием кнопки.
1. Находясь в редакторе Relationship, нажмите кнопку 'No Nulls' для задания 'обязательной' связи (ромбик на родительском конце отсутствует), или нажмите кнопку 'Nulls Allowed' для задания 'необязательной' связи (с ромбиком на родительском конце).
Работа в редакторе Relationship Definition
Вы можете также захотеть дать более полное определение Вашей связи для того, чтобы в дальнейшем иметь возможность на него ссылаться. Это делается в редакторе Relanship Definition.
Дайте команду 'Unique Name...' в меню Option и выберите режим 'Rename', 'Allow', 'Disallow' или 'Ask', чтобы задать реакцию ERwin на попытку дублирования имен сущностей и атрибутов. Нажмите кнопку 'ОК' для сохранения режима и возвращения в диаграмму.
1. Дайте команду '<DB> Sync Option...' в меню Server для входа в окно-диалог ERwin/<DB> Sync Options.
2. Поставьте метки в окнах check box, которые находятся в групповых окнах 'DB Sync Options' и 'Include DB Tables in Sync', чтобы задать физические таблицы, которые Вы хотите проверить в ERwin, когда он будет сравнивать информацию, хранящуюся на сервере, с определениями модели данных.
· Поставьте метку в окне 'Detect New Tables', чтобы просмотреть таблицы, которые есть в базе данных (но не в ERwin).
· Поставьте метку в окне 'DB System Tables', чтобы включить таблицы системного каталога в список таблиц базы данных, с которыми будет производиться синхронизация.
· Поставьте метку в окне 'Match Tables Using Owner' и (или) 'Owned Tables Only', чтобы просмотреть только те таблицы, в которых ID владельца совпадает с именем, под которым Вы загрузились в базу данных.
3. Нажмите одну из кнопок в групповом окне 'Synchronize Entities', чтобы задать, каким образом Вы хотите организовать процесс синхронизации.
· Нажмите кнопку 'Separately', чтобы синхронизировать сущности по одной.
· Нажмите кнопку 'Batch Together', чтобы сравнить все сущности со всеми таблицами базы данных в пакетном режиме.
В процессе пакетной синхронизации ERwin ищет для имени каждой таблицы ERwin такое же имя в базе данных. Если для каких-то сущностей не найдена физическая таблица, то ERwin открывает окно-диалог DB Sync и показывает в нем таблицы, для которых найдены совпадения в базе данных (синхронизированные) и те, для которых совпадения не найдены (несинхронизированные). После этого Вы можете применить прямое проектирование и сгенерировать соответствующую таблицу базы данных для каждой сущности или обратное проектирование и создать сущность ERwin для каждой несинхронизированной таблицы.
4. Поставьте метки в нужных check box в групповом окне 'Sync DB Object', если Вы хотите, чтобы ERwin сравнил объекты физической памяти, заданные в ERwin, с объектами, хранящимися на сервере. См. Гл.14, Объекты физической памяти, разд. 'Синхронизация физических объектов'.
Действие по синхронизации | От ERwin требуется: |
Forward Engineer | Экспортировать таблицу из ERwin в базу данных. |
Reverse Engineer | Импортировать таблицу из базы данных в ERwin. |
Rename | Переименовать физическую таблицу таким образом, чтобы ее имя совпадало с именем таблицы, хранящейся в ERwin. Нажмите кнопку 'Export', чтобы переименовать таблицу базы данных. Переименовать таблицу ERwin таким образом, чтобы ее имя совпадало с именем таблицы, хранящейся в базе данных. Нажмите кнопку 'Import', чтобы переименовать таблицу ERwin. |
In Sync | Ничего не делайте, т.к. таблицы уже синхронизированы. |
1. Дайте команду 'Target Server...' в меню Server для входа в окно-диалог Target Server.
2. Нажмите кнопку 'Referential Integrity Default...' для входа в редактор Referential Integrity Default.
3. Задайте нужный режим RI по умолчанию для каждого типа действия триггера для каждого из четырех типов связи в ERwin.
Для каждого случая имеется combo box, содержащий только допустимые RI-режимы для данного действия триггера и для данного типа связи.
4. Если Вы хотите изменить RI-режимы для уже существующих связей, заменив их на новые, нажмите кнопку 'Rebind'. ERwin попросит Вас подтвердить это. Нажмите 'Yes' для обновления существующих значений RI-триггеров и возвращения в редактор.
Нажмите кнопку 'Reset' для присвоения всем RI-режимам, присваиваемым по умолчанию, их системных значений. Как и большинство режимов, задаваемых ERwin по умолчанию, RI-режимы не имеют обратного действия. Они влияют только на новые связи, которые созданы после внесения изменений в RI-режимы.
5. Закончив работу, нажмите 'ОК' для выхода с сохранением изменений. После того как Вы задали режимы RI, присваиваемые по умолчанию каждому типу связи, выбранный RI-режим и связанный с ним RI-триггер автоматически присваиваются каждой новой связи, когда она добавляется на диаграмму.
Ниже приводится таблица режимов, присваиваемых по умолчанию, а также доступных режимов ссылочной целостности для каждого типа связи в ERwin.
Дайте команду 'Target Server' в меню Server и нажмите кнопку 'Referential Integrity Default...' для входа в редактор Referential Integrity Default. Используя combo box, задайте желаемое поведение по умолчанию для каждого типа RI. Нажмите 'ОК' для выхода из редактора с сохранением изменений, 'Cancel' - для отмены всех изменений, 'Reset' - для возвращения к системным значениям, 'Rebind' - для замены информации о ранее созданных связях на новую.
Войдите в редактор RI из меню Editor или из меню, ориентированного на связь.
Дайте команду 'Entity Size...' в меню Option. Чтобы задатьчисло атрибутов, которые будут показаны в каждой сущности диаграммы, щелкните по окну 'Set Height' и введите число. Чтобы задать число символов, которые будут демонстрироваться в каждом атрибуте диаграммы, щелкните по окну 'Set Width' и введите число. Нажмите 'ОК' для сохранения параметров и возвращения в диаграмму.
Войдите в редактор Target Server. Чтобы выбрать тип данных по умолчанию, нажмите стрелку 'вниз' рядом со списком 'Default <DB> Datatype' и выберите тип данных по умолчанию (например, CHAR(18)). Чтобы задать режим нулевых значений по умолчанию, выберите режим в групповом окне 'Default Non-Key Null Option'.
1. Щелкните по фону диаграммы в месте, которое находится непосредственно сверху и слева от множества сущностей, которые Вы хотите выбрать.
Когда Вы нажмете кнопку мыши, то увидите, как курсор принимает форму креста.
2. Не отпуская кнопку мыши, двигайте курсор вправо и вниз так, чтобы сущности и связи, которые Вы хотите выбрать, полностью попали в пунктирную линию. (Сущности, которые не полностью попадут в пунктирную линию, не будут выбраны).
3. Отпустите кнопку мыши. Вы увидите, что все сущности, попавшие в лассо, выделены как активные.
4. Для того, чтобы перенести множество сущностей с одного места на другое, щелкните по внутренней части множества и двигайте его (drag), как отдельную сущность.
Все выбранные сущности и связи между ними начнут одновременно двигаться. Для того, чтобы отменить выбор сущностей, щелкните по любому месту фона диаграммы.
Дайте команду 'Close' из меню File. ERwin спросит, хотите ли Вы сохранить изменения. Для того, чтобы сохранить их, нажмите 'Yes'. Если диаграмма еще ни разу не сохранялась, то Вы попадете в окно-диалог Save As. Если же диаграммма уже сохранялась, то ERwin закрывает диаграмму и сохраняет Ваши изменения. Для того, чтобы закрыть диаграмму без сохранения изменений, нажмите 'No'.
Закончив работу с диаграммой, Вы можете закрыть текущую диаграмму и продолжить работу с другой диаграммой. Вы также можете закрыть текущую диаграмму и выйти из ERwin.
Для того, чтобы закрыть диаграмму, дайте команду 'Close' из меню File. Появится окно-диалог, в котором ERwin спросит у Вас, хотите ли Вы сохранить сделанные изменения. если Вы нажмете 'Yes', а диаграмма еще ни разу не сохранялась, то появится окно-диалог 'Save As...', в котором Вы можете ввести имя файла и директорию, в которой он будет храниться. Если диаграмма уже сохранялась, или если Вы нажали 'No', то ERwin закроет файл.
Для выхода из приложения ERwin дайте команду 'Exit' из меню File.
Как закрыть диаграмму
1. Дайте команду 'Close' меню File. ERwin спросит, хотите ли Вы сохранить изменения.
2. Для сохранения изменений нажмите 'Yes'. Если диаграмма еще ни разу не сохранялась, то появится окно диалога 'Save As'. Если же она уже сохранялась, ERwin закрывает диаграмму и сохраняет проделанные изменения.
Для того, чтобы закрыть диаграмму без сохранения изменений, нажмите 'No'.
Вы можете закрыть диаграмму, дважды щелкнув по Контрольному Меню, которое находится в правом верхнем углу окна диаграммы.
Как выйти из приложения ERwin
1. Дайте команду 'Exit' меню File. Приложение ERwin закрывается и Вы возвращаетесь в Windows Program Manager.
Вы можете выйти из ERwin, дважды щелкнув по Контрольному Меню, которое находится в правом верхнем углу окна Erwin.
После того, как приложение ERwin инсталлировано, пиктограмма ERwin находится в новом программном блоке в Windows Program Manager. Вы можете запустить ERwin и открыть новое окно диаграммы несколькими способами. ERwin позволяет Вам начать работу в новом окне. Вы можете также открыть диаграмму, которая до этого была сохранена в другом окне.
Запуск ERwin из Windows Program Manager
1. Дважды щелкните по пиктограмме ERwin в окне Windows Program Manager. Вы можете также задать пиктограммы диаграмм для запуска ERwin и открыть конкретную диаграмму. Более подробно это описано в главе 10, 'Управление диаграммами: уровень повышенной сложности', раздел 'Создание пиктограммы для запуска ERwin и открытия диаграммы'.
Запуск ERwin из Windows File Manager
1. Находясь в Windows File Manager, перейдите в директорию ERwin.
2. Дважды щелкните по выполняемому файлу
ERwin (.EXE).
Запуск ERwin командой Run
1. Находясь в Windows Program Manager, дайте команду 'Run...' из меню File.
2. Введите имя пути для выполняемого файла ERwin (.EXE) (например, C:\ERWIN\ERWERX16.EXE) и нажмите 'ОК'.
При запуске ERwin, во время загрузки появляется
экран-заголовок. Когда пройдет несколько секунд, щелкните по любому месту этого экрана, чтобы убрать его, и перейдите к окну новой диаграммы. Если Вы не щелкнете кнопкой мыши, экран-заголовок убирается автоматически, когда ERwin готов.
После того, как приложение ERwin инсталлировано, пиктограмма ERwin находится в новом программном блоке в Windows Program Manager. Вы можете запустить ERwin и открыть новое окно диаграммы несколькими способами. ERwin позволяет Вам начать работу в новом окне. Вы можете также открыть диаграмму, которая до этого была сохранена в другом окне.
Запуск ERwin из Windows Program Manager
1. Дважды щелкните по пиктограмме ERwin в окне Windows Program Manager. Вы можете также задать пиктограммы диаграмм для запуска ERwin и открыть конкретную диаграмму. Более подробно это описано в главе 10, 'Управление диаграммами: уровень повышенной сложности', раздел 'Создание пиктограммы для запуска ERwin и открытия диаграммы'.
Запуск ERwin из Windows File Manager
1. Находясь в Windows File Manager, перейдите в директорию ERwin.
2. Дважды щелкните по выполняемому файлу
ERwin (.EXE).
Запуск ERwin командой Run
1. Находясь в Windows Program Manager, дайте команду 'Run...' из меню File.
2. Введите имя пути для выполняемого файла ERwin (.EXE) (например, C:\ERWIN\ERWERX16.EXE) и нажмите 'ОК'.
При запуске ERwin, во время загрузки появляется
экран-заголовок. Когда пройдет несколько секунд, щелкните по любому месту этого экрана, чтобы убрать его, и перейдите к окну новой диаграммы. Если Вы не щелкнете кнопкой мыши, экран-заголовок убирается автоматически, когда ERwin готов.
Любой объект модели, находящийся на диаграмме ERwin, можно скопировать. Вы можете воспользоваться функцией копирования для того, чтобы скопировать сегмент модели и вставить его в другую модель. Или Вы можете скопировать модель как объект типа bitmap и вставить ее в другое приложение.
Как скопировать сегмент модели как объект модели
1. Выберите объекты модели, которые Вы хотите скопировать, включая сущности и атрибуты.
Вы можете пользоваться методом лассо или SHIFT-Click, которые описаны в главе 3, Сущности и атрибуты в ERwin.
2. Дайте команду 'Copy...' в меню Edit (Ctrl-C).
Появится окно-диалог Copy.
3. Нажмите кнопку выбора 'Model', а затем - 'ОК'.
· Для того, чтобы выйти из диалога, не копируя, нажмите кнопку 'Cancel'.
Как скопировать модель как объект типа bitmap
1. Дайте команду 'Copy...' в меню Edit.
2. Нажмите кнопку выбора 'Picture', а затем - 'ОК'.
Изображение типа bitmap копируется в clipboard.
Масштаб изображения, которое копируется в clipboard, полностью определяется границей модели. Все, что находится внутри границы ERwin, копируется.
Таблица содержит:
· типы шаблонов, в которые можно вставить данную макрокоманду; конкретные шаблоны приводятся в конце таблицы.
· выполняется ли макрокоманда при каждой итерации выражения 'for each relationship' или 'for each attribute'.
· может ли макрокоманда быть использована в условном операторе 'if'.
· СУБД, поддерживающие те возможности, которые использует макрокоманда. Слово 'Все' означает все СУБД, поддерживающие триггеры, т.е.:
· INFORMIX, версия 5 и 6
· Ingres
· ORACLE, версия 7
· Progress
· Rdb
· SQL Server
· SYBASE, версия 4.2 и System 10
· WATCOM, версия 4
Метод лассо позволяет Вам выбрать несколько сущностей и связей одновременно, переносить их, удалять, копировать или переносить их на представление диаграммы.
При выборе множества сущностей этим способом Вы нажимаете клавишу SHIFT и, не отпуская ее, щелкаете мышью по каждой сущности из желаемого множества. Как и при применении предыдущего метода, каждая выбранная сущность будет выделена как активная. Комбинируя эти два метода, Вы можете выбрать практически любое множество.
В целях улучшения работы базы данных в таблице обычно имеется несколько индексов. преимущество множественных индексов в том, что у Вас есть несколько точек доступа к данным в таблице. В 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 и т.д.
На основе атрибутов, назначенных альтернативными ключами, строятся индексы, дополняющие индексы, основанные на первичном ключе. Вы можете назначать также и атрибуты, которые будут участвовать в неуникальных индексах. Атрибуты, участвующие в неуникальных индексах, называются 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).
Как показать индикаторы 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).
Существует некоторый базовый объем информации, которую Вы должны знать, прежде чем Вы начнете рисовать связи.
· Что такое связь
· Как входить в нужные редакторы
· Какие инструменты из toolbox Вам понадобятся
Анатомия связи
Данные, относящиеся к связям, очень важны и часто являются критическими данными, которые мы используем в повседневном бизнесе. Например, важно знать о каком-то типе инструмента, но знание того, к кому относится конкретный инструмент (связь между человеком и инструментом) может иметь критическую важность. Связь - это соотношение либо между двумя сущностями, либо между сущностью и этой же сущностью. Связь - 'логический' объект, представленный одним или несколькими атрибутами - внешними ключами. Связь в ERwin обычно содержит пять типов информации: тип связи, родительский конец связи, дочерний конец связи, знак 'обязательности' связи и кардинальность связи.
Как показать на экране меню Editor
ERwin поставляется со строкой меню, в которой отсутствует меню Editor. Вы всегда можете войти в меню Display и Editor нажатием правой кнопки мыши. Указывая стрелкой курсора на диаграмму, вы вызываете на экран меню Display, а указывая курсором на объект, вызываете меню, содержащее все редакторы, связанные с этим объектом. Вместе с тем Вы можете показать меню Editor в строке меню или убрать его оттуда.
ERwin может произвести обратное проектирование существующей базы данных SQL, считывая определения схемы и автоматически создавая соответствующую диаграмму модели данных. Когда Вы производите обратное проектирование базы данных, ERwin автоматически генерирует расположение объектов на диаграмме по умолчанию. После того как диаграмма будет сгенерирована в результате обратного проектирования, Вы можете, используя инструменты и редакторы ERwin, добавлять новые объекты, создавать системную документацию и перепроектировать структуру базы данных, основываясь на изменениях технических и (или) организационных требований.
Когда Вы производите обратное проектирование, необходимо иметь в виду, что разные СУБД на разных уровнях обеспечивают синтаксическую поддержку связей, индексов, ссылочной целостности и других свойств. Например, DB2 обеспечивает синтаксис, с помощью которого связи выражаются через внешние ключи и ссылочную целостность. Но не все СУБД, доступные из ERwin, поддерживают эти возможности.
ERwin позволяет Вам произвести обратное проектирование базы данных:
· Непосредственно из системного каталога Вашей базы данных.
· Путем открытия и прочтения файла скрипта схемы SQL.
Независимо от того, какой из методов обратного проектирования Вы используете, ERwin автоматически создает новое окно диаграммы Главной области и показывает на экране схему в виде графической модели данных.
Извлечение информации из схемы SQL
Помимо импорта информации, явным образом определенной в физической схеме, ERwin извлекает значительный объем информации из схемы и встраивает ее в диаграмму в процессе создания новой модели данных путем обратного проектирования.
Если синтаксис языка SQL Вашей СУБД поддерживает объявление ввнешних ключей, то ERwin автоматически извлекает из схемы идентифицирующие и неидентифицирующие связи и имена ролей по умолчанию, которые использует в генерируемой модели данных. В случаях DB2, SQL Server и Sybase ERwin модет извлечь всю основную информацию по модели, за исключением связей подтипа, ккоторые не поддерживаются в настоящее ремя ни одной из SQL-СУБД.
Когда Вы производите обратное проектирование базы данных, ERwin может импортировать имя, определение и параметры каждого индекса, определенного в базе данных.
Когда Вы импортируете информацию по индексам из базы данных, ERwin сохраняет информацию о месте хранения каждого индекса, так что впоследствии Вы можете заново создать базу данных, используя то же самое распределение памяти, если Вы этого захотите. Вам не нужно вручную заново распределять память под каждую таблицу.
После того как Вы импортируете индексы в ERwin, Вы можете просмотреть или изменить характеристики, определения индекса и его связи с таблицами в редакторе Index. В ORACLE, SYBASE и SQL Server Вы можете связать индекс с объектом физической памяти в редакторе Index. В ORACLE Вы можете также изменить параметры хранения в редакторе Index.
См. ранее в этой главе разд. 'Изменение физических характеристик индекса'.
Как произвести обратное проектирование индексов
1. Дайте команду 'New' в меню File для создания новой пустой диаграммы ERwin. Она будет использована для просмотра модели данных, созданной в процессе обратного проектирования.
2. Дайте команду 'Target Server...' в меню Server и выберите СУБД, которая содержит таблицы базы данных и индексы, для которых Вы хотите выполнить обратное проектирование.
3. Дайте командй 'DB Sync Option...' в меню Server. Используйте окна check box, чтобы указать, какие типы физических объектов базы данных Вы хотите импортировать в ERwin. Чтобы импортировать информацию о физической памяти в ERwin, убедитесь, что в окне 'Detect New DB Tables', которое находится в групповом окне 'DB Sync Options', стоит метка.
4. Нажмите на кнопку 'DB Sync...' для входа в диалог DB Sync, в котором Вы задаете, какие именно объекты нужно импортировать в ERwin.
ERwin выводит на экран сообщение о том, что он производит поиск заданных таблиц на сервере, а через несколько секунд выводит на экран список объектов, которые Вы задали в качестве кандидатов на обратное проектирование. Список содержится в окне 'Unsynched DB Object' с правой стороны диалога.
Когда Вы производите обратное проектирование базы данных, ERwin может импортировать имена и определения объектов физической памяти, определенных на сервере, таким же образом, каким он импортирует физические таблицы, индексы и другую информацию по физической схеме.
Когда Вы импортируете информацию об объектах физической памяти из сервера, ERwin использует информацию об адресе каждой таблицы базы данных, так что впоследствии Вы можете заново создать базу данных, используя то же самое распределение памяти. Вам не нужно заново вручную распределять память под таблицы.
После того как Вы импортировали объекты физической памяти в ERwin, Вы можете просматривать или изменять определения объекта и связи таблиц в редакторах Physical Object и Table Property так же, как Вы работали с объектами физической памяти, созданными в ERwin.
Как произвести обратное проектирование объектов физической памяти
1. Дайте команду 'New...' в меню File для создания новой диаграммы ERwin. Она будет использоваться для демонстрации модели данных, созданной в процессе обратного проектирования.
2. Дайте команду 'Target Server...' в меню Server и выберите СУБД, которая содержит таблицы базы данных и (или) объекты памяти, для которых Вы хотите выполнить обратное проектирование.
3. Дайте команду 'DB Sync Option...' в меню Server. Используя окна check box, задайте те типы объектов физической базы данных, которые Вы хотите импортировать в ERwin. Чтобы импортировать определения объектов памяти в ERwin, поставьте метку в соответствующих окнах check box в групповом окне Sync <DB> Object.
4. Нажмите кнопку 'DB Sync...' для входа в диалог DB Sync, в котором Вы задаете, какие именно объекты будут импортированы в ERwin.
ERwin выводит сообщение о том, что он производит поиск заданных таблиц на сервере, и через несколько секунд выводит на экран список всех объектов, которые Вы задали для выполнения обратного проектирования, в окне 'Unsynched DB Object' в правой части диалога.
5. Щелкните по конкретному объекту или, используя способы SHIFT-Click, CTRL-Click или 'click&drag', выделитевсе объекты физической памяти, которые Вы хотите импортировать в ERwin.
Когда Вы производите обратное проектирование базы данных, ERwin может импортировать имена и определения объектов физической памяти, определенных на сервере, таким же образом, каким он импортирует физические таблицы, индексы и другую информацию по физической схеме.
Когда Вы импортируете информацию об объектах физической памяти из сервера, ERwin использует информацию об адресе каждой таблицы базы данных, так что впоследствии Вы можете заново создать базу данных, используя то же самое распределение памяти. Вам не нужно заново вручную распределять память под таблицы.
После того как Вы импортировали объекты физической памяти в ERwin, Вы можете просматривать или изменять определения объекта и связи таблиц в редакторах Physical Object и Table Property так же, как Вы работали с объектами физической памяти, созданными в ERwin.
Как произвести обратное проектирование объектов физической памяти
1. Дайте команду 'New...' в меню File для создания новой диаграммы ERwin. Она будет использоваться для демонстрации модели данных, созданной в процессе обратного проектирования.
2. Дайте команду 'Target Server...' в меню Server и выберите СУБД, которая содержит таблицы базы данных и (или) объекты памяти, для которых Вы хотите выполнить обратное проектирование.
3. Дайте команду 'DB Sync Option...' в меню Server. Используя окна check box, задайте те типы объектов физической базы данных, которые Вы хотите импортировать в ERwin. Чтобы импортировать определения объектов памяти в ERwin, поставьте метку в соответствующих окнах check box в групповом окне Sync <DB> Object.
4. Нажмите кнопку 'DB Sync...' для входа в диалог DB Sync, в котором Вы задаете, какие именно объекты будут импортированы в ERwin.
ERwin выводит сообщение о том, что он производит поиск заданных таблиц на сервере, и через несколько секунд выводит на экран список всех объектов, которые Вы задали для выполнения обратного проектирования, в окне 'Unsynched DB Object' в правой части диалога.
5. Щелкните по конкретному объекту или, используя способы SHIFT-Click, CTRL-Click или 'click&drag', выделитевсе объекты физической памяти, которые Вы хотите импортировать в ERwin.
Когда все нужные объекты будут выбраны, нажмите кнопку 'Import', чтобы начать процесс обратного проектирования для этих объектов. ERwin выводит на экран список выбранных объектов в окне, которое находится в центре диалога, и в качестве предполагаемого действия по синхронизации указывает 'Rev Eng' (Reverse Engineering).
6. Нажмите кнопку 'Execute' для импорта имени и информации о параметрах для каждого выбранного объекта памяти в ERwin. Когда ERwin снова открывает диалог DB Sync, снова нажмите 'Execute' для завершения процесса обратного проектирования.
После того как ERwin завершит обратное проектирование определений объекта, он выводит сообщение, в котором содержится информация, сколько объектов он импортировал с сервера СУБД. Нажмите 'ОК', чтобы убрать сообщение и вернуться в окно диаграммы.
Если Вы выбирали таблицы, чтобы импортировать их в процессе обратного проектирования, ERwin создаст новую диаграмму модели данных. Если Вы выбирали только объекты физической памяти, то окно диаграммы будет пустым. Однако, если Вы дадите команду '<DB> Physical Object...' в меню Server и войдете в редактор Physical Object, то ERwin выводит на экран объекты памяти, которые он импортировал из сервера СУБД.
См. Гл.18, Прямое и обратное проектирование, разд. 'Генерация схемы базы данных'.
Когда все нужные объекты будут выбраны, нажмите кнопку 'Import', чтобы начать процесс обратного проектирования для этих объектов. ERwin выводит на экран список выбранных объектов в окне, которое находится в центре диалога, и в качестве предполагаемого действия по синхронизации указывает 'Rev Eng' (Reverse Engineering).
6. Нажмите кнопку 'Execute' для импорта имени и информации о параметрах для каждого выбранного объекта памяти в ERwin. Когда ERwin снова открывает диалог DB Sync, снова нажмите 'Execute' для завершения процесса обратного проектирования.
После того как ERwin завершит обратное проектирование определений объекта, он выводит сообщение, в котором содержится информация, сколько объектов он импортировал с сервера СУБД. Нажмите 'ОК', чтобы убрать сообщение и вернуться в окно диаграммы.
Если Вы выбирали таблицы, чтобы импортировать их в процессе обратного проектирования, ERwin создаст новую диаграмму модели данных. Если Вы выбирали только объекты физической памяти, то окно диаграммы будет пустым. Однако, если Вы дадите команду '<DB> Physical Object...' в меню Server и войдете в редактор Physical Object, то ERwin выводит на экран объекты памяти, которые он импортировал из сервера СУБД.
См. Гл.18, Прямое и обратное проектирование, разд. 'Генерация схемы базы данных'.
ERwin позволяет Вам хранить информацию, содержащуюся в модели данных ERwin, в нескольких собственных форматах ERwin, например .ER1 и .ERX, или в файле базы данных .DBF, доступ к которому возможен из СУБД, ориентированной на РС, например из dBASE или FoxPro, или в таблицах на сервере SQL.
Если Вы хотите хранить Ваши модели в собственном формате ERwin, например .ER1 или .ERX, Вы можете сохранить диаграмму с помощью команд меню File 'Save' и 'Save As'. Если Вы хотите хранить свои модели в СУБД (SQL или ориентированной на РС), создайте и заполните словарь ERwin в Вашей базе данных, следуя инструкциям, проводимым в этом разделе.
Как разобраться в метамодели словаря ERwin
Полная модель данных в ERwin содержит всю информацию, необходимую для генерации физической базы данных на Вашем сервере. Аналогичным образом, все внутренние определения, необходимые ERwin для построения модели данных, содержится в специальной модели данных ERwin, которая называется метамоделью словаря ERwin.
Метамодель ERwin, определяющая структуры данных, необходимые для хранения всех определений, адресов, шрифтов, цветов и другой необходимой информации о сущностях, атрибутах и связях в Вашей диаграмме ERwin, может быть, ккак и любая другая модель ERwin, использована для генерации физической базы данных на Вашем сервере. База данных, которая генерируется на основе метамодели ERwin, называется Dictionary (словарь), поскольку в ней хранится информация о структурах данных, используемых в моделях ERwin, а не бизнес-информация, как вв базе данных, сгенерированной из обычной модели данных ERwin. Во всх других отношениях диаграмма метамодели ERwin ведет себя точно так же, как и любая друая диаграмма ERwin.
См. далее в этом приложении 'Словарь сущностей ERwin', который содержит информацию о данных, хранящихся в метамодели ERwin.
Использование метамодели ERwin для генерации схемы словаря
После того как Вы установите ERwin, Вы можете открывать существующие диаграммы, создавать новые диаграммы и производить обратное проектирование существующих баз данных, не создавая словаря ERwin.
Окно ERwin содержит строку меню, в котором имеются режимы: File, Edit, Server, Report, Option, Help. Два дополнительных меню - Display и Editor - не видны, когда ERwin инсталлируется впервые. Вы можете спрятать или показать одно или оба меню с помощью переключателей 'Display' и 'Editor' в меню Option. Окно диаграммы содержит также ERwin Toolbox - специальное окно, содержащее все инструменты, которыми Вы пользуетесь при построении и модифицировании диаграммы Erwin. В некоторые версии ERwin, например в ERwin/ERX for Status Bar В нижней части окна ERwin находится status bar, который содержит информацию о выбранной функции или команде меню. Обычно статус активного окна - 'Ready', что означает, что ERwin готов к новой функции. Когда Вы выбираете режим меню или щелкаете по кнопке Toolbar, то в статус-лайне появляется краткое описание выбранной функции. Например, если вы выбрали 'Zoomout x2' для того, чтобы уменьшить диаграмму в два раза, то в статус-лайне появится сообщение 'Display Diagram Half Size' (Показать диаграмму в половинном размере). Когда статус-лайн снова покажет 'Ready', то Вы можете снова работать в активном окне диаграммы. Status Bar можно включать и выключать при помощи переключателя 'Status Вar', который находится в меню Window. Как включить или выключить Status Bar 1. Для того, чтобы включить Status Bar, щелкните мышью и поставьте метку рядом с режимом 'Status Bar' в меню Window. Для того, чтобы выключить Status Bar, при помощи мыши уберите метку рядом с режимом 'Status Bar' в меню Window. Для того чтобы открыть модель данных, хранящуюся в базе данных на Вашем сервере, пользуйтесь командой меню File 'Import Dictionary'. Когда Вы даете эту команду, ERwin восстанавливает информацию, относящуюся к выбранной модели, из таблиц словаря ERwin и переносит ее обратно на компьютер, на котором работает ERwin, чтобы ее можно было просмотреть в виде диаграммы ERwin. Система check-in/check-out, которую ERwin использует для хранения модели на сервере, также применима в случае восстановления модели. Если экспорт модели на сервер ERwin рассматривает как check-in, то импорт модели из сервера рассматривается как check-out. Когда Вы импортируете модель из базы данных, ERwin запоминает состояние модели при check-out и вносит Ваше имя, которое Вы ввели при подсоединении к базе данных, в список в качестве 'current user' модели. Для того чтобы произвести check-in или check-out модели, хранящейся в базе данных SQL, Вам необходимо иметь разрешение на выполнение UPDATE для таблицы диаграммы ERwin, ERW_DIAG, и разрешение на SELECT для всех таблиц словаря ERwin. Как восстановить модель данных, хранящуюся в базе данных 1. Дайте команду меню File 'Import Dictionary'. ERwin открывает диалог Target Server. 2. Нажмите кнопку Target DBMS, соответствующую той СУБД, в которой хранится модель данных, которую Вы хотите открыть, и затем нажмите кнопку 'ОК'. ERwin открывает диалог Dictionary Import Viewer. Этот диалог используется для того, чтобы запустить импорт данных и выводить на экран сообщения о состоянии этого процесса, пока он будет идти. 3. Нажмите кнопку 'Import Dictionary', чтобы начать импорт. В любой момент Вы можете нажать кнопку 'Cancel', чтобы прервать импорт и вернуться в диаграмму. Когда Вы нажимаете кнопку 'Import Dictionary', ERwin открывает диалог <DB> Connection. Каждый раз, когда Вы делаете попытку импорта или экспорта модели данных из словаря или в словарь, ERwin требует, чтобы Вы заново подсоединились кк базе данных. Вам необходимо подсоединиться к Вашей базе данных, даже в том случае, если Вы делали это раньше.
Если Вы создали несколько областей для одной модели данных, то Вы можете переходить из одной области в другую, выбирая ту диаграмму, с которой Вы хотите работать, из списка областей. Этот список вызывается из Toolbar или из окна-диалога редактора Subject Area. Как перейти из одной области в другую 1. Находясь в окне диаграммы ERwin, щелкните по стрелке 'вниз', которая находится рядом с окном Subject Areas. 2. Щелкните по той области, с которой Вы хотите работать. ERwin показывает выбранные области в окне диаграммы. Перенести сущность на другое место в ERwin очень просто. При генерации физической схемы базы данных ERwin по умолчанию использует для генерации кода триггера на языке SQL встроенные шаблоны RI-триггеров, которые автоматически присваиваются каждой связи. Поскольку с каждым типом правила ссылочной целостности связан какой-то встроенный шаблон, Вы можете сгенерировать код триггера для всей Вашей модели и больше в этом отношении ничего не делать. Если Вы используете шаблоны, присваиваемые ERwin по умолчанию, то ERwin составляет коды триггера по умолчанию, используя фиксированную внутреннюю схему для комбинирования различных встроенных шаблонов. Если Вы хотите изменить коды триггера, генерируемые на основе встроенных шаблонов, ERwin позволяет Вам изменить шаблон и указать, что при генерации модифицированная версия должна заменить встроенный шаблон. ERwin позволяет переопределить триггер, устанавливаемый по умолчанию, тремя способами. 1. RI Type Override - Переопределение типа RI. Для каждой комбинации правил ссылочной целостности (например Parent-Delete RESTRICT) ERwin позволяет Вам создать переопределенный шаблон и использовать этот шаблон вместо шаблона, используемого по умолчанию, для всех связей диаграммы, которым был присвоен этот тип правила ссылочной целостности. Используя в качестве отправного пункта встроенный код шаблона, Вы можете, пользуясь этим способом, производить глобальные изменения в отношении ссылочной целостности, изменяя коды триггера только в одном месте. Шаблоны RI Type Override используются вместо стандартных шаблонов ERwin, если при генерации схемы Вы задаете режим RI Type Override. 2. Relationship Override - Переопределение связи. Если Вы хотите переопределить шаблон, задаваемый по умолчанию, для какой-то конкретной связи, Вы можете модифицировать встроенный шаблон и связать новую версию только в этой связью. Например, если связь между сущностями MOVIE и MOVIE-COPY задана для Parent-Delete RESTRICT, а Вы хотите изменить поведение для этой связи, то Вы можете создать шаблон триггера Relationship Override для комбинации Parent-Delete RESTRICT и связать новый шаблон со связью MOVIE-MOVIE-COPY.
После того, как Вы вручную изменили расположение объектов на диаграмме, Вы можете заметить, что какой-то текст, линии связи или контуры сущностей нечетко видны на экране. Вы можете дать команду 'Redraw Diagram' в меню Edit, чтобы обновить экран и сделать объекты более четкими. Когда Вы даете эту команду, ERwin просто перерисовывает изображения на диаграмме, не меняя расположение и размер объектов. Как перерисовать диаграмму 1. Дайте команду 'Redraw Diagram' в меню Edit. ERwin обновит экран, перерисовав символы и линии объектов. ERwin поддерживает объекты физической памяти для ORACLE, SYBASE SQL Server и Microsoft SQL Server. ERwin может производить обратное проектирование существующих объектов памяти из ORACLE или SQL Server, но прямое проектирование (генерация) возможно только для объектов ORACLE. Типы объектов физической памяти ERwin позволяет Вам работать с тремя типами объектов памяти ORACLE: Database, Tablespace, Rollback Segment, и с одним типом SQL Server, Segment. Каждый из этих типов кратко описан ниже. Параметры, которые Вы можете задать для каждого объекта физической памяти в ERwin, приводятся в конце главы. · Database (база данных): зарезервированный объем памяти для одного или более устройств хранения, которые используются для хранения данных и определений объектов базы данных, например, таблиц и индексов. Для того чтобы создать базу данных в ERwin, в качестве СУБД должна быть задана ORACLE. Чтобы создать или изменить базу данных ORACLE, Вы должны иметь привилегию DBA для работы в базе данных. · Tablespace (табличное пространство): именованный сегмент в базе данных, состоящий из одного или более файлов данных. Создав табличное пространство, Вы можете затем использовать его для хранения таблиц, индексов или сегментов отката. Для того, чтобы создать табличное пространство в ERwin, в качестве СУБД должна быть задана ORACLE. Чтобы Вы могли создать табличное пространство в ORACLE, у Вас должна быть привилегия DBA для работы в базе данных. · Rollback Segment (сегмент отката): зарезервированный объем пространства, который используется для хранения 'снимка' данных в том виде, в котором они находились до выполнения транзакции. Если транзакция не завершилась, все изменения данных откатываются и образ данных, хранящийся в сегменте отката, восстанавливается. Для того чтобы создать сегмент отката в ERwin, в качестве СУБД у Вас должна быть задана ORACLE. Чтобы создать или изменить сегмент отката в ORACLE, Вы должны иметь привилегию CREATE ROLLBACK SEGMENT для работы в табличном пространстве. · Segment (сегмент): Именованный набор из одного или нескольких устройств, зарезервированный для использования конкретной базой данных SQL. Создав сегмент, Вы можете использовать его для хранения объектов базы данных, например таблиц и индексов. Чтобы создать сегмент в ERwin, в качестве СУБД должна быть задана SYBASE или SQL Server. Единственный физический параметр, который Вы можете задать в ERwin, - имя сегмента. Чтобы создать сегмент, Вы должны иметь полномочия SA (системного администратора) для работы в базе данных. ERwin может открывать файлы нескольких типов и Вы можете сохранять диаграмму ERwin в нескольких различных форматах. Как открывать файлы Типы файлов, которые Вы можете открыть в ERwin, приводятся в списке 'List Files of Type', который находится в левом нижнем углу окна-диалога Open File. Файл с расширением .ER1, .ERX или .ERV - файл диаграммы ERwin, который при открытии сразу же выводит на экран графическую модель данных. Файл с расширением .ERS, .SQL, .SML, .CMT или .DF - файл определений данных, содержащий текстовую информацию. Когда Вы открываете текстоый файл с одним из этих расширений, ERwin считывает структуру данных, заданную в текстовом файле, и использует обратное проектирование (Reverse Engineering) для создания новой диаграммы. Файл .DBF - файл базы данных формата dBASE. При открытии файла .DBF ERwin автоматически производит обратное проектирование базы данных и создает диаграмму соответствующей модели. Сохранение файлов в ERwin Форматы, в которых Вы можете сохранить диаграмму ERwin, показаны в разделе 'File Format' окна-диалога 'ERwin Save As' в виде кнопок 'Опция'. Формат .ER1 - это стандартный формат графической диаграммы в ERwin. Формат .ERX - это текстовое описание диаграммы ERwin, которой используется при экспорте модели ERwin в другое приложение. См. также гл.19, Импорт и экспорт без SQL, разд. 'Использование собственного формата ERX'. Формат .ERV - это формат архива PVCS, который используется для управления изменениями в диаграмме в среде групповой разработки. См. далее в этой главе разд. 'Использование PVCS фирмы Intersolv для управления версиями'. Поддержка файловых типов в других Типы файлов, которые Вы можете открывать, различаются в зависимости от того, с какой ерсией ERwin Вы работаете. ERwin/ERX и ERwin/ERX for PowerBuilder могут открывать все файловые типы и сохранять все файловые форматы, приведенные выше. ERwin SQL и ERwin Desktop не поддерживают обратное проектирование, поэтому они не могут открыть текстовые файлы определений данных с расширениями .ERS, .CMT, .SQL, .SML, .DF.
Однако для того, чтобы хранить модель ERwin в Вашей базе данных, Вам необходимо открыть метамодель ERwin и сгенерировать соответствующую схему базы данных Dictionary (словарь) на Вашем сервере, для того чтобы Вы могли хранить на этом сервере данные ERwin.
Когда Вы устанавливаете ERwin, метамодель ERwin автоматическки инсталлирутся в директории программ ERwin в файле ERWMETA.ER1. Для того чтобы открыть метамодель, дайте команду меню File 'Open', перейдите в нужную директорию и дважды щелкните по имени файла ERWMETA.ER1, чтобы открыть его. Через несколько секунд на экране появляется метамодель.
Информация в метамодели словаря ERwin делится на несколько областей. Главная область включает в себя все сущности в метамодели. Область Schema ключает в себя только те сущности, которые необходимы для создания словаря ERwin на Вашем сервере. Область Relevant включает в себя некоторые сущности, не входящие в область Schema, которые не генерируются, когда Вы создаете словарь, но содержат информацию, которая полезна для понимания всей метамодели. Область Text-Related содержит сущности, в которых хранятся текстовые значения большой длины, например, описания сущностей, notes и т.д. Когда Вы генерируете схему из метамодели, Вы должны сделать область Schema текущей областью.
Генерация схемы словаря ERwin
После того как Вы открыли метамодель ERwin, Вы используете функцию прямого проектирования в ERwin для генерации схемы базы данных Dictionary (словаря) на Вашем сервере точно так же, как Вы генерируете физическую схему из обычной диаграммы ERwin. Когда Вы выполняете действия, необходимые для генерации схемы словаря ERwin на Вашем сервере, ERwin преобразует базовые типы данных метамодели в типы данных, поддерживаемые Вашей СУБД, а затем генерирует операторы языка определения данных, соблюдая синтаксис языка Вашей СУБД.
База данных Dictionary, генерируемая из метамодели ERwin, может быть создана как множество таблиц в базе данных SQL или как файл базы данных .DBF.Если Вы выбрали СУБД, ориентированную на РС - dBASE, FoxPro или Clipper, то словарь ERwin автоматически генерируется в виде множества фалов .DBF. Если Вы выбрали CУБД Access или Paradox, то ERwin использует команды ODBC и Access BASIC, чтобы транслировать генерируемые команды SQL и создать таблицы словаря в Вашей базе данных. Если Вы выбрали базу данных SQL, то ERwin генерирует операторы языка определения данных SQL, ккоторые требуются для создания таблиц базы данных Dictionary, соблюдая при этом синтаксис языка Вашей СУБД.
Если у Вас установлена СУБД, ориентированная на РС, Вам может потребоваться создать пустой файл базы данных для хранения в нем словаря и (или) конфигурировать драйверы ODBC на Вашей машине, прежде чем Вы приступите к генерации словаря ERwin. См. также руководство по СУБД, ориентированным на РС, ERwin Desktop Database Guide.
Окно ERwin
PowERBuildER, включено дополнительное меню Client. Это
меню используется для определения информации, ориентированной на клиента, для различных средств разработки фронтальных приложений, таких как PowERBuildER, SQL Windows и Visual Basic. Если Вы приобрели версию ERwin, предназначенную для работы с определенной системой разработки приложений, то к ней прилагается отдельное руководство - Client Development Guide, в котором объясняются соответствующие команды меню Client.
Открытие модели ERwin, хранящейся в базе данных
Для этого введите допустимое имя, пароль, имя базы данных, имя сервера и (или) другую информацию, которая требуется в случае Вашей СУБД.
4. После того как Вы нажали кнопку 'Import Dictionary' и подсоединились к базе данных, ERwin открывает окно-диалог Import Dictionary, которое содержит список всех моделей данных ERwin, хранящихся в Вашей базе данных. Щелкните по имени модели, которую Вы хотите импортировать, в списке, после чего нажмите кнопку 'Check-Out'. Если Вы передумаете, то можете в любой момент нажать кнопку 'Cancel', чтобы отменить импорт.
Если Вы делаете попытку импорта модели, с которой другой пользователь уже делает check-out (см. колонку Current User в списке), ERwin выводит на экран сообщение, что с этой моделью уже делают check-out, и спросит, хотите ли Вы продолжать. Это делается, чтобы предупредить Вас, что изменения, которые Вы внесете в Вашу копию импортированной модели, могут вступить в конфликт с изменениями, которые сделают другие пользователи, если Вы попытаетесь экспортировать отредактированную Вами модель обратно на сервер. Если Вы все равно хотите продолжить импорт, нажмите кнопку 'Yes'; чтобы отменить импорт, нажмите 'No'.
ПРИМЕЧАНИЕ: При импорте модели, с которой уже делается check-out, статус 'current user' в списке Import Directory не изменяется. Если Вы решили все равно импортироать модель, несмотря на предупреждение 'already checked-out', Вам нужно работать с импортируемой моделью, как с копией. Если Вы редактируете модель, Вам нужно проконсультироваться с текущим пользователем (current user), прежде чем экспортировать ее обратно в базу данных.
5. В процессе импорта информации, содержащейся в модели данных, ERwin выводит на экран последовательные сообщения о состоянии процесса, в которых указана каждая таблица словаря ERwin, из которой он импортирует данные. После того как ERwin завершит импорт модели, он выводит на экран сообщение, в котором указывается, успешно ли завершился импорт словаря. Нажмите кнопку 'ОК', чтобы закрыть окно сообщения и просмотреть импортированную модель в окне диаграммы ERwin.
Переход из одной области в другую
Перенос на другое место отдельных сущностей ERwin
Переопределение шаблонов триггеров в ERwin
Шаблоны Relationship Override используются вместо
Шаблоны Relationship Override используются вместо стандартных шаблонов ERwin (а также вместо шаблонов RI Type Override, если они есть), если при генерации схемы Вы задаете режим Relationship Override.
3. Entity Override - Переопределение сущности. ERwin позволяет Вам также создавать собственные триггеры Entity Override для любой сущности в диаграмме. Шаблоны Entity Override используются вместо стандартных шаблонов ERwin, а также вместо созданных Вами шаблонов RI Type Override и Relationship Override, если при генерации схемы Вы задаете режим Entity Override.
Ниже приводится пирамида, показывающая, в каком порядке шаблоны триггеров ERwin переопределяют друг друга. При переходе к шаблону более высокого уровня он заменяет собой шаблоны всех низших уровней.
Процедура создания каждого типа переопределяющего шаблона описывается ниже. Примеры, приводимые в этой части, основаны на четырех сущностях из диаграммы CUSTOMER.ER1:
Cоздание шаблона RI Type Override
Шаблон RI Type Override используется для изменения поведения встроенного шаблона для типа RI-триггера. Предположим, например, что Вы хотите, чтобы ERwin всякий раз, когда Вы удаляете строку в родительской таблице ORDER, использовал код триггера Parent-Delete CASCADE, присваиваемый по умолчанию, для удаления соответствующих дочерних срок в таблице Order Line, но при этом Вы хотите также автоматически захватывать удаляемую информацию и вставлять удаляемые строки в архивную таблицу, так чтобы эту информацию потом при желании можно было найти.
Один из способов, как можно это сделать - изменить встроенный триггер Parent-Delete CASCADE так, чтобы он производил архивирование, создавая RI Type Override. Имеется несколько достоинств этого способа:
· К триггеру требуется добавить только пару строк кода;
· изменение производится только в одном месте;
· оно распространяется на всю базу данных;
· оно не отражается на исходном коде приложений;
· если Вы решите больше не архивировать эту информацию, то можно будет быстро восстановить исходный встроенный шаблон Parent-Delete CASCADE.
Создание шаблона RI Type Override облегчает создание собственных триггеров ссылочной целостности, поскольку все связи, которым присваивается переопределенный тип RI-триггера, автоматически используют связанный с ним шаблон User Override.
Перерисовка диаграммы
Поддержка объектов физической памяти в различных СУБД
Поддержка различных файловых типов в ERwin
версиях ERwin
НЕ ХВАТАЕТ ПРИМЕЧАНИЯ Использование PVCS фирмы Intersolv для управления версиями
Если у Вас установлена программа контроля версий PVCS (версия 5.1 или более поздняя), то Вы можете с ее помощью управлять изменениями и составлять отчет о %disrepancies между различными версиями модели данных ERwin. PVCS прослеживает изменения модели ERwin и отмечает, кто их произвел. PVCS сохраняет каждую версию в архивном файле и контролирует доступ к данным. PVCS может заблокировать модель данных таким образом, что только один пользователь одновременно может получить доступ к определенной версии.
Как создать архив PVCS
1. Дайте команду 'Save As...' из меню File. Появится окно-диалог Save As. Поставьте метку в окне рядом с 'PVCS Put'.
ИЛИ
Дайте команду Exit из меню File. Появится окно-диалог ERwin Save Current Changes. Поставьте метку рядом с 'PVCS Put' и нажмите 'Yes'. Пояится окно-диалог ERwin Save As.
2. Оставьте файловый формат ER1 или измените его на ERX.
Формат, который Вы выберете, должен оставаться неизменным во все время жизни модели.
3. Введите имя модели в окно 'File Name'.
Расширение .ERV будет добавлено автоматически.
4. Нажмите 'ОК'. Появится окно-диалог Logic Works ERwin-PVCS Put.
5. Для продолжения работы в PVCS обратитесь к руководству по PVCS (PVCS VERsion ManagER RefERence Guide).
Для того, чтобы Вы могли использовать PVCS для регулировки диаграмм ERwin, PVCS должен быть установлен и запущен, и файл PVCSVMW.DLL должен находиться в директории, путь к которой задан в DOS, или в директории ERwin.
Как открыть архив PVCS
1. Дайте команду 'Open...' из меню File. Появится окно-диалог ERin Open File.
2. В списке 'List Files of Type:' выберите 'ERwin PVCS (*.ERV)'.
3. Выберите файл из списка имен файлов и нажмите 'ОК'. Появится окно-диалог 'Logic Works ERwin-PVCS Get'.
4. Для продолжения работы в PVCS обратитесь к руководству по PVCS (PVCS VERsion ManagER RefERence Guide).
Вместе с тем ERwin Desktop открывает файлы .DBF формата dBASE и Xbase.
Файловый формат .ERX может измениться по мере появления новых версий ERwin. Чтобы сохранить доступ к информации, содержащейся в файле .ERX, после upgrade, сохраните файл в формате .ER1 в старой версии ERwin. Если диаграмма сохранена в формате .ER1, то Вы можете открыть ее из параллельных или более новых версий ERwin. Например, если Вы сохранили диаграмму в формате .ER1 в ERwin/ERX for PowERBuildER, версия 1.5, то Вы можете открыть его из ERwin Desktop for PowERBuildER, версия 1.5, ERwin for Oracle Case, версия 1.5 и ERwin/ERX, версия 2.0.Файловый формат .ERX может измениться по мере появления новых версий ERwin. Чтобы сохранить доступ к информации, содержащейся в файле .ERX, после upgrade, сохраните файл в формате .ER1 в старой версии ERwin. Если диаграмма сохранена в формате .ER1, то Вы можете открыть ее из параллельных или более новых версий ERwin. Например, если Вы сохранили диаграмму в формате .ER1 в ERwin/ERX for PowERBuildER, версия 1.5, то Вы можете открыть его из ERwin Desktop for PowERBuildER, версия 1.5, ERwin for Oracle Case, версия 1.5 и ERwin/ERX,
версия 2.0.
Поддержка файловых типов в ERwin
Расши-рение файлаВерсии ERwin, в которых можно сохранить файл | |||
.ER1 | Стандартный формат файла диаграммы ERwin | Все | Все |
.ERX | Текстовая версия файла диаграммы ERwin | Все; однако, файлы .ERX, созданные в старой версии ERwin, могут не открыться из новой версии. ПРИМЕЧАНИЕ: Для работы с диаграммой превратите файлы .ERX в .ER1 при переносе их в новую версию ERwin. | Все |
.ERV | Диаграмма ERwin, сохраненная как архивный файл Intersolv PVCS | Все ПРИМЕЧАНИЕ: Для того, чтобы открыть файл .ERV, у Вас должна быть установлена версия 5.1 или более поздняя продукта IntERsolv PVCS. | Все |
.ERS | Текстовый файл скрипта физической схемы БД ERwin | ERwin/ERX ERwin/ERX for PowerBuilder | Неприменимо |
.SQL | Текстовый файл на SQL DDL (язык определения данных) | ERwin/ERX ERwin/ERX for PowerBuilder | Неприменимо |
.DF | Текстовый файл определений прогресса данных | ERwin/ERX ERwin/ERX for PowerBuilder | Неприменимо |
.SML | Текстовый файл на языке Структурного Моделирования | ERwin/ERX ERwin/ERX for PowerBuilder | Неприменимо |
.CMT | Текстовый файл, содержащий определения (комментарии) сущности (уровень таблицы) и атрибута (уровень колонки) | ERwin/ERX ERwin/ERX for PowerBuilder ERwin/DBF Rwin Desktop ПРИМЕЧАНИЕ: Вы должны открыть диаграмму до открытия связанного с ней файла комментариев. | Неприменимо |
.DBF | Файл базы данных формата dBASE или Xbase | ERwin/ERX и ERwin/DBF, версия 1.2 или более поздние, ERwin Desktop for PowerBuilder. | Неприменимо |
Ниже приводится таблица, описывающая, как поддерживаются в разных СУБД триггеры, хранимые процедуры, пре- и пост-скрипты.
RI-триггеры | Хранимые проц. | Пре/пост-скрипты | |
СУБД SQL | |||
DB2 | · | ||
SQL Server | · | · | · |
Rdb | · | · | · |
ORACLE версия 6 | · | ||
ORACLE версия 7 | · | · | · |
SQLBase версия 5 | · | ||
SQLBase версия 6 | · | · | |
WATCOM версия 2 | · | ||
WATCOM версия 4 | · | · | · |
Ingres | · | · | · |
SYBASE версия 4.2 | · | · | · |
SYBASE System 10 | · | · | · |
AS/400 | · | ||
NetWare SQL | · | ||
INFORMIX версия 5 | · | · | · |
INFORMIX версия 6 | · | · | · |
Progress | · | · | · |
РС-ориентир.СУБД | · |
При работе с большой моделью может быть утомительно прокручивать диаграмму вручную в поисках нужной сущности. Функция Go To позволяет Вам задать имя сущности и предоставить ERwin автоматически прокрутить диаграмму до этой сущности и вывести ее на экран.
Как использовать Go To для поиска сущности
1. Дайте команду 'Go To...' в меню Edit. ERwin открывает окно-диалог Go To, содержащее combo box со списком имен всех сущностей в текущей области.
2. Выберите нужную Вам сущность, прокручивая список с помощью клавиш 'вверх-вниз' или вводя первые буквы имени. Нажмите кнопку 'Show Table Names' для того, чтобы показать имена физических таблиц для сущностей, а не логических (эта кнопка включается в окно автоматически, когда Вы просматриваете диаграмму в режиме Physical Schema Level). Поставьте метку в окне 'Open Editor' для того, чтобы прокрутить список до искомой сущности и автоматически открыть текущий редактор для этой сущности.
3. Нажмите 'ОК', чтобы закрыть окно-диалог. Когда Вы закрываете редактор Go To, то ERwin прокручивает диаграмму так, что выбранная сущность оказывается точно в окне.
Вы можете быстро в любой момент войти в окно-диалог Go To, нажав Ctrl-g.
Зависимая сущность может унаследовать один и тот же внешний ключ из нескольких родительских сущностей, а также сущность может унаследовать один и тот же внешний ключ несколько раз от одного и того же родителя через несколько разных связей. Когда 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.
Функции ERwin Copy Model/Paste Model способствует повторному использованию моделей и ускоряет слияние моделей, созданных несколькими проектировщиками баз данных, в одну модель. Просто выберите объекты, которые хотите скопировать, а затем вставьте их (paste) в новую или уже существующую диаграмму. Когда Вы копируете объект, то вся информация об этом объекте 'вспоминается' и тоже копируется. Поэтому если Вы, например, копируете две сущности, между которыми есть связь, в другую диаграмму, то копируются не только сами сущности и связь, но и другая связанная с ними информация: определения, notes, примеры экземпляров, глагольные фразы, ограничения целостности, данные физической схемы и индексные данные.
Копирование сущностей
Всякая отдельная сущность или группа сущностей в ERwin может быть скопирована. Когда Вы копируете и родительскую, и дочернюю сущность связи, то сама связь (или связи) между этими сущностями тоже копируется.
При начале работы с новой диаграммой ERwin использует СУБД-ориентированную информацию, задаваемую по умолчанию, которую Вы задали в редакторе Target Server. Эта информация определяет. каким образом будет обрабатываться информация физической схемы.
При смене СУБД ERwin предлагает автоматически преобразовать тип данных, связанный с каждым атрибутом, на ближайший доступный для новой СУБД. Для того, чтобы произвести автоматическое преобразование, просто нажмите 'Yes' в ответ на запрос ERwin.
Если Вы отвечаете 'Yes', то ERwin преобразует все типы данных на Вашей диаграмме в эквивалентные типы данных для Вашей СУБД. Если вы отвечаете 'No', то ERwin сохраняет типы данных, которые Вы присвоили для ранее выбранной СУБД.
Обратите внимание, что автоматическое преобразование типов данных в ERwin легко впоследствии отменить. Если Вы ответили 'Yes', то потом можете передумать и вернуться к типам данных, которые требуются для ранее выбранной Вами СУБД. ERwin автоматически преобразует типы данных каждый раз, когда Вы изменяете СУБД.
Если Вы отвечаете 'Yes' и не находится ни одного подходящего типа данных в новой СУБД для одного или нескольких атрибутов Вашей модели данных (например, исходная СУБД поддерживает графический тип данных, а в новой СУБД нет эквивалента этому типу), ERwin спрашивает, хотите ли Вы сгенерировать отчет со списком непреобразуемых типов данных.
Отвечайте 'Yes', чтобы просмотреть отчет о преобразовании типов данных, и 'No' - чтобы игнорировать сообщение о непреобразуемых типах данных. Если Вы отвечаете 'Yes', то ERwin автоматически выводит на экран соответствующее окно-диалог Report, в котором выбраны нужные функции. Нажмите 'Preview...', 'Print...' или 'Report' для просмотра отчета, вывода его на печать либо сохранения его в лисковом файле.
Поставив метки в окне Datatype Mapping Exception Report, дайте команду '<DB> Database Schema...' в меню Editor для входа в редактор Database Schema и преобразования вручную типов данных для колонок физической схемы в типы данных, которые поддерживаются Вашей новой СУБД.
Ниже приводится исходный код шаблона для создания триггера Entity Override Child-Insert для сущности ORDER-LINE. Новый код, используемый для добавления order-quantity к prooduct-sold-quantity, вставляется сразу же после выражения %ForEachChildRel, поскольку сущность ORDER-LINE является дочерней в связи между ORDER-LINE и PRODUCT. Вставляемый код приводится ниже.
сreate trigger %TriggerName on %TableName
for %Actions(',')
as
/* %Actions(',') trigger on %TableName */
/* default body for %TriggerName */
begin
declare @numrows int,
@nullcnt int,
@validcnt int,
%PKDecl(,@ins),
@errno int,
@errmsg varchar(255)
select @numrows = @@rowcount
%ForEachChildRel(){
%RelTemplate
}
%ForEachParentRel(){
%RelTemplate
}
return
error:
raiserror @errno @errmsg
rollback transaction
end
go
Рис. 16.15.
Код измененного шаблона, включающий в себя специальный код (он выделен), нужный для того, чтобы изменять значение product-sold-quantity в таблице PRODUCT каждый раз при добавлении новой строки в таблицу ORDER LINE, показан ниже. Для того чтобы просмотреть расширенный код после того, как шаблон, заданный по умолчанию, изменен, щелкните по окну Expanded Code.
сreate trigger %TriggerName on %TableName
for %Actions(',')
as
/* %Actions(',') trigger on %TableName */
/* default body for %TriggerName */
begin
declare @numrows int,
@nullcnt int,
@validcnt int,
%PKDecl(,@ins),
@errno int,
@errmsg varchar(255)
select @numrows = @@rowcount
%ForEachChildRel(){
%RelTemplate
%if (%==(%VerbPhrase,is requested on)){
update %Parent from %Parent,inserted
set product-sold-quantity = %Parent.product-sold-quantity
+inserted.order-quantity
where
%JoinFKPK(inserted,%Parent)
}
}
%ForEachParentRel(){
%RelTemplate
}
return
error:
raiserror @errno @errmsg
rollback transaction
end
go
Рис. 16.16
Далее приводится расширенный код триггера, где Вы можете увидеть реальные значения, которые заменили макропеременные, использованные в коде шаблона. Обратите внимание, что специальный код, изменяющий таблицу PRODUCT, дублируется в каждом триггере Child-Insert, связанном с сущностью ORDER-LINE.
Редакторы 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'.
ERwin автоматически создает для каждой связи физическое имя связи, присваиваемое по умолчанию, которое основано на начальных буквах логическкой глагольной фразы, связанной со связью. Вы можете изменить имя связи, присвоенное по умолчанию, в редакторе Relationship. Но это имя не должно содержать пробелов (в имени, присваиваемом по умолчанию, вместо пробела ставится знак подчеркивания). Длина физического имени связи ограничивается Вашей СУБД.
Как изменить физическое имя связи
1. Выберите связь, щелкнув по линии связи, и нажмите правую кнопку мыши для входа в pop-up меню Editor.
2. Дайте команду меню Editor 'Relationship Definition' для входа в редактор Relationship Definition для выбранной связи.
3. Щелкните по текстовому окну 'Relationship Physical Name'. Передвигая мышь, выделите старое имя и нажмите Delete, чтобы его удалить.
4. Введите физическое имя, которое хотите присвоить связи, и нажмите 'OK' для сохранения нового имени. Нажмите 'Cancel' для отмены изменения и восстановления старого физического имени.
Вы можете также отредактировать физическое имя связи в редакторе Referential Integrity.
Если Вы генерируете физическую схему, Вы можете включить как часть схемы любые индексы, определенные Вами в ERwin. ERwin автоматически преобразует определения индексов в выражения схемы и вставляет информацию о заданных параметрах с соблюдением синтаксиса.
Групповое окно 'Index Option' в редакторе Schema Generation Report позволяет Вам выбирать индексы, которые ERwin будет включать в схему при генерации. Редактор Schema Generation Report содержит все режимы индексирования, поддерживаемые производителем СУБД.
Для того чтобы включить индекс в схему, поставьте метку Х в окно check box рядом с каждым режимом индексирования Index Option. Чтобы исключить индекс из схемы, щелкните по окну и уберите метку.
ERwin генерирует выражения физической схемы для индексов Primary Key, Alternate key, Foreign Key, Inversion Entry Key и Clustered.
ERwin также генерирует выражения физической схемы для объектов физической памяти, если эта возможность поддерживается Вашей СУБД и если она была Вами задана в редакторе Schema Generation Report.
Выбрав все режимы индексирования, которые вы хотите включить в Вашу схему, Вы можете затем просмотреть выражения физической схемы, нажав для этого кнопку 'Preview' в редакторе Schema Generation Report.
Более подробно о возможностях, доступных при индексировании, см. документацию по Вашей СУБД.
Если у Вас установлена СУБД ORACLE или SYBASE и если при этом задан любой из режимов Physical Storage, то параметры физического хранения индексов будут включены в физическую схему, в выражения схемы. Если у Вас установлена СУБД NetWare, то для включения выражений для первичного ключа в схему используется режим 'WITH INDEX'.
Как генерировать индексы в схеме
1. Откройте ту диаграмму ERwin, из которой Вы хотите генерировать физическую схему.
2. Дайте команду меню Server 'Target Server...' и выберите СУБД, которой Вы пользуетесь. отвечайте 'Yes', когда ERwin спросит Вас, хотите ли Вы преобразовать типы данных в типы данных выбранной СУБД.
3. Дайте команду меню Server '<DB> Schema Generation...', чтобы войти в редактор Schema Generation Report Options.
Если Вы генерируете физическую схему в ORACLE, то Вы можете включить любую базу данных, табличное пространство или сегменты отката, которые Вы определили в ERwin, как часть схемы. ERwin автоматически транслирует определения физических объектов в команды CREATE TABLE, CREATE TABLESPACE, CREATE ROLLBACK SEGMENT и вставляет информацию о заданных параметрах с соблюдением синтаксиса SQL.
Когда Вы генерируете физическую схему, ERwin сначала создает заданные родительские объекты памяти, затем - дочерние объекты памяти и физические таблицы, расположенный по заданным адресам в памяти.
Как сгенерировать объекты физической памяти
1. Откройте диаграмму ERwin, из которой Вы хотите сгенерировать физическую схему.
2. Дайте команду 'Target Server...' в меню Server и выберите 'ORACLE'. Отвечайте 'Yes', когда ERwin спросит Вас, хотите ли Вы преобразовать типы данных в типы данных ORACLE.
3. Дайте команду 'ORACLE Schema Generation...' в меню Server для входа в окно-диалог Schema Generation Report Options.
4. Используя необходимые окна или кнопки в диалоге Schema Generation Report Options, задайте типы объектов ERwin, которые Вы хотите включить в схему.
Групповое окно 'Schema Options' содержит окна check box, с помощью которых Вы указываете, какие объекты физической памяти включить в схему. Поставьте метки в окнах 'DATABASE', 'TABLESPACE' и (или) 'ROLLBACK SEG', чтобы задать те объекты физической памяти, которые Вы хотите сгенерировать как часть схемы базы данных.
5. Закончив задание режимов генерации схемы, нажмите кнопку 'Preview...', если Вы хотите просмотреть определения данных на экране перед созданием физической схемы. Вернувшись в диалог Schema Generation Report Options, Вы можете изменить режимы отчета, если это нужно.
6. Когда Вы окончательно завершите выбор режимов, нажмите кнопку 'Generate...' и начните генерацию схемы. Введите свое имя пользователя, пароль и другую требуемую информацию для подсоединения к базе данных и нажмите кнопку 'Connect'.
ERwin начинает генерацию схемы немедленно после того, как Вы подсоединитесь к базе данных.
В процессе генерации схемы ERwin выдает на экран сообщение о состоянии каждой таблицы, которую он пытается создать. После того как генерация схемы закончена, ERwin выводит на экран сообщение, в котором содержится число успешно созданных таблиц и число неудачно завершивгихся попыток создания таблиц.
После того как Вы сгенерировали физический объект, как часть схемы, Вы можете изменить имя объекта, но Вы не можете изменить значения параметров, присвоенные этому объекту в ERwin. Если Вы хотите изменить параметры физического объекта, то создайте новый объект и заново свяжите все таблицы ERwin с новым объектом памяти. После этого удалите старый объект и произведите повторную генерацию схемы.
См. Гл.18, Прямое и обратное проектирование, разд. 'Генерация схемы базы данных'.
Если Вам удобнее пользоваться клавиатурой, чем мышью, Вы можете пользоваться командами просмотра диаграмм ERwin, доступными с клавиатуры. Ниже приводится таблица, содержащая команды прокручивания диаграммы. Это то же самое, как если бы Вы двигали scroll bar в окне ERwin с помощью мыши. Если указано две клавиши через черточку, например CTRL-Стрелка вправо, это значит, что нужно нажать CTRL и, не отпуская ее, нажимать клавишу 'стрелка вправо'.
ДЕЙСТВИЕ | КАКИЕ КЛАВИШИ НУЖНО НАЖАТЬ |
Перейти на следующую страницу диаграммы | Page Down |
Перейти на следующую строку диаграммы | Стрелка вниз |
Перейти на предыдущую страницу диаграммы | Page Up |
Перейти на предыдущую строку диаграммы | Стрелка вверх |
Перейти на одну страницу вправо | CTRL-Стрелка вправо |
Перейти на один шаг вправо | Стрелка вправо |
Перейти на одну страницу влево | CTRL-Стрелка влево |
Перейти на один шаг влево | Стрелка влево |
<
ERwin предоставляет Вам browser объектов, который позволяетВам просмтаривать, сортировать и изменять информацию до того, как Вы создадите отчет. Browser позволяет Вам просматривать информацию, содержащуюся в диаграмме, в удобном текстовом формате. Использование browser может помочь Вам решить, какую информацию включить в отчет и в каком порядке Вы хотите расположить эту информацию.
Диалоги, которые использует ERwin для просмотра сущностей, связей и атрибутов, несколько различаются между собой. Хотя тот browser, который Вы выбираете, определяет тип информации, которую Вы можете просматривать и редактировать, но в каждом случае Вы используете метод 'Point and Click' для задания режимов и редактирования информации. Из любого окна-диалога browser Вы можете обращаться к редакторам объектов ERwin, фильтру отчетов Report Filter и редактору Report, нажимая для этого на соответствующие кнопки.
Для просмотра и редактирования информации в browser дайте одну из команд меню Report: 'Entity Browser...', 'Attribute Browser...' или 'Relationship Browser...'. Пользуйтесь управляющими функциями browser для просмотра и редактирования информации. Когда у Вас получится то, что Вы хотели, нажмите кнопку 'Report' для входа в редактор Report или кнопку 'Close' для выхода в диаграмму.
Ниже приводится таблица, указывающая, какую информацию Вы можете просматривать и редактировать для сущностей, атрибутов и связей.
Обзор возможностей ERwin Browser
Тип Browser | Доступные возможности |
Entity | Просмотр всех сущностей в текущей области. Редактирование имени и определения сущности. Удаление сущности. Вход в Report Filter для выбора сущностей, которые будут включены в отчет. Вход в редакторы, ориентированные на сущности, для изменения характеристик сущности. Вход в редактор Report для создания отчета Attribute Report. |
Attribute | Вывод на экран списка всех атрибутов текущей области, отсортированных по имени сущности, имени роли, базовому имени и статусу. Редактирование определения атрибута. Вход в Report Filter для выбора сущностей, которые будут включены в отчет. Вход в редакторы, ориентированные на атрибуты, для изменения характеристик атрибута. Вход в редактор Report для создания отчета Attribute Report. |
Relationship | Вывод на экран списка всех связей текущей области в логическом или физическом представлении. Сортировка логической информации о связях по родительской сущности, глагольной фразе, дочерней сущности или внешнему ключу. Сортировка физической информации о связях по родительской таблице, физическому имени связи, дочерней таблице и имени колонки. Редактирование определения связи. Вход в Report Filter для выбора связей, которые будут включены в отчет. Вход в редакторы, ориентированные на связи, для изменения характеристик связи. Вход в редактор Report для создания отчета Relationship Report. |
Представление | Порядок сортировки по умолчанию |
Логическое | 1) Родительская сущность 2) Глагольная фраза 3) Дочерняя сущность 4) Внешний ключ |
Физическое | 1) Родительская таблица 2) Физическое имя связи 3) Дочерняя таблица 4) Имя колонки или Внешний ключ |
В обоих редакторах - Object Font/Color и Default Font/Color - есть окно Preview для просмотра результатов изменений применительно к текущей диаграмме. Как правило, Вы можете просматривать результаты изменений, не выходя из редактора.
Кнопка 'Maximize' в окне Preview позволяет Вам расширить диаграмму при просмотре. увеличение размера окна до максимального может помочь Вам найти то место на диаграмме, к которому применимы изменения шрифтов и (или) цветов.
Находясь в окне Preview, Вы можете вызывать и использовать большую часть возможностей демонстрации изображения в ERwin. Например, если Вы изменили цвет группы объектов Entity Definition и хотите просмотреть результаты, то Вы можете войти в меню Display, находясь в окне Preview, и установить режим просмотра Entity Definition.
Хотя окно 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).
Кроме раскручивающегося (pull-down) меню Editor, ERwin предлагает еще сокращенную версию этого меню. Если Вы щелкнете правой кнопкой мыши по объекту, находящемуся в окне диаграммы, то на экране появится сокращенная, контекстно-чувствительная версия меню Editor, содержащая только те команды и режимы, которые подходят для типа выбранного объекта.
Например, если Вы щелкнете правой кнопкой мыши по связи между сущностями MOVIE и MOVIE-COPY, то на экране появится часть меню Editor, относящаяся к объекту-связи.
Содержимое версии pop-up меню Editor различается в зависимости от того, какой тип объекта выбран.
ERwin предлагает набор специальных окон-диалогов (они называются редакторами), которые используются для определения характеристик сущности, атрибута, связи или другого объекта на диаграмме. Если Вы щелкнете по объекту, чтобы выбрать его в окне диаграммы, а затем дадите команду меню Editor, то ERwin откроет соответствующий редактор, в котором Вы сможете задать характеристики выбранного объекта. Например, Вы щелкнули по объекту MOVIE-COPY на диаграмме MOVIES.ER1, а затем дали команду Entity Definition в меню Editor. Тогда ERwin откроет редактор Entity Definition.
Каждый редактор ERwin содержит специальный набор управляющих функций, позволяющих Вам задавать характеристики, применимые к данному типу объекта. Например, редактор Relationship Definition позволяет Вам вводить глагольную фразу, кратко определяющую назначение связи и используемую на диаграмме, а также более подробное текстовое определение связи.
Как пользоваться меню Editor
ERwin содержит две версии меню Editor, которое используется для вызова редакторов характеристик объектов. Меню Editor может изображаться на экране, как:
· Раскручивающееся (pull-down) меню в главной строке меню.
· Меню pop-up, которое появляется, когда Вы щелкаете правой кнопкой мыши по объекту, находящемуся в окне диаграммы.