Лабораторна робота №2 на тему Проектування БД засобами Erwin, Проектування баз даних, ЗНТУ
« Назад2. Лабораторна робота №2 на тему Проектування БД засобами ErwinМета роботи: ознайомитись з інструментальними засобами та вивчити можливості CASE – технології ERwin створення бази даних для обраної предметної області. 2.1 Теоретичні відомостіВ багатьох випадках ефективну інформаційну систему важко спроектувати саме на перших етапах. Для цього використовується структурний аналіз – метод дослідження, який починається із загального аналізу ПО, а потім деталізується. На кожному рівні розглядається невелика кількість елементів, а потім здійснюється їхня декомпозиція. Тобто виконується структурне проектування „зверху – униз”. Такі технології отримали назву CASE – технологій (Computer Aided Software Engineering), що перекладається як Створення програмного забезпечення за допомогою комп’ютера. Однією з таких технологій і є ERwin. ERwin дозволяє створювати моделі на логічному і фізичному рівнях. Спершу створюється логічна модель. Етапи її побудови: І етап – визначення сутностей; ІІ етап – визначення залежностей між сутностями; ІІІ етап – визначення первинних та альтернативних ключів; ІV етап – визначення неключових атрибутів. Вікно ERwin містить рядок меню, в якому можна обрати потрібні режими роботи та панелі інструментів. Можна змінювати рівні перегляду моделі, наприклад: рівень сутностей, рівень атрибутів, рівень визначень. Для побудови та модифікації діаграми ERwin використовується панель інструментів ERwin Toolbox. На ній знаходяться кнопки для створення нової сутності, кнопка категорії, кнопки створення зв'язків (ідентифікуючого, типу багато – до – багатьох, не ідентифікуючого). На фізичному рівні панель інструментів виглядає трохи інакше. Рисунок 2.1 – Панель інструментів на логічному рівні Можна змінювати рівні демонстрації моделі за допомогою різних меню. Наприклад, в меню Display Level можна обрати Entity – рівень демонстрації сутностей; Attribute – рівень демонстрації атрибутів; Primary Key – рівень демонстрації первинних ключів; Definition – рівень демонстрації визначень сутностей; Icon – рівень піктограми. А пункт меню Relationship Display – Verb Phrase виводить на екран речення з дієсловом, яке характеризує зв’язок. Щоб вперше ввести це речення, треба виділити лінію потрібного зв’язку між сутностями, в контекстному меню викликати редактор зв’язків Relationship Editor та ввести речення у вікні Verb Phrase. В цьому ж редакторі можна встановити або змінити за допомогою перемикачів тип зв’язку: ідентифікуючий (Identifying) або ні (Non-Identifying), обов’язковий (No Nulls) або необов’язковий (Nulls Allowed) та в групі перемикачів Cardinality визначити кардинальність зв’язку. Кардинальність зв’язку – це відношення кількості екземплярів батьківської сутності до кількості екземплярів дочірньої.. В IDEF1X кардинальність бінарних відношень може приймати одне зі значень: Zero, One or More One or More Zero or One Exactly. Коли ERwin створює зв’язки між сутностями, то автоматично відбувається міграція зовнішніх ключів (Foreign Keys) до залежних сутностей. НЕ ТРЕБА ВВОДИТИ ЗОВНІШНІ КЛЮЧІ ВЛАСНОРУЧ ! 2.2 Приклад створення моделіПриклад. Для концептуальної моделі Конференції створимоза допомогою ERwin логічну модель, яка надасть користувачеві візуальну можливість відкоригувати інформацію про конференції. Розглянемо роботу з ERwin на цьому прикладі. Для запуску Erwin треба в головному меню обрати пункт Все программы, в ньому – пункт Computer Associates Erwin 4.0, а потім знов Erwin 4.0. Або в папці Program Files обрати папку Computer Associates, потім Erwin 4.0 та файл MMOPN32. Після запуску Erwin з’являється вікно, в якому треба встановити один з перемикачів:
Виберемо перший варіант. Відкривається вікно для вибору рівня моделі. Встановлюємо перемикач Logical / Physical (логічний / фізичний) та вибираємо зі списку Database варіант Access 2000. Предметна область складається із п’яти сутностей (див. п. 1.2). Внесемо до діаграми виявлені сутності. Для внесення сутності в модель необхідно кликнути по кнопці Сутності на панелі інструментів, потім кликнути по тому місцю на діаграмі, де необхідно розташувати нову сутність. Кожна сутність повинна бути повністю визначена за допомогою текстового опису на вкладці Definition. Задаємо ім'я першої сутності – Конференція. Якщо виникли проблеми з відображенням російських букв – заходимо в меню Format – Default Fonts & Colors і на всіх вкладках міняємо шрифт Arial на Arial CYR, та унизу в групі перемикачів Apply To (Применить) встановлюємо позначку All Object. Клікаємо на прямокутнику сутності. Відкривається вікно редактора атрибутів (див. рис. 2.2), тільки ще вільне, без атрибутів. Рисунок 2.2 – Вікно атрибутів сутності Конференція Щоб задати атрибути сутності Конференція, натискаємо на кнопку New. Відкривається нове вікно (див. рис. 2.3). Вводимо ім’я атрибуту (ID Конференція). В цьому ж вікні можна зараз задати ім’я поля майбутньої таблиці. Використовуємо англійські літери. Рисунок 2.3 – Вікно створення атрибутів Натискаємо кнопку ОК, повертаємось до попереднього вікна, відзначаємо атрибут як первинний ключ, тобто встановлюємо прапорець Primary Key. На вкладці Datatype вибираємо тип даних LONG. Так само створюємо інші атрибути згідно таблиці 2.1. Таблиця 2.1 – Опис атрибутів сутності Конференція
Остаточно отримаємо такий результат, як на рис. 2.2. Змінимо на панелі керування тип подання Logical на Physical. Тепер необхідно змінити ім'я таблиці на англійське (Conference) за допомогою контекстного меню або меню Model – Tables. Остаточно фізичне подання сутності Конференція матиме вигляд (див. рис. 2.4): Рисунок 2.4 – Фізичне подання сутності Конференція Аналогічно створюємо сутність Країна (див. рис. 2.5). Логічне подання Фізичне подання Рисунок 2.5 – Логічне та фізичне подання сутності Конференція Атрибути, за якими буде встановлюватися зв’язок, вводимо тільки для батьківських таблиць. До зв’язаних таблиць вони мігрують. В переліку атрибутів це позначають літери FK (Foreign Key). З’єднуємо сутності. Для цього на панелі інструментів натискаємо кнопку Non-identifying relationship (не ідентифікований зв’язок), кликаємо на сутність Країна, а потім на сутність Конференція. Подвійний клик на лінії зв’язку відкриває вікно (див. рис. 2.6). У відповідних вікнах вводимо ім’я зв’язку з боку батьківської та дочірньої сутностей. За допомогою одного з перемикачів відзначаємо варіант кардинального числа. В цьому випадку – Zero, One or More (0, 1 або більше). Рисунок 2.6 – Вікно параметрів зв’язку сутностей Завдання обмежень цілісності, а також ролей здійснюється на вкладках RI Actions та Rolename вікна редактора зв'язків (див. рис. 2.6). Щоб побачити імена зв’язків, треба в контекстному меню Relationship Display обрати пункт Verb Phrase. Логічна схема ПО Конференція зображена на рис. 2.7, а фізична – на рис. 2.10. Рисунок 2.7 – Логічна модель ПО Для коригування атрибутів і первинних ключів використовується редактор атрибутів (див. рис. 2.2). Для його виклику треба в контекстному меню сутності вибрати пункт Attributes. Для завдання альтернативних ключів та інверсних входів варто скористатися редактором ключів. Для його виклику кликніть правою кнопкою миші на сутності й виберіть пункт Key Groups. В діалоговому вікні, що відкриється (див. рис. 2.8), натисніть кнопку New. Наприклад, для атрибуту Прізвище сутності Виконавчий секретар створимо інверсний вхід, тому що цей атрибут може використовуватись для пошуку, але не може бути альтернативним ключем, адже прізвища різних людей можуть співпадати. Тип вибираємо за допомогою відповідного перемикача. (див. рис. 2.9). Рисунок 2.8 – Вікно редактора ключів Рисунок 2.9 – Вікно вибору типу ключів Для фізичного рівня вибирається конкретна СУБД (в нашому випадку – Access) та встановлюються відповідності: ім’я сутності – ім’я таблиці, атрибут сутності – поле таблиці (при цьому треба враховувати обмеження на імена, пов’язані з обраною СУБД); Рисунок 2.10 – Фізична модель ПО 2.3 Автоматичне створення таблиць в AccessЯкщо перед створенням моделі не був вибраний сервер СУБД або треба його змінити, то необхідно перейти на рівень фізичної моделі і вибрати в меню Databaseпункт ChooseDatabaseабо натиснути на кнопку Select Target Server. Відкриється вікно, в якому треба за допомогою перемикачів вибрати необхідний сервер СУБД (див. рис. 2.11). Треба заздалегідь створити порожню БД в MS Access, але не відкривати її (наприклад, conference.mdb). Потім в ERWin необхідно перейти до фізичного подання даних і використати інструмент Forward Engineer (пряме проектування) панелі Database. Відкриється вікно AccessSchemaGeneration. Якщо натиснути на кнопку Generate, то відкриється нове вікно для вибору БД (див. рис. 2.12). Рисунок 2.11 – Вікно вибору СУБД Рисунок 2.12 – Вікно вибору бази даних Кнопка Connect здійснює автоматичну генерацію таблиць. В Access створюються таблиці з іменами стовпчиків фізичної моделі, відповідними типами даних та підписами з логічної моделі, визначаються ключі та зв’язки між таблицями (див. рис. 2.13) Рисунок 2.13 – Схема даних БД в Access 2.4 Завдання1. Створити засобами Erwin логічну та фізичну моделі для свого варіанту предметної області та для свого варіанту курсової роботи. 2. Здійснити експорт таблиць моделі свого варіанту предметної області, створеної засобами Erwin, до MS Access. 2.5 Контрольні питання
З повагою ІЦ "KURSOVIKS"! |