You are on page 1of 11

МІНІСТЕРСТВО ОСВІТИ I НАУКИ УКРАЇНИ

НАЦІОНАЛЬНИЙ ТЕХНІЧНИЙ УНІВЕРСИТЕТ


УКРАЇНИ
«КИЇВСЬКИЙ ПОЛІТЕХНІЧНИЙ ІНСТИТУТ
ІМЕНІ ІГОРЯ СІКОРСЬКОГО»
ФАКУЛЬТЕТ БІОМЕДИЧНОЇ ІНЖЕНЕРІЇ
КАФЕДРА БІОМЕДИЧНОЇ КІБЕРНЕТИКИ

Комп’ютерний практикум №9
з дисципліни «Проєктування інформаційних систем»
на тему: «Створення фізичної моделі даних»

Варіант 15

Виконав:
студент гр. БС-93
Слюсарев Д.Д.
Перевірив:
Аверьянова О.А.
Добровська Л.М
Зараховано від ___.___._______

___________________________
(підпис викладача)

Київ-2022
Завдання:

1. Обрати приклад ІС та описати відповідну модель бази даних на фізичному


рівні в середовищі ERwin:
2. Запустити програму та створити нову модель бази даних в середовищі
ERwin.
3. Зберегти модель.
4. Відповісти на контрольні питання.
5. Роздрукувати протокол роботи та показати викладачу.
Виконання

Нагадаємо, як виглядає логічна модель «Частина МІС ультразвукових


досліджень» (рис.1)

Рис.1 – Логічна модель частини МІС ультразвукових досліджень

Змінюємо режим з «логічного» на «фізичний» (рис.2)

Рис.2 – Перемикання між логічною і фізичною моделлю

Принцип побудови фізичної моделі аналогічний побудові логічної з


невеликою поправкою: для кожного атрибута сутності необхідно вказувати тип
даних, які вводяться. Для цього у властивостях сутності обираємо пункт Columns і
закладку ORACLE в діалоговому вікні, що з’явилося (рис.3)

Рис.3 – Діалогове вікно Columns з закладкою ORACLE


Тоді фрагмент фізичної моделі виглядатиме наступним чином (рис.4):

Рис.4 – Фрагмент фізичної моделі

Далі встановлюємо валідацію. У вікні Model / Validation Rules задаємо максимальне


і мінімальне значення і тип валідації. Наприклад, значення, що вводиться в
стовпчик «Кількість_робочих_днів» (мається на увазі в місяці), має бути більше 20
днів, але менше 25 (рис.5)

Рис.5 – Правило валідації для робочих днів

Також встановимо правило, що дата діагнозу може бути лише «today» (рис.6)
Рис.6 – Правило валідації для дати діагнозу

Також змінимо імена індексів та їх визначення так, щоб вони приймали


унікальні або дублюючі значення (рис.7)

Рис.7 – Зміна імені індекса

Та змінимо порядок сортування даних (рис.8)

Рис.8 – Зміна сортування даних


Також створимо тригер для сутності «Технічний_персонал» (рис.9)

Рис.9 – Створення тригеру

Також згенеруємо SQL-скрипт для СУБД ORACLE. Для генерації системного


каталогу БД обираємо пункт меню Tools / Forward Engineering / Schema Generation.
У вікні Schema Generation в закладці Options можна задаємо опції генерації об'єктів
БД - тригерів, таблиць, форм подання, стовпців, індексів (рис.10)

Рис. 10 – Генерація скритпу


Повна фізична модель (рис.11)

Рис.11 – Фізична модель частини МІС ультразвукових досліджень

Кнопка Preview дозволяє відобразити SQL-скрипт, який створюється ERwin


для генерації системного каталогу СУБД. У результаті маємо наступний скрипт
(рис.12)

Рис.12 – Згенерований скрипт

Висновки

У ході виконання даної лабораторної роботи було засвоєно принципи


