АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

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

Читайте также:
  1. GLOSSARY
  2. IP-адреси
  3. Визначення та характеристики управлінської інформації
  4. Економічний зміст власності. Типи і форми власності
  5. Завдання інформаційного консалтингу
  6. Інформаційна сфера. Інформаційні системи та технології.
  7. Інформаційні процеси
  8. Кількісні міри інформації
  9. Контроль страхової діяльності
  10. Опис предмету навчальної дисципліни
  11. ПІСЛЯМОВА
  12. Поняття, структура і зміст економічної культури.

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

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

Щоб зробити представлення таким, що модифікується, яке порушує будь-яку з вищевказаних умов, застосовується механізм тригерів. Тригери для модифікації представлення повинні спрацьовувати при подіях BEFORE DELETE, BEFORE UPDATE и BEFORE INSERT. В тілі тригерів необхідно описати, що повинно відбуватися з даними при видаленні, зміні та вставці.

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

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). ***Якщо в операторі буде помилка, то буде доступна тільки кнопка [Rollback].



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

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

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


1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 |

Поиск по сайту:



Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.003 сек.)