Тригер — це SQL-оператор, що активізується під час виконання певних операцій над об'єктами бази даних. Об'єктами бази даних є таблиці, а операціями - додавання, видалення та заміна рядків. Тригери — це один із механізмів підтримки цілісності бази даних.
У найпростішому випадку синтаксис оголошення тригера є таким:
CREATE TRIGGER<ім'я тригера>
{BEFORE | AFTER} <операці! над таблицею> [OF <список полів>] ON <ім'я таблиці>
[WHEN(<умова>)] <оператори SQL>
Якщо умова у фразі WHEN є істинною або ця фраза відсутня, до (BEFORE) або після (AFTER) виконання операції INSERT, UPDATE чи DELETE над таблицею, зазначеною після слова ON, буде виконано вказані нижче оператори SQL. Коли таких операторів кілька, їх слід помістити між ключовими словами BEGIN ATOMIC та END. Конструкція другого рядка означення тригера називається реченням ініціювання, WHEN — умовою ініціювання, а <оператори SQL> — дією тригера.
Розглянемо приклади застосування тригерів.
Запит 4.50____________________________ --------------------------------------------------------
Після видалення інформації про кафедру видалити інформацію про всіх викладачів кафедри.
CREATE TRIGGER Кафедраг_Видалення AFTER DELETE ON КАФЕДРА
DELETE FROM ВИКЛАДАЧ
WHERE ВИКЛАДАЧ. #D = КАФЕДРА.ДО
Запит 4.51_____________________________________________________________
Після видалення рядка з відомостями про викладача встановити значення NULL в полі #Куратор тих записів із таблиці ГРУПА, що відповідають групам, де згаданий викладач був куратором.
CREATE TRIGGER Викладач_Видалення
AFTER DELETE ON ВИКЛАДАЧ
UPDATE ГРУПА
SET #Куратор = NULL
WHERE ГРУПА.#T = ВИКЛАДАЧ.#Т