Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МУ по ОБД ИТП 2 сем.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
6.48 Mб
Скачать

1.2 Представлення, що модифікуються

Для деяких представлень вставку, видалення або оновлення рядка можна перетворити в еквівалентні операції по відношенню до вихідних таблиць цього представлення. Можуть існувати представлення, для яких додавання, видалення або оновлення рядків не має сенсу. Такі представлення можна лише читати.

Вміст представлення може змінюватися командами модифікації, які будуть автоматично перенаправлені до базової таблиці. Аби представлення було таким, що модифікується, воно має бути створене на основі однієї таблиці (або іншого представлення, що модифікується), а запит, на якому засноване представлення, не повинен містити підзапитів, агрегатних функцій, UDF, процедур, що зберігаються, пропозицій DISTINCT, GROUP BY і HAVING. Якщо виконуються всі ці умови, то представлення автоматично стає таким, що модифікується, тобто для нього можна виконувати запити DELETE, INSERT і UPDATE, які змінюватимуть дані в таблиці-джерелі.

2 Хід роботи

Для створення представлення в діалоговому режимі програми "IB Expert" необхідно виконати наступні дії:

1. Підключитися до бази даних і виконати команду головного меню "DatabaseNew View". В результаті відкриється вікно "View", в якому міститиметься шаблон оператора створення представлення (Рисунок 8.1).

Рисунок 8.1 – Вікно введення оператора створення представлення

2. Змінити в полі на вкладці "SQL" текст оператора створення представлення для створення потрібного представлення, а потім натискувати кнопку [Compile] (Ctrl+F9). В результаті відкриється діалогове вікно (Рисунок 8.2), в якому треба підтвердити (кнопка [Commit]) або відмінити (кнопка [Rollback]) виконання операції

Рисунок 8.2 – Діалог створення представлення

3. Представлення, команда створення якого приведена на рисунку 8.2 не є таким, що модифікується. Аби зробити його таким, що модифікується, створимо для нього тригер що дозволяє змінювати поле "Name" (змінювати поле "NameCount" не має сенсу).

4. Аби створити тригер в наявного представлення, необхідно у вікні "View" перейти на вкладку "Triggers", натискувати праву кнопку миші на типові події, при якій повинен спрацьовувати тригер, і в контекстному меню вибрати команду "New Trigger" (Рисунок 8.3). В результаті відкриється вікно "Trigger", в якому знаходитиметься заготівка оператора створення тригера. Використовуючи цю заготівку, слід ввести правильного оператора створення тригера і натискувати кнопку [Compile Trigger] (Ctrl+F9).

Приклад тригера, які для представлення "TestView" дозволяє модифікувати поле "Name" приведений на рисунку 8.4.

Рисунок 8.3 – Вікно створення тригера для представлення

Рисунок 8.4 – Тригер, що дозволяє модифікувати представлення

3 Завдання

Лабораторну роботу слід виконувати в наступному порядку:

1. Створити аналогічно попереднім лабораторним роботам робочу папку.

2. Скопіювати в цю папку файл сценарію, створений при виконанні попередньої лабораторної роботи.

3. Відкрити в додатку "IB Expert" цей сценарій.

4. Додати в кінець сценарію операторів створення не менше двох представлень.

5. Виконати сценарій і зберегти його в директорії.

6. Зареєструвати створену базу даних в програмі "IB Expert" і підключитися до неї.

7. Створити в своїй базі даних ще одне представлення в діалоговому режимі, яке не має бути таким, що модифікується. Воно повинне називатися "TestView" і грунтуватися, наприклад, на декількох таблицях або інших представленнях. Додати в діалоговому режимі до цього перегляду тригери для дозволу виконання оновлення. Перенести в сценарій операторів створення цього представлення і тригерів, які автоматично згенерує "IB Expert".

8. Створити в директорії "ЛР8" резервну копію бази даних.

9. Оформити звіт про виконання лабораторної роботи.

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