Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Bazy_Danyh2007.rtf
Скачиваний:
6
Добавлен:
15.11.2019
Размер:
256.15 Кб
Скачать

У звіті має бути наведено:

Для кожної процедури / функції:

1) Призначення процедури / функції.

2) Опис алгоритму роботи (концепція роботи та покроковий опис, можливо блок-схема).

3) Опис вхідних / вихідних параметрів (їх призначення, типи, варіанти застосувань).

4) Опис внутрішніх ідентифікаторів (їх призначення, типи, застосування).

5) Результати виконання.

Лабораторна робота № 4. “Тригери в субд Oracle”

Завдання лабораторної роботи виконувати в призначеній предметній області. Обов’язково врахувати проблему “mutating table”. Змістовне призначення тригерів є наступним:

Для всіх варіантів:

1. У всіх таблицях створити поля UCR, DCR, ULC, DLC. Написати тригери які будуть заповнювати дані поля наступним чином: UCR – ім’я користувача, що створив даний запис; DCR – дата та час створення даного запису; ULC – ім’я користувача, що останнім змінив даний запис; DLC – дата та час останньої модифікації даного запису.

2. Створити сурогатний ключ для деякої таблиці, та написати тригер для обов’язкового заповнення цього поля послідовними значеннями.

3. Написати тригери для перевірки наступних обмежень цілісності:

Варіант 1. В одній кімнаті проживає до трьох студентів. Студент не може мати одночасно позиченими книжок на суму більше ніж 100 грн.

Варіант 2. Кімната не може одночасно бути здана двом орендарям. Орендар, який має борг більший ніж сума трьохмісячної оренди не може отримувати в оренду нові приміщення.

Варіант 3. Кожен виступаючий може брати участь в кількох секціях, але за один день він може виступати тільки в одній секції. В одному приміщенні не можуть проводитися одночасно засідання двох секцій.

Варіант 4. Автобус та шофер не можуть одночасно обслуговувати дві екскурсії. Потрібно контролювати місткість автобусів та інформувати чи є вона достатньою для екскурсії. Екскурсія не може надаватись замовнику, який має борг впродовж 30 днів.

Варіант 5. Замовник не може замовити новий проект, якщо він має неоплачені на протязі 3 місяців проекти. Кожен виконавець не може прозвітувати виконання більше 10 годин роботи в день.

Варіант 6. Пацієнту не можна призначати лікарства, які є протипоказані йому, або містять протипоказані складові. Лікар не може одночасно мати більше 10 пацієнтів.

Варіант 7. Одночасно перебувати в відпустці можуть не більше 5% працівників одного відділу. В відділі не можуть працювати однофамільці керівника відділу.

Варіант 8. Система повинна забороняти продаж товару, якщо його немає в достатній кількості. Автоматично обраховувати кількість товару – залишок на складі.

Варіант 9. В кожного пілота повинна бути перерва між вильотами не менше трьох днів. Система повинна не дозволяти конфлікти з призначенням персоналу одночасно на кілька вильотів.

Варіант 10. Абонент, що не оплатив замовлені послуги за останні три місяці не може замовляти нові послуги та йому повинно бути припинене надання будь-яких послуг до сплати суми боргу (під час відключення оплата нараховуватися не повинна). Система повинна забороняти замовлення кінофільмів з позначкою «для дорослих» абонентами віком до 18 років.

Варіант 11. Працівник не може працювати в декількох відділах та на декількох посадах одночасно. Основна зарплата працівника не може бути меншою від встановленої мінімальної зарплати, працівнику забороняється нараховувати зарплату після його звільнення; виплата зарплати працівникам повинна здійснюватись не пізніше 10 числа наступного місяця, який слідує за відпрацьованим, при порушенні цього правила працівнику додається до зарплати за поточний місяць пеня в розмірі 0,1% від суми заборгованості за кожен прострочений день.

Варіант 12. Клієнт не може отримувати нові кредити у випадках, визначених у предметній області. Автоматично при будь-якій операції (одержання, сплата чи погашення кредиту) повинен обчислюватися рейтинг клієнта.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]