Триггеры

Триггер БД - хранимый блок PL/SQL, который связан с таблицей. Oracle автоматически исполняет триггер когда указанное предложение PL/SQL выдается по соответствующей таблице. Прежде чем может быть создан триггер, пользователь должен выполнить скрипт файл DBMSSTDX.SQL его местоположение может варьироваться в зависимости от ОС.

Синтаксис Создание триггера

CREATE [ORREPLACE] TRIGGER имя триггера

BEFORE/ALTER

[{DELETE|INSERT|UPDATE}] ON имя_табл

[REFERENCING {OLD/NEW}]

FOR EACH ROW

[WHEN]

блок PL/SQL (begin √end)

Разделы тела триггера:

OR REPLASE - пересоздаёт триггер, если он уже существует;

BEFORE - указывает что ORACLE возбуждает триггер перед исполнением предложение триггера;

ALTER - возбуждает триггер после исполнения предложение триггера;

REFERENCING - специфицирует корреляционные имена;

FOR EACH ROW- триггер строк, если нет этой строки, тогда это триггер предложений;

WHEN - ограничение триггера содержит условие SQL которое должно быть удовлетворенно, чтобы ORACLE возбудил триггер;

Триггер БД - хранимая процедура, связанная с таблицей. ORACLE автоматически возбуждает и исполняет триггер, когда выдаётся предложение триггера, т.е. предложение SQL которое специфицировано или описано в триггере.

Триггер используется для следующих целей:

- Для автоматической генерации вычисляемых значений столбцов

- Для реализации сложных проверок защиты и ограничений

- Для реализации регистраций

Триггеры - являются именованными блоками PL\SQL с разделами:

1. объявления

2. выполняемый раздел

3. раздел исключительной ситуации

В отличии от процедуры,которую надо вызывать явным образом, триггер выполняется не явно когда происходит событие, запускающее этот триггер. Акт выполнения триггера называется его активизацией. запускается триггер операциями DML выполняемой над БД. Oracle автоматически исполняет триггер когда указанное предложение SQL выдвигается по соответственной таблице.

Для каждой таблицы можно определить 3 типа триггеров:

1. триггеры ввода

2. триггеры добавления

3. триггеры удаления

Триггеры можно использовать для:

1. отслеживания модификаций данных

2. журнализации (регистрация событий)

3. реализация комплексных организационных правил

4. автоматическое вычисление столбцов

5. осуществление сложных процедур защиты данных и т.д.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: