Варіант 7. “Облік кадрів”
Інформаційна система призначена для обліку особових даних працівників підприємства.
Підприємство поділене на відділи, кожен з яких має назву, абревіатуру та керівника. В кожному відділі працює не більше ніж 20 працівників. Кожен працівник характеризується табельним номером, прізвищем, ім'ям, по-батькові, паспортними даними, датою та місцем народження, домашньою адресою. Працівник працює на певній посаді, за що отримує оклад. За кожен рік, відпрацьований на підприємстві, оплата працівника збільшується на 1.2%. Працівник може міняти посади, інформаційна система повинна зберігати історію попередніх посад працівника. Працівник кожного року має відпустку, тривалість якої залежить від посади та вимірюється в днях за календарний рік роботи. Система повинна зберігати дані про всі відпустки працівників. Одночасно перебувати в відпустці можуть не більше 5 працівників одного відділу.
Система повинна надавати наступні звіти:
Список працюючих відділу (відділ – параметр).
Список працівників з вказанням періодів використаних відпусток з підсумком днів проведених в відпустках для кожного працівника.
Довідка працівника з вказанням посади та окладу.
Список відділів з вказанням керівника та кількості працюючих.
Лабораторна робота № 1. “Створення схеми БД”
1) Створити концептуальну та логічну модель предметної області згідно з описом, отриманим в викладача (відповідно до обраної предметної області).
2) Створити базу даних: створити таблиці, задати всі потрібні обмеження, створити зв’язки між таблицями. Схема бази даних повинна містити приклади використання сурогатних ключів створених за допомогою послідовностей (SEQUENCES). Схема бази даних повинна містити приклади використання всіх можливих способів перевірок обмеження цілісності, зокрема зовнішні ключі, вимоги на унікальність полів, перевірки типу CHECK, перевірки типу NULL/NOT NULL, тощо.
3) Ввести по декілька записів в кожну таблицю, проаналізувати цілісність даних.
У звіті має бути наведено:
1) схема даних (малюнок з вказанням типів зв’язків між таблицями та відповідними ключовими полями).
2) SQL-запити для створення та наповнення таблиць.
3) Роз’яснення до схеми даних:
– опис концепції роботи БД на основі представленої схеми;
– опис призначення кожної таблиці з вказанням її місця в БД згідно концепції;
– опис призначення кожного поля з обґрунтуванням типу даних та обмежень.
Лабораторна робота № 2. “Написання SQLзапитів”
Завдання лабораторної роботи виконувати в призначеній предметній області. Змістовне призначення запитів визначати самостійно виходячи з логіки предметної області.
Створити запити типу:
SELECT на базі однієї таблиці з використанням сортування, накладенням умов зі зв’язками OR та AND.
SELECT з виводом обчислюваних полів (виразів) в колонках результату.
SELECT на базі кількох таблиць з використанням сортування, накладенням умов зі зв’язками OR та AND.
SELECT на базі кількох таблиць з типом поєднання Outer Join.
SELECT з використанням операторів Like, Between, In, Exists, All, Any.
SELECT з використанням підсумовування та групування.
SELECT з використанням під-запитів в частині Where.
SELECT з використанням під-запитів в частині From.
ієрархічний SELECTзапит.
SELECTзапит типу CrossTab.
UPDATE на базі однієї таблиці.
UPDATE на базі кількох таблиць.
Append (INSERT) для додавання записів з явно вказаними значеннями.
Append (INSERT) для додавання записів з інших таблиць.
DELETE для видалення всіх даних з таблиці.
DELETE для видалення вибраних записів таблиці.
Запити можуть бути складними і поєднувати у собі одразу декілька типів (згідно завдання). У роботі має бути не менше двох таких складних запитів. При цьому обов’язково необхідно відобразити у звіті відповідні особливості запиту.
У звіті має бути наведено:
Для кожного SQL-запиту:
1) Призначення (опис завдання, яке має реалізувати запит).
2) SQL представлення.
3) Результат виконання.
4) Опис особливостей, які використані у запиті та які реалізують поставлене завдання.
Лабораторна робота № 3. “Підпр...