- •Київ нухт 2010
- •Мета, зміст, порядок проведення і контролю лабораторних робіт
- •Лабораторна робота №1
- •1.1 Теоретичні положення
- •1.1.1 Основні визначення та поняття логічної моделі даних
- •1.1.2 Внесення об’єкту до моделі
- •2.1 Теоретичні положення
- •2.1.1 Завдання атрибутів
- •2.1.2 Ключі первинні та зовнішні
- •1.1.3 Визначення (Definition) та опис об’єктів
- •1.2. Питання для самоперевірки
- •Лабораторна робота №2
- •2.1.3 Альтернативні ключі та інверсні входи
- •2.1.4 Завдання доменів
- •2.2. Питання для самоперевірки
- •Лабораторна робота №3
- •3.1 Теоретичні положення
- •3.1.1 Типи зв’язків і їх найменування
- •3.1.2 Встановлення зв’язків в палітрі інструментів кнопка відповідає ідентифікованому зв’язку, кнопка зв’язку багато-до-багатьох і кнопка відповідає неідентифікованому зв’язку.
- •Форму лінії зв’язку завжди можна змінити за допомогою миші.
- •3.1.3 Найменування зв’язків та їх потужність
- •3.2. Питання для самоперевірки
- •Лабораторна робота №4 Тема: Встановлення типів залежності об’єктів та ієрархія наслідування. Категорії повна та неповна.
- •4.1 Теоретичні положення
- •4.1.1 Типи залежності об’єктів
- •4.1.2 Створення категоріального зв'язку
- •4.1.3 Стадії побудови ієрархії наслідування
- •4.2 Питання для самоперевірки
- •Лабораторна робота №5
- •5.1 Теоретичні положення
- •5.1.1 Правила збереження цілісності посилань та їх використання
- •5.1.2 Встановлення правил цілісності посилань
- •5.2 Питання для самоперевірки
- •Лабораторна робота №6
- •6.1. Теоретичні положення
- •6.1.1 Поняття про нормалізацію даних. Функціональна залежність. Повна функціональна залежність
- •6.1.2 Приведення сутності до першої нормальної форми
- •6.1.3 Приведення сутності до другої нормальної форми
- •6.1.4 Приведення сутності до третьої нормальної форми
- •6.2. Питання для самоперевірки
- •7. Приклади предметних областей рекомендованих для дослідження та моделювання
- •Література
- •Література……………………………………………………………… 19 додаток
2.1.3 Альтернативні ключі та інверсні входи
Потенційні ключі, що не стали первинними, можуть бути задані в якості альтернативних, тобто ключів за якими можна індексувати базу в разі потреби.
Іноді бізнес-правила потребують вибрати в якості індексу атрибут, який не є унікальним для кожного запису, наприклад, прізвище клієнта. Такий атрибут називають інверсним входом і відповідно позначають на логічній схемі.
Альтернативні ключі та інверсні входи створюють у закладці Key Group редактора Attribute Editor.
2.1.4 Завдання доменів
Область визначення атрибута називається доменом. Або, інакше, домен - це сукупність значень з яких вибирається значення атрибуту. Кожен атрибут може визначатися лише на одному домені, але на одному домені може бути визначена множина атрибутів. Визначити домен можна завданням типу даних, кількістю символів для атрибуту, а також обмеженнями на значення атрибуту. Домен може бути заданий тільки один раз і використовуватись, як у логічній, так і у фізичній моделі.
Домени дозволяють полегшити роботу з даними, як розробникам на етапі проектування, так і адміністраторам БД на етапі експлуатації системи. На логічному рівні домени можна описати без конкретних фізичних якостей. На фізичному рівні вони автоматично отримують специфічні якості, які можна змінити вручну.
Для створення домену в логічній моделі служить Domain Dictionary Editor. Його можна викликати з меню Edit/Domain Dictionary при натискуванні на кнопку, яка розташована у верхній лівій частині закладки General вікна Attribute Editor.
ERwin має спеціальний інструмент, який значно полегшує створення нових атрибутів в моделі за рахунок використання доменів. Це вікно визивається, а також закривається клавішами CTRL+B.
2.2. Питання для самоперевірки
Що таке атрибут ?
Що таке домен ?
Які складові визначають домен для атрибута ?
Що таке первинний ключ? Які вимоги висуваються до первинного ключа ?
Чим можна пояснити необхідність використання первинного ключа?
Що таке альтернативний ключ?
Для чого використовують інверсні входи?
Коли виникає необхідність створення складного ключа?
Як створюється зовнішній ключ? Що таке уніфікація зовнішніх ключів ?
Лабораторна робота №3
Тема: Встановлення зв’язків в логічній моделі бази даних.
Мета: Навчитися визначати типи відношень між об’єктами на основі бізнес правил. Встановлювати зв’язки, задавати їх потужність.
Завдання: Проаналізувати типи відношень між об’єктами. Встановити зв’язки між об’єктами, що відповідають типам відношень продиктованих бізнес правилами, задати їх назву та потужність.
3.1 Теоретичні положення
3.1.1 Типи зв’язків і їх найменування
Зв’язок це логічне відношення між об’єктами. На логічному рівні можна встановити ідентифікований зв’язок один-до-багатьох, багато-до-багатьох та неідентифікований зв’язок один-до-багатьох.
Ідентифікований зв’язок встановлюється між незалежною (батьківський кінець зв’язку) з залежною (дочірній кінець зв’язку) сутностями.
Ідентифікований зв‘язок означає, що одному екземпляру батьківської сутності відповідає один або багато екземплярів дочірньої сутності.
Ідентифікований зв’язок показують на діаграмі суцільною лінією з товстою крапкою на дочірньому кінці зв’язку.
Неідентифікований зв‘язок означає, що одному екземпляру батьківської сутності відповідає нуль, один або багато екземплярів дочірньої сутності.
При встановленні неідентифікованого зв’язку дочірня сутність залишається незалежною, а атрибути первинного ключа батьківської сутності мігрують до складу неключових атрибутів батьківської сутності. Неідентифікований зв’язок слугує для зв’язування незалежних об’єктів. Наприклад:
Відділ <складається> з Співробітників
Екземпляр сутності Співробітник може існувати незалежно від будь-якого екземпляру сутності Відділ , тобто співробітник може працювати в організації не входячи до складу будь-якого відділу. Неідентифікований зв’язок зображують на діаграмі пунктиром.
Кожен зв’язок повинен іменуватися дієсловом або дієслівною фразою (Rilationship Verb Phrases). Ім’я зв’язку відображує деяке обмеження чи бізнес-правило і допомагає читанню діаграми, наприклад:
Кожен Клієнт <розміщує> Закази;
Кожен Заказ <виконується> Співробітником
Зв’язок показує, які закази розмістив клієнт і який конкретно співробітник їх виконує.
