Здавалка
Главная | Обратная связь

Ключевые слова и параметры



 

or replace-пересоздают триггер если от уже существует, т.е. можно изменить определение триггера без удаления и создания его заново

before-Oracle возбуждает триггер перед исполнением предложения триггера

after-Oracleвозбуждает триггер после исполнением предложения триггера

delete-Oracleвозбуждает триггер каждый раз когда delete удаляет строку из таблицы

update-указывает что Oracleвозбуждает триггер каждый раз когда выполняется update

of-изменяет значение в одном из столбцов указанных в фразе of.

Если of опущено то изменяется в любом столбце таблицы.

On-определяет имя таблицы по которой создается триггер

referensinq- определяет корреляционные имена, можно использовать корреляционные имена в блоке PL/ SQL в фразе when для того, чтобы обращаться конкретно к старому или новому значению текущей стоки.

for each row-указывает, что триггер представляет собой триггер строк ,Oracle возбуждает триггер строк 1 раз для одной строки, затрагиваемой предложением триггера и удовлетворяющей необязательным ограничением триггера, которое определенно в фразе when.

When-ограничение триггера и содержит условие SQL, которое должно быть удовлетворено, что бы Oracle возбудил триггер.

 

Компоненты триггера

 

1. предложение триггера, определение предложения триггера указывает какие команды SQLбудут заставлять Oracle возбуждать этот триггер. INSERT, DELETE,UPDATE должны описать хотя бы одну из этих команд

2. ограничения триггера - when, которое должно быть удовлетворено, что бы Oracle возбудил триггер.

3.действие триггера - его описывает блок PL\SQL , который Oracle исполняет при возбуждении триггера. Каждый раз когда выдается предложение триггера Oracle вычислить условия ограничения триггера, если оно удовлетворенно, то Oracle возбуждает триггер использует действия триггера.

 

Типы триггеров.

 

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

1. когда Oracle возбуждает триггер по отношению к исполнению предложения триггера

2. сколько раз Oracle возбуждает триггер для данного предложения

3 триггера определяются следующими служебными словами:

before- перед исполнением

after- после исполнения

for each row для каждой строки

    for each row
before триггер предложения before: Oracle возбуждает его один раз перед использованием предложения триггера триггер предложения before: Oracle возбуждает его перед модификацией каждой строки
after триггер предложения after: Oracle возбуждает его один раз после использованием предложения триггера триггер предложения after: Oracle возбуждает его после модификацией каждой строки

 

 

Можно создать всего до 12 триггеров по одному из четырех типов триггеров для каждой из команд (INSERT,DELETE,UPDATE)







©2015 arhivinfo.ru Все права принадлежат авторам размещенных материалов.