ERwin. Опыт использования.. Учебное пособие по дисциплинам информационные системы в экономике, проектирование информационных систем
Скачать 3.87 Mb.
|
№ Свойство правила Значение правила проверки 1 Логическое имя Проверка оценки 2 Физическое имя Rule_ozenka 3 Описание правила Оценка может принимать только одно из 6 значений: 0, 1, 2, 3, 4 или 5 4 Тип правила Valid Value List 5 Допустимые значения 0,1,2,3,4,5 127 Рис. 121. Диалог Validation Rules. Для создания значений по умолчанию в меню Model следует выбрать пункт Default Values. В открывшемся диалоге Default Values щелкните по кнопке New. В открывшемся диалоге New Default Value введите в строке Logical логическое имя значения по умолчанию: « Балл по умолчанию », в строке Physical введите физическое имя значения по умолчанию: « De- fault_ball », затем нажмите ОК, чтобы вернуться в диалог Default Values. В закладке Definition введите описание значения по умолчанию: « По умолчанию Количество набранных баллов = 0, Оценка = 0 и т.п ». В закладке General в поле Default Value введите значение: « 0 ». Аналогично добавьте еще одно значение по умолчанию « Правиль- ность по умолчанию », используя табл. 29 и рис. 122. Нажмите ОК, чтобы закрыть диалог Default Values. Таблица 29. Свойства значений по умолчанию. № Свойство значения по умолчанию Значение свойства 1 Логическое имя Балл по умолчанию Физическое имя Default_ball Описание По умолчанию Количество набранных баллов = 0, Оценка = 0 и т.п. Значение по умолчанию 0 128 2 Логическое имя Правильность по умолчанию Физическое имя Default_Pravilnost Описание По умолчанию вариант ответа считается ошибочным, т.е. False Значение по умолчанию 0 Рис. 122. Фрагмент диалога Default Values. Проанализируйте структуру навигатора модели Model Explorer. Обра- тите внимание, что в разделах Default Values и Validation Rules навигатора появились новые записи (рис. 123). Рис. 123. Новые записи в навигаторе модели. 6. Уточните свойства атрибутов модели (табл. 30). Для добавления правила проверки к атрибуту следует в диалоге Attribute перейти к заклад- ке Constraint и в разделе Validation Constraint в выпадающем списке Valid выбрать требуемое правило (рис. 124). Для добавления значения по умол- чанию к атрибуту в той же закладке в разделе Default в выпадающем спис- ке Default следует выбрать требуемое значение по умолчанию (рис. 124). 129 Таблица 30. Дополнительные свойства атрибутов. № Свойство атрибута Значение свойства 1 Имя атрибута Оценка за тест Сущность Тест студента Описание атрибута Оценка студента за тест Правило проверки Проверка оценки Значение по умолчанию Балл по умолчанию 2 Имя атрибута Набранные баллы Сущность Тест студента Описание атрибута Количество баллов, набранных студентом за тест. Значение по умолчанию Балл по умолчанию 3 Имя атрибута Правильность варианта Сущность Вариант ответа Описание атрибута Указывает, является ли вариант ответа на вопрос верным или ошибочным Значение по умолчанию Правильность по умолчанию 4 Имя атрибута Правильность варианта Сущность Вариант ответа студента Описание атрибута Указывает, является ли вариант ответа на вопрос теста, выбранный студентом, вер- ным или ошибочным Значение по умолчанию Правильность по умолчанию Рис. 124. Обновленные свойства атрибута «Оценка за тест». 130 7. В результате анализа возможных запросов к проектируемой базе данных для ускорения поиска часто запрашиваемых данных было решено добавить ряд альтернативных и инверсных ключей, чтобы на их основе сгенерировать индексы. Для создания альтернативных и инверсных ключей следует в меню Model выбрать пункт Key Groups. В диалоге Key Groups в разделе Entity следует выбрать нужную сущность (рис. 125) и щелкнуть по кнопке New. Рис. 125. Фрагмент диалога Key Groups. В диалоге New Key Group в разделе Key Group Type установите пере- ключатель на нужный тип ключа: альтернативный (Alternate Key) или ин- версный (Inversion Entry), затем в строке Key Group введите логическое имя ключа (рис. 126) и нажмите ОК. Рис. 126. Диалог New Key Group. В закладке Members диалога Key Groups (рис. 125) из списка Available Attributes следует выбрать атрибуты и с помощью кнопки добавить их в список атрибутов, вошедших в ключ (Key Group Members); нажмите ОК. 131 Следуя рассмотренному выше алгоритму, создайте дополнительные ключи в модели данных согласно табл. 31. Таблица 31. Свойства дополнительных ключей модели. № Название ключа Тип ключа Сущность Атрибуты ключа 1 АльтКлСтудент Альтернатив- ный Студент Имя студента Фамилия студен- та Отчество студен- та Код группы 2 ИнвКлСтудент Инверсный Студент Код группы 3 ИнвКлТест Инверсный Тест Автор теста 4 ИнвКлТест студента Инверсный Тест студента Оценка за тест На рис. 127 показан фрагмент модели с дополнительными ключами в хранимом отображении «Атрибуты». Рис. 127. Фрагмент модели в хранимом отображении «Атрибуты». 8. Сохраните файл полученной полно атрибутивной модели данных под именем « лаба 5-атрибуты ». 6. Проработка физического уровня модели Цель данного этапа – доработать модель, созданную на предыдущем этапе, усовершенствовать физический уровень модели, подготовить мо- дель к прямой генерации. 1. Откройте файл « лаба 5-атрибуты.erwin ». 2. Создайте новое хранимое отображение. Для этого в диалоговом окне Stored Displays (меню Format/Stored Display Settings) в закладке Gen- eral щелкните по кнопке New и введите имя хранимого отображения « Фи- зический » и нажмите ОК, введите свою фамилию в строку ввода Author, снимите флажок Logical Model и флажок Display Shadows (рис. 128). Затем перейдите к закладке Physical и установите опции как показано на рис. 129, нажмите ОК, чтобы закрыть диалог Stored Displays. Можно изменить рас- положение таблиц и линий связи на диаграмме в новом хранимом отобра- жении. 132 Рис. 128. Закладка General диалога Stored Display. Рис. 129. Закладка Physical диалога Stored Display. 133 3. Скорректируйте свойства домена ид на физическом уровне. Для этого в меню Model следует выбрать пункт Domain Dictionary. В открыв- шемся диалоге Domain Dictionary в закладке General требуется переклю- читься на физический уровень модели, в списке Domain выбрать домен «ид», в строке Name Inherited by Column изменить правило наследования имени колонки из имени атрибута как показано на рис. 130. Благодаря этому имя колонки будет автоматически копироваться из имени соответ- ствующего атрибута. Рис. 130. Свойства домена «ид» на физическом уровне. 4. Скорректируйте свойства колонок ид_Тест и ид_Студент на фи- зическом уровне. Для этого находясь в хранимом отображении «Физиче- ский» в меню Model следует выбрать пункт Columns. В открывшемся диа- логе Columns в списке Table выбрать таблицу Тест, в списке Column вы- брать колонку ид_Тест, в закладке SQL Server и установить переключа- тель Null Option в значение IDENTITY (уникальный), добавив свойства « 1,1 » как показано на рис. 131. Следует выполнить аналогичные действия для колонки ид_Студент в таблице Студент. В результате значения ко- лонок ид_Тест и ид_Студент будут автоинкрементными, т.е. будут ав- томатически заполняться уникальными целочисленными значениями, начиная с 1 с приращением 1. 134 Рис. 131. Дополнительные свойства колонки «ид_Тест». 5. Создайте представление (View) для отображения ведомости по ре- зультатам тестирования студентов группы 4Б1. Для этого на физическом уровне на панели инструментов AllFusion ERwin следует выбрать инстру- мент View и разместить новое представление на диаграмме. Назовите созданное представление Ведомость_4Б1 . С помощью инструмента добавьте три линии связи между представлением и таблицами: Тест, Сту- дент, Тест_Студента (рис. 132). Рис. 132. Связи представления и таблиц. Щелкните правой кнопкой мышки по представлению, в появившемся контекстном меню щелкните по пункту Database View Properties (свойства представления) и далее по пункту From как показано на рис. 133. В резуль- 135 тате откроется диалог Views на закладке From, в которой будут перечисле- ны таблицы, с которыми связано представление (рис. 134, раздел From). С помощью этого диалога можно изменить состав связей представления. Рис. 133. Контекстное меню свойств представления (View). Рис. 134. Закладка From диалога View. Добавьте в представление новые колонки с помощью закладки Select диалога View (в контекстном меню на рис. 133 выбрать пункт Select). Шесть из семи колонок представления скопируйте с помощью кнопки из списка Available Tables/Views в список View Columns (см. табл. 32). Таблица 32. Колонки представления «Ведомость_4Б1». № Имя колонки Имя таблицы 1 Код_группы Студент 2 Дата_тестирования Тест_студента 3 Ид_Студент Студент 136 5 Название_теста Тест 6 Набранные_баллы Тест 7 Оценка_за_тест Тест Седьмая колонка ФИО является вычисляемой: она получается в ре- зультате сложения строковых значений колонок Фамилия_студента, Имя_студента и Отчество_студента из таблицы Студент. Для добав- ления вычисляемой колонки ФИО к представлению следует щелкнуть по кнопке New Expression и в появившемся диалоге New View Column (рис. 135) ввести имя новой колонки ( ФИО ) и выражение ( Фамилия_студента + ' ' + Имя_студента + ' ' + Отчество_студента ), затем нажать ОК. Рис. 135. Диалог New View Column. После добавления всех семи колонок измените их порядок в списке View Columns с помощью кнопок , установите опцию Distinct как показано на рис. 136. После этого переключитесь в закладку Where диалога View и в раздел Where вставьте фрагмент SQL-кода: (Тест_студента.ид_Студент = Сту- дент.ид_Студент) and (Тест_студента.ид_Тест = Тест.ид_Тест) and (Студент.Код_группы = '4Б1') (рис. 137). Чтобы просмотреть SQL-скрипт, соответствующий колонкам пред- ставления Ведомость_4Б1, перейдите к закладке SQL диалога View (рис. 138). С помощью инструмента из панели графических объектов (Draw- ing Objects) добавьте на диаграмму текстовый блок со следующим содер- жанием: Для каждого студента группы 4Б1: 10.11.2008 студент № 1 Иванов Иван Иванович прошел тест «ERwin Data Modeler 7», набрал 37 баллов и получил «4». Фрагмент диаграммы, соответствующий представле- нию Ведомость_4Б1, показан на рис. 139. 137 Рис. 136. Закладка Select диалога View. Рис. 137. Закладка Where диалога View. 138 Рис. 138. Закладка SQL диалога View. Рис. 139. Фрагмент диаграммы с представлением. 6. Добавьте всем таблицам и представлению модели имя владельца по умолчанию. Для этого в меню Model/Model Properties перейдите к закладке Defaults и щелкните по кнопке Set Default Owners. В появившемся диалоге Set Default Owners (рис. 140) включите опцию Table и в соответствующей строке введите имя владельца таблиц по умолчанию ( modeler1 ), затем нажмите на кнопку Set Owner for all Objects. Появится диалог (рис. 141), 139 требующий подтверждения установки владельца по умолчанию для таб- лиц; нажмите Yes. В появившемся диалоге (рис 142), извещающем об установке владельца по умолчанию для таблиц, нажмите ОК, чтобы вер- нуться в диалог Set Default Owners; нажмите Close, затем ОК. Выполните перечисленные выше действия для установки имени вла- дельца по умолчанию для представлений (View) (рис. 140). Рис. 140. Установка владельца по умолчанию для таблиц и представлений. Рис. 141. Диалог, требующий подтверждения установки владельца по умолчанию для таблиц. Рис. 142. Диалог, извещающий об установке владельца по умолчанию для таблиц. 7. Разрешите отображение свойства Null в колонках на хранимом отображении Физический. Для этого в диалоговом окне Stored Display (ме- ню Format/Stored Display Settings) в списке Stored Displays щелкните по хранимому отображению Физический, переключитесь в закладку Physical и в разделе Table Option установите опцию Null Option, затем нажмите ОК, чтобы закрыть диалог. При необходимости можно оптимизировать распо- ложение объектов на диаграмме. 140 8. Находясь в хранимом отображении Физический, проанализируйте, для каких колонок модели установлено значение Not Null. Установите для колонок Набранные_баллы, Оценка_за_тест таблицы Тест_студента свойство Null в значение Not Null (запретить неопределенные значения). Итоговая диаграмма физического уровня модели показана на рис. 143. 9. Сохраните файл полученной модели данных под именем « лаба 6- физ уровень ». Рис. 143. Итоговая диаграмма физического уровня модели. 7. Генерация каталога базы данных из модели данных 1. Войти в систему как администратор рабочей станции systemezhik с паролем, выданным преподавателем. 2.Запустить инструмент Microsoft SQL Server Enterprise Manager (Пуск/Программы/Microsoft SQL Server/Enterprise Manager). В результате появится диалог SQL Server Enterprise Manager. 3. Запустите SQL Server. Для запуска сервера следует щелкнуть пра- вой кнопкой мышки по имени сервера (local) и в появившемся кон- текстном меню выбрать команду Start как показано на рис. 144. Для под- ключения к серверу в том же контекстном меню выбрать команду Connect. В результате в диалог примет вид как на рис. 145, а пиктограмма рядом с именем сервера примет вид 141 Рис. 144. Запуск сервера. Рис. 145. Разделы сервера. 4. Создайте новую базу данных. Для этого следует щелкнуть правой кнопкой мышки по разделу Database и в появившемся контекстном меню выбрать New Database (рис. 146). В появившемся диалоге Database Properties в закладке General в строке Name введите имя новой базы данных - введите свою фамилию латински- ми буквами, например, Ivanov (рис. 147), затем зажмите кнопку ОК. В ре- зультате создастся новая база данных (рис. 148). 142 Рис. 146. Контекстное меню раздела Database. Рис. 147. Диалог Database Properties. 143 Рис. 148. Отображение новой базы данных (Ivanov). 5. Создайте нового пользователя для своей базы данных. Для этого в разделе Security следует щелкнуть правой кнопкой мышки по пункту Logins и в появившемся контекстном меню выбрать New Login (рис. 149). Рис. 149. Контекстное меню Logins раздела Security. В появившемся диалоге SQL Server Login Properties в закладке General в строке Name введите имя нового пользователя « modeler1 », установите опцию SQL Server Authentication, задайте пароль « modeler1 » (рис. 150). 144 Рис. 150. Закладка General диалога SQL Server Login Properties. Переключитесь в закладку Database Access, установите флажок рядом с именем вашей базы данных, затем добавьте роль db_owner (владелец) (рис. 152); нажмите ОК. В диалоге Confirm Password повторите ввод пароля для нового поль- зователя ( modeler1 ) (рис. 151), нажмите ОК. Рис. 151. Подтверждение пароля в диалоге Confirm Password. 145 Рис. 152. Закладка Database Access диалога SQL Server Login Properties. Результат добавления пользователя показан на рис. 153 (раздел Securi- ty/ Logins). Рис. 153. Результат создания нового пользователя на сервере. Кроме этого в вашей базе данных также можно увидеть нового поль- зователя modeler1 (рис. 154, раздел Database/Ivanov/Users). 146 Рис. 154. Результат добавления пользователя в базу данных Ivanov. 6. Убедитесь, что в каталоге вашей базы данных имеется лишь си- стемная информация: проверьте разделы Tables, Views, Rules, Defaults, Us- er Define Data Types. ================== Прямая генерация ==================== 7. Откройте в ERwin модель « лаба 6-физ уровень.erwin », переключи- тесь в хранимое отображение Физический; убедитесь, что находитесь на физическом уровне модели данных ERwin. 8. Подключитесь из ERwin к вашей базе данных, созданной в SQL Server. Для этого в меню Database требуется выбрать команду Database Connection. В открывшемся диалоге SQL Server Connection (рис. 155) ука- жите тип и версию сервера базы данных ( SQL Server 2000 ), тип аутенти- фикации ( Database authentication ), имя пользователя ( modeler1 ), пароль пользователя ( modeler1 ), имя сервера базы данных ( (local) ), имя вашей ба- зы данных (в рассматриваемом примере - Ivanov ). 9. Запустите инструмент прямой генерации каталога базы данных из модели (меню Tools/Forward Engineer/Schema Generation). Откроется диа- лог Forward Engineer Schema Generation. 10. Настройте опции прямой генерации в открывшемся диалоге. Для простоты большинство опций оставьте без изменений. Скорректируйте лишь опции для разделов Index (рис. 156) и Other Option (рис. 157). 11. Просмотрите SQL-скрипт, который будет сгенерирован ERwin в ходе прямой генерации каталога базы данных. Для этого нажмите кнопку Preview диалога Forward Engineer Schema Generation. Появится диалог SQL Server Schema Generation Preview, в котором отображается скрипт, сгене- рированный из модели ERwin (рис. 158). 147 Рис. 155. Диалог для подключения из ERwin к серверу SQL Server. Рис. 156. Опции прямой генерации для Index. 148 Рис. 157. Опции прямой генерации для Other Option. 12. Сохраните сгенерированный SQL-скрипт как файл « скрипт БД Иванов », чтобы проанализировать его и/или запустить его на выполнение непосредственно в СУБД SQL Server. Для сохранения скрипта в правой верхней части диалога SQL Server Schema Generation Preview щелкните по пиктограмме . Появится диалог (рис. 159), в котором требуется выбрать папку, тип сохраняемого файла ( sql ), указать имя файла ( скрипт БД Ива- нов ), затем нажать кнопку Сохранить. После сохранения файла скрипта нажмите Close, чтобы закрыть диалог SQL Server Schema Generation Pre- view. 13. Сгенерируйте каталог базы данных на основе модели, созданной в ERwin. Для этого в диалоге Forward Engineer Schema Generation (рис. 157) нажмите кнопку Generate. ERwin начинает процесс генерации объектов модели данных в каталог базы данных, размещенной на SQL Server. Про- цесс генерации отображается в диалоге Generate Database Schema. При за- вершении прямой генерации в этом диалоге должна появиться запись об успешном завершении процесса Execution Successful, а ниже нее - инфор- мация о количестве выполненных запросов (рис. 160). Нажмите ОК, чтобы закрыть диалог Generate Database Schema; затем еще раз ОК, чтобы за- крыть диалог Forward Engineer Schema Generation. 149 Рис. 158. Диалог SQL Server Schema Generation Preview. Рис. 159. Диалог для сохранения файла скрипта. 150 Рис. 160. Диалог Generate Database Schema. ================== Прямая генерация закончена. =========== 14. Убедитесь, что в каталоге вашей базы данных сгенерированы но- вые объекты в соответствии с моделью ERwin: см. разделы Tables (рис. 161), Views (рис. 162), Defaults (рис. 163), Rules (рис. 164), User Define Data Types (рис. 165), сравните их соответствующими разделами вашей ERwin- модели. Проверьте более детальную информацию, например, свойства сге- нерированной таблицы |