Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методичка Коваленко_2.doc
Скачиваний:
63
Добавлен:
02.05.2015
Размер:
3.43 Mб
Скачать

5.3. Генерация базы данных физического уровня в среде субд Access

Подготовка к генерации базы данных физического уровня начинается с создания пустой БД в среде той СУБД, куда планируется генерировать ER-диаграмму. Для этого надо запустить СУБД Access, выполнить команду на создание новой БД, присвоить ей имя и сохранить (рис. 28).

Рис. 28. Пустая БД с именем test_db в СУБД Access

Затем открываем ER-диаграмму в среде ERwin и с помощью списка выбора в стандартной панели инструментов производим переключение между логической и физической моделью (рис.29). При переключении, если физической модели еще не существует, она будет создана автоматически. Теперь надо выбрать СУБД, в которой будем производить генерацию БД физического уровня. Для этого следует выполнить команду DATABASE / Choose database, в появившемся диалоговом окне (рис. 30) выбрать интересующую СУБД Access и щелкнуть по кнопке <ОК>.

Рис. 29. Физическая модель БД в ERwin

Для установления соединения БД изERwincцелевой СУБДAccessнеобходимо выполнить командуDATABASE/Database connection. В появившемся диалоговом окне (рис.31) необходимо указать путь к БД в СУБДAccess, вписать имяadminи нажать кнопкуConnect. Для генерации БД физического уровня в среде СУБДAccessнеобходимо выполнить командуTOOLS / Forward Engineering / Schema Generation.В результате получаем диалог генерации схемы БД (рис. 32), который имеет 3 закладки:

Рис. 30. Диалог выбора СУБД (сервера)

Рис. 31. Диалог присоединения к СУБД Access

Options.Служит для задания опций генерации объектов базы данных - триггеров, таблиц, представлений, колонок, индексов и т.д. Для задания опций генерации какого-либо объекта следует выбрать объект в левом списке закладки, после чего включить соответствующую опцию в правом списке.

Рис. 32. Диалог генерации схемы БД

Во вкладке Summary отображаются все опции, заданные во вкладкеOptions. Список опций вSummary можно редактировать так же, как и вOptions.

Comment позволяет внести комментарий для каждого набора опций. Каждый набор опций может быть именован (окноOptionSet, кнопкиNew,RenameиDelete) и использован многократно.

' CREATE TABLE "prodavec"

Set ERwinTableDef = ERwinDatabase.CreateTableDef("prodavec")

Set ERwinField = ERwinTableDef.CreateField("IDprod", DB_LONG)

ERwinTableDef.Fields.Append ERwinField

Set ERwinField = ERwinTableDef.CreateField("fio", DB_TEXT, 20)

ERwinTableDef.Fields.Append ERwinField

Set ERwinField = ERwinTableDef.CreateField("vozrast", DB_TEXT, 20)

ERwinTableDef.Fields.Append ERwinField

Set ERwinField = ERwinTableDef.CreateField("adress", DB_TEXT, 20)

' CREATE TABLE "tovar"

Set ERwinTableDef = ERwinDatabase.CreateTableDef("tovar")

Set ERwinField = ERwinTableDef.CreateField("IDtov", DB_LONG)

ERwinTableDef.Fields.Append ERwinField

Set ERwinField = ERwinTableDef.CreateField("naimenovanie", DB_LONG)

ERwinTableDef.Fields.Append ERwinField

Set ERwinField = ERwinTableDef.CreateField("cena", DB_LONG)

ERwinTableDef.Fields.Append ERwinField

Set ERwinField = ERwinTableDef.CreateField("proizvoditel", DB_TEXT, 20)

Рис. 33. Программа генерации таблиц БД (SQL-скрипты)

Кнопка Preview вызывает диалог Schema Generation Preview, в котором отображается SQL-скрипт, создаваемый ERwin для генерации системного каталога СУБД (рис. 33).

Кнопка Printдиалога предназначена для вывода на печать создаваемогоERwinSQL-скрипта.

Кнопка Reportсохраняет тот же скрипт вERS- илиSQL-текстовом файле. Эти команды можно в дальнейшем редактировать любым текстовым редактором и выполнять при помощи соответствующей утилиты сервера.

Рис. 34. ДиалогGenerateDatabaseSchema

Нажатие на кнопку Generateприведет к запуску процесса генерации схемы. Возникает диалог связи с базой данных, устанавливается сеанс связи с сервером-базы данных (СУБДAccess), и начинает выполнятьсяSQL-скрипт. При этом возникает диалогGenerate Database Schema(рис. 34).

По умолчанию в диалоге Generate Database Schemaвключена опцияStop If Failure. Это означает, что при первой же ошибке выполнение скрипта прекращается. Щелкнув по кнопкеContinue, можно продолжить выполнение. КнопкаAbortпрерывает выполнение. При выключенной опцииStop If Failureскрипт будет выполняться, несмотря на встречающиеся ошибки.

Для выполнения обратного проектирования следует выбрать пункт меню Tools/Reverse Engineer.

После выполнения скриптов (рис. 33) в среде СУБД Access создается БД физического уровня (рис. 36).

Рис. 36. Структура БД физического уровня в СУБД Access

Таким образом, на основе физической модели ERwinможно сгенерировать системный каталог СУБД или соответствующийSQL-скрипт. Этот процесс называется прямым проектированием (ForwardEngineering). Тем самым достигается масштабируемость - создав одну логическую модель данных, можно сгенерировать физические модели под любую поддерживаемуюERwinСУБД. С другой стороны,ERwinспособен по содержимому системного каталога илиSQL-скрипту воссоздать физическую и логическую модель данных (ReverseEngineering).

На основе полученной логической модели данных можно сгенерировать физическую модель для другой СУБД и затем сгенерировать ее системный каталог.