побудови фізичної моделі бази даних у середовищі Erwin.
Також було отримано практичні навички роботи з індексами (зміна імені, та
порядку сортування), тригерами та валідацією даних. Також було згенеровано SQL-
скрипт.
Контрольні запитання

1. Вкажіть, до якого рівня деталізації відноситься діаграма сутність-


зв'язок, повна атрибутна модель.
Логічний рівень – це абстрактне відображення даних, коли дані подають
таким чином, як вони виглядають у реальному світі, і можуть називатися так, як
вони називаються в реальному світі. Об’єкти моделі, що тут задіяні називаються
сутностями та атрибутами. Логічна модель даних (МД) розробляється на основі
існуючих моделей даних (наприклад, реляційної), але ніяк не пов’язана з
конкретною реалізацією системи управління бази даних (СУБД) та інших фізичних
умов реалізації. Вона може бути побудована на основі іншої логічної моделі,
наприклад, на основі моделі потоків даних або процесів. 

2. Вкажіть, до якого рівня деталізації відноситься модель даних,


заснована на ключах.
Фізична МД, навпаки, залежить від конкретної СУБД і фактично є відображенням
системного каталогу. Вона містить інформацію про всі об’єкти БД. Оскільки
стандартів для об’єктів БД не існує (наприклад, не існує стандарту для типів даних),
фізична модель залежить від конкретної реалізації СУБД. Таким чином, одній і тій
же моделі можуть відповідати декілька різних фізичних моделей.

3. Вкажіть, що реалізують діаграми ERD.


Діаграма сутність–зв’язок подає модель даних верхнього рівня. Вона включає
сутності і взаємозв’язки, які відображають базові бізнес-правила прикладної
області. Така діаграма не є дуже деталізованою, в ній містяться основні сутності та
зв’язки між ними, які задовольняють основні вимоги ІС. Діаграма сутність–зв’язок
може включати в себе зв’язки «багато – до –багатьох» і не включати опис ключів.

4. Вкажіть, що задає правило валідації.


Правило валідації задає список допустимих значень для конкретного
стовпчика і / або правила перевірки допустимих значень. У список допустимих
значень можна вносити нові значення. ERwin дозволяє згенерувати правила
валідації відповідно синтаксису обраної СУБД з урахуванням обмежень діапазону
або списку значень. 

5. Вкажіть базові поняття ERD-діаграми.


Сутності та атрибути. Основними компонентами діаграми ERwin є сутності,
атрибути та зв’язки. Сутність можна визначити як об’єкт, подія або концепція,
інформація про яку повинна зберігатися. Сутності повинні мати назву з чітким
смисловим значенням, фактично це ім’я її екземпляра. Кожен екземпляр
індивідуальний і повинен відрізнятися від всіх інших екземплярів. Атрибут
відображає певну властивість об’єкта. З точки зору БД (фізична модель) сутності
відповідає таблиця, екземпляру сутності – рядок в таблиці, а атрибуту – стовпчик
таблиці. А також зв’язки. Зв’язок є логічним співвідношенням між сутностями.
Кожен зв’язок повинен іменуватися дієсловом або дієслівною фразою (Relationship
Verb Phrases). Ім’я зв’язку полегшує сприйняття діаграми (наприклад, діаграма на
рис. 8.10). За замовчуванням ім’я зв’язку на діаграмі не зображується. Для
відображення назви треба у контекстному меню на вільному місті діаграми обрати
пункт Display Option/relationship та увімкнути опцію Verb Phrase.

6. Вкажіть, яка модель даних зображує дані в третій нормальній формі.


Повна атрибутна модель є найбільш детальним зображенням структури даних: вона
відображає дані в третій нормальній формі, включає всі сутності, атрибути і зв’язки.

7. Вкажіть, які рівні відображення діаграми має ERwin.


ERwin має декілька рівнів відображення діаграми: рівень 1)сутностей, 2) атрибутів,
3) визначень, 4) первинних ключів, 5) іконок.

8. Вкажіть, яка модель даних включає опис всіх сутностей і первинних


