программа. 1 ПРОГРАММА ERWIN. 1 программа erwin
Скачать 0.52 Mb.
|
Цель работы: генерация схемы базы данных. Задачи работы: освоить приемы генерирования схемы базы данных для выбранной СУБД. Содержание работы: задание ссылочной целостности; выбор типа СУБД; генерация схемы базы данных. 2.4.1 Теоретическая часть При создании логической модели данных посредством ERwin происходит автоматическая генерация физической модели. Физическая модель содержит всю информацию, необходимую для реализации конкретной БД. Перед генерацией схемы БД целесообразно для каждой будущей колонки задать правило валидации – список допустимых значений для конкретной колонки и/или правила проверки вводимых значений. Можно задать максимальное и минимальное значение и тип валидации (где проверять – на сервере или в клиентском приложении). Например, в таблице CUSTOMER значение, вводимое в колонку «Age», должно быть больше 18, но меньше 100. Для описания этого бизнес-правила можно создать правило валидации с именем «Проверка _ возраста», которое содержит выражение: Age BETWEEN 18 AND 100. Использование этого правила гарантирует, что диапазон вводимых значений будет от 18 до 100. СУБД выдаст сообщение об ошибке, если вводимый возраст находится вне границ заданного диапазона. ERwin позволяет создавать представления или, как их иногда называют, временные или производные таблицы, которые представляют собой объекты БД, данные в которых не хранятся постоянно, как в таблице, а формируются динамически при обращении к представлению. Представление не может существовать само по себе, а определяется только в терминах одной или нескольких таблиц. Применение представлений позволяет разработчику БД обеспечить пользователю свой взгляд на данные, что решает проблему простоты использования данных. 2.4.2 Пример выполнения лабораторной работы Рассмотрим последовательность действий, необходимых для генерации базы данных. Задать правила ссылочной целостности. Для этого, находясь на логическом уровне модели данных, вызовите контекстное меню связи и выберите пункт «Relationship Properties» (или, выделив связь, выберите пункт главного меню «Model/Relationships»). На закладках «Rolename/RI Actions» в группе «RI Actions» необходимо установить нужные значения. Триггеры представляют собой программы, выполняемые всякий раз при выполнении команд вставки, замены или удаления (Insert, Update или Delete). Возможна установка следующих правил удаления (рисунок 2.15): Restrict – «ограничение». При попытке выполнить удаление (вставку, замену) сервер реляционной СУБД возвратит ошибку. Например, существует идентифицирующая связь между сущностями Команда и Игрок. Что будет, если удалить команду? Экземпляр сущности Игрок не может существовать без команды. Следовательно, нужно запретить удаление команды, пока в ней числится хотя бы один игрок (для удаления команды сначала удалить всех игроков); Cascade «каскад». При удалении (вставке, замене) значений первичного ключа родительской сущности будут удалены все экземпляры дочерней сущности с соответствующими значениями атрибута внешнего ключа. Например, можно удалять вместе с командой всех ее игроков; Set default. При удалении атрибуту внешнего ключа присваивается значение по умолчанию. Например, при удалении команды игроки могут быть переведены в другую команду; None. При удалении значение атрибута внешнего ключа не меняется. Например, запись об игроке «повисает в воздухе», то есть ссылается на несуществующую уже команду. Рисунок 2.15 Группа «RI Actions» Переключиться на физический уровень модели, для чего в раскрывающемся списке, расположенном в правой части панели инструментов, выберите пункт «Physical». Выбрать сервер командой «Database/Choose Database».. В диалоговом окне ERwin/ERX – «Target Server» выберите одну из предлагаемых СУБД (рисунок 2.16). Рисунок 2.16 – Выбор СУБД Выбрать правила валидации: а) вызовите контекстное меню таблицы и выберите пункт «Columns»; в диалоговом окне «Columns», в поле «Column» выберите колонку, для которой будет задаваться правило; б) перейдите на закладку выбранной СУБД и щелкните по кнопке, расположенной справа от раскрывающегося списка «Valid»; в диалоге «Validation Rule Editor» задайте имя правила в поле «Name» и определите нижнюю и верхнюю границы диапазона значения; в) задайте список допустимых значений: в диалоге «Validation Rule Editor» введите имя правила в поле «Name», а затем в диалоговом окне «Validation Value Editor», щелкая по кнопке в поле «New», сформируйте список допустимых значений, вводя определение в поле «Value Definition» для каждого значения; г) задайте значение, которое по умолчанию будет присваиваться колонке: в диалоговом окне «Column Editor» на закладке выбранной СУБД, щелкните по кнопке, расположенной справа от раскрывающегося списка «Default» (рисунок 2.17); затем в диалоговом окне «Defaul/Initial Editor» с помощью кнопки «New» определите имя для правила, а в поля «Server Value» и «Client Value» внесите значения для клиентской части и сервера. Рисунок 2.17 – Определение правил валидации Запустить процесс генерации схемы БД, выбрав пункт системного меню «Tools/Schema generation» (рисунок 2.18). Рисунок 2.18 – Генерация схемы базы данных После нажатия на кнопку «Generate…» открывается окно с результатами работы. Из рисунка 2.19 видно, что обнаружены ошибки, которые необходимо устранить. В данном примере ошибки возникли вследствие неуникальности названий атрибутов сущности (рису- нок 2.19). Рисунок 2.19 – Сообщения об ошибках После исправления ошибок повторить процесс генерации. Из отчета процесса генерации, показанного на рисунке 2.20, видно, что схемы базы данных успешно сгенерированы. Рисунок 2.20 – Отчёт процесса генерации |