
- •Частина I. Основи баз даних Тема 1. Інформаційні системи. Технології бд.
- •1. Питання на повторення.
- •2. Вправи і задачі.
- •3. Проекти і професійні питання.
- •Словник термінів до теми 1
- •Додаток
- •2. Персонал
- •3. Об’єкти нерухомості, що здаються в оренду
- •4. Володарі нерухомості.
- •5. Клієнти/орендатори.
- •9. Інспекція орендованого об’єкта.
- •Тема 2. Архітектура бд. Життєвий цикл бази данних (жцбд)
- •1. Основні теоретичні питання
- •2. Практична частина.
- •1. Питання на повторення
- •2. Вправи і завдання
- •Словник основних термінів до теми 2.
- •Частина II. Проектування баз даних Тема 3. Принципи концептуального проектування баз даних
- •1. Питання на повторення
- •2. Вправи і задачі.
- •3. Проекти для групової роботи і професійні питання
- •Словник основних термінів до теми 3
- •Мал1. Рахунки клієнтів різних типів
- •Тема 4. Реляційна модель даних і її проектування.
- •IV. Додаток
- •1. Питання на повторення
- •1.1. Поясніть своїми словами зміст термінів:
- •2.2. Використовуючи значення приблизних даних з бд «Постачальники, деталі і проекти» (Додаток, приклад 3), скажіть, яким буде результат кожної з наступних операцій(допустима/недопустима):
- •2.3. Розгляньте наступну реляційну таблицю (заголовні букви позначають імена атрибутів, рядкові букви і цифри — значення атрибутів):
- •2.4. Розгляньте наступну реляційну таблицю (заголовні букви позначають імена атрибутів, рядкові букви і цифри — значення атрибутів):
- •2.5. Розгляньте наступну реляційну таблицю (заголовні букви позначають імена атрибутів, рядкові букви і цифри — значення атрибутів):
- •2.6. Визначіть первинні і зовнішні ключі для наступних відношень, що знаходяться в межах однієї схеми бази даних та побудуйте логічну схему:
- •3. Проекти і професійні питання
- •Словник термінів до теми 4
- •Додаток.
- •База даних постачальників, деталей і проектів (значення для прикладу)
- •Частина III. Управління реляційною базою даних Тема 5. Реляційна алгебра і реляційне числення.
- •2. Вправи і задачі
- •Словник термінів до теми 5
- •Тема 6. Мова sql
- •1. Питання на повторення
- •1.1. Поясніть своїми словами значення термінів:
- •2. Вправи і завдання
- •2.3.1. Прості запити
- •2.3.2 Узагальнюючі функції
- •2.3.4. Групування
- •2.3.5. Створення і заповнення таблиць
- •2.3.6. Додаткові засоби мови sql. Представлення.
- •Тема 7. Фізична організація бази даних
- •1. Питання на повторення
- •2. Вправи і завдання
- •3. Проекти і професійні питання
- •Частина IV. Управління оточенням бази даних Тема 8. Адміністрування бази даних і контроль
- •1. Поясніть своїми словами значення термінів:
- •Частина V. Завдання до самостійної роботи Додаток індивідуальні завдання по проектуванню бд
3. Проекти і професійні питання
Для наступних задач виконайте завдання:
Не користуючись концептуальним моделюванням, створіть реляційну схему бази даних. Ваша схема повинна містити реляційні таблиці, приведені до четвертої нормальної форми.
Спочатку створіть концептуальну модель, а потім перетворіть її в реляційну за допомогою правил переходу. Порівняйте результати.
Задачі:
У базі даних «Персонал компанії» повинна зберігатися наступна інформація про персонал деякої компанії:
У компанії є декілька відділів.
У відділі є декілька співробітників, декілька проектів та декілька кабінетів.
Кожен співробітник має план роботи (декілька завдань). Для кожної роботи існує відомість – перелік грошових сум, які отримує співробітник за виконання роботи.
У кожному кабінеті є декілька телефонів.
У базі даних повинна зберігатися наступна інформація
Для кожного відділу: номер відділу (унікальний), бюджет і номер співробітника, який очолює цей відділ (унікальний).
Для кожного співробітника: номер співробітника (унікальний), номер поточного проекту, номер кабінету, номер телефону, а також назва виконуваної роботи разом з датами і розмірами всіх оплат, отриманих за виконання даної роботи.
Для кожного проекту: номер проекту (унікальний) і бюджет.
Для кожного кабінету: номер кабінету (унікальний), площа в квадратних метрах, номери (унікальні) всіх телефонів, встановлених в цьому кабінеті.
Складіть відповідну множину нормалізованих відношень для представлення цієї інформації, а також семантичні твердження на основі заданних ФЗ.
3.2. У базі даних системи обліку замовлень міститься інформація про клієнтів, товари і замовлення згідно приведеному нижче плану.
Для кожного клієнта:
номер клієнта (унікальний); адреса доставки (декілька для кожного клієнта);
максимальний розмір кредиту; знижка.
Для кожного замовлення:
інформація заголовка:
номер клієнта, адреса доставки, дата виконання замовлення;
рядки даних (декілька для кожного замовлення):
номер товару, кількість даного товару.
Для кожного товару:
номер товару (унікальний); заводивиготівники; кількість товару на кожному заводі;
максимальна кількість товару, що зберігається, на кожному заводі; опис товару.
Для внутрішнього обліку також вводиться величина "кількість для доставки", зв'язана з кожним рядком кожного замовлення. Ця величина спочатку встановлюється рівною кількості замовленого товару, а після виконання постачання обнуляється.
Складіть макет такої бази даних, а також, як і в попередній вправі, вкажіть семантичні твердження на основі заданих ФЗ.
3.3. Учбова база даних включає інформацію про систему процеса навчання всередині компанії. Для кожного курсу навчання база даних містить інформацію про всі необхідні умови і пропозиції такого курсу; а для кожної пропозиції вона містить подробиці про всіх викладачів і студентів, зареєсттрованих для такої пропозиції. База даних також містить інформацію про співробітників. Відповідні відношення описані нижче:
COURSE(курс) {COURSE#, TITLE }
PREREQ { SUP__COURSE#, SUB_COURSE# }
OFFERING(пропозиції) { COURSE#, OFF#, OFFDATE, LOCATION (розташування)}
TEACHER(навчання) { COURSE#, OFF#, EMP# }
ENROLLMENT(реєстрація) { COURSE#, OFF#, EMP#, GRADE(клас) }
EMPLOYEE(співробітник) {EMP#, ENAME, JOB(робота) }
Сенс відношення PREREQ(необхідна умова) полягає в тому, що старший курс (SUP_COURSE#|) має підлеглий курс (SUB_COURSE#) як безпосередня необхідна умова; інші відношення мають бути зрозумілі без додаткових пояснень.
3.4. Нехай деяка база даних містить інформацію про розповсюджувачів продукції, регіонм розповсюдження і про саму продукцію. Кожен розповсюджувач відповідає за продажі в одному або декількох регіонах, а кожен регіон має одного або декількох розповсюджувачів. Аналогічно, кожен розповсюджувач продає один або декілька видів продукції, а кожен вид продукції розповсюджується одним або декількома розповсюджувачами. Кажен вид продукції продається в кожному регіоні, проте два розповсюджувачі не можуть продавати один і той же продукт в одному і тому ж регіоні. Всі розповсюджувачі продають однаковий набір продукції в кожному регіоні, за який вони відповідають.
3.5. Перетворіть концептуальні моделі ,створені в темі 3 в розділі Проекти групової роботи і професійні питання:
задача 3.1;
задача 3.2;
задача 3.3.