ключів.
Модель даних, заснована на ключах, є більш детальним поданням даних. Вона
включає опис всіх сутностей і первинних ключів, призначена для подання
структури даних і ключів, які відповідають прикладній області. 

9. Назвіть основні етапи проєктування бази даних.


 Системний аналіз і словесний опис інформаційних об'єктів;
 Проектування інфологічної моделі або Концептуальне проектування;
 Логічне проектування Баз Даних;
 Фізичне проектування Баз Даних.

10.Назвіть  принципи побудови логічної моделі даних.


Логічна модель даних є джерелом інформації для етапу фізичного
проєктування. Вона надає розробнику фізичної моделі даних засоби проведення
всебічного аналізу різних аспектів роботи с даними, що має виключне значення для
вибору дійсно ефективного проєктного рішення.
Також вона повинна містити атрибути, зв’язки, сутності та РК

11.Які типи зв'язків використовуються при побудові моделі «сутність-


зв'язок»?
«один – до багатьох», «багато – до – багатьох» та не ідентифікуючий зв’язок

12.Що таке потужність зв'язку?


Потужністю зв'язку називають максимальне число екземплярів сутності, яке
може бути пов'язане з одним екземпляром даної сутності. Потужність зв'язку може
дорівнювати «1», N (будь-яке число) і може бути конкретним числом.
13.Наведіть приклади зв'язків, які ідентифікують і не ідентифікують?
Зв'язок між сутностями в концептуальній моделі даних є типом, який
зображує множину екземплярів зв'язку між екземплярами сутностей. Щоб
ідентифікувати певний екземпляр сутності, використовується ідентифікатор
сутності. Для визначення екземплярів зв'язку між сутностями потрібен
ідентифікатор зв'язку. Наприклад, в прикладі на рис. ідентифікатором зв'язку
«Реєстрація» є ідентифікатор студента і номер курсу, оскільки разом вони
визначають конкретний екземпляр зв'язку студентів і курсів.
Зв'язки «супертип-підтип». У зв'язку «супертип-підтип» загальні атрибути
типу визначаються за сутністю-супертипа, сутність-підтип успадковує всі атрибути
супертипа. Екземпляр підтипу існує тільки за умови існування визначеного
екземпляру супертипа. Підтип не може мати ідентифікатор (він імпортує його із
супертипа).

14.Які об'єкти БД генеруються при проєктуванні фізичної схеми?


Oracle, Postgress, SQL та інші

15.Назвіть відмінності в ідентифікації об'єктів на логічному і фізичному


рівні.
Основний (неформальний) спосіб ідентифікації сутностей - це пошук
абстракцій, які описують фізичні або матеріальні об'єкти, процеси і події, ролі
людей, організації та інші поняття. Єдиним формальним способом ідентифікації
сутностей є аналіз текстових описів предметної області, виділення з описів
іменників і вибір їх в якості «кандидатів» на роль абстракцій.

16.Як можна здійснити конвертацію БД з однієї СУБД в іншу?


Змінивши СУБД в параметрах

17.Що таке тригер?


Тригером називають процедуру, яка виконується автоматично як реакція на
подію. 
Тригер посилальної цілісності - це вид тригера, який використовують для
підтримки цілісності між двома таблицями, які пов'язані між собою. Якщо рядок в
одній таблиці вставляється, змінюється або видаляється, то тригер посилальної
цілісності повідомляє СУБД, що саме потрібно робити з тими рядками в інших
таблицях, у яких значення зовнішнього ключа збігаються зі значенням первинного
ключа вставленого рядка (зміненого або видаленого рядка). 

18.Які елементи логічної моделі є основними для створення тригерів при


прямому проєктуванні?
Для генерації тригерів ERwin використовує механізм шаблонів - спеціальних
скриптів, які використовують макрокоманди. При генерації коду тригера замість
макрокоманд підставляються імена таблиць, стовпчиків, змінні та інші фрагменти
коду, які відповідають синтаксису обраної СУБД. Шаблони тригерів посилальної
цілісності, які генеруються ERwin за замовчуванням, можна змінювати.

You might also like