При наличии ключевых слов OR REPLACE триггер создается заново,
если он уже существует.
Конструкция BEFORE | AFTER указывает на момент запуска тригге-
ра. Вариант BEFORE означает, что триггер будет запускаться перед вы-
полнением активизирующего DML-оператора; вариант AFTER означает,
что триггер будет запускаться после выполнения активизирующего
DML-оператора.
Конструкция INSERT | DELETE | UPDATE [OF список_столбцов]
указывает тип активизирующего триггер DML-оператора. Разрешается,
используя логическую операцию OR, задать совокупность активизи-
рующих операторов, например INSERT OR DELETE. Если при исполь-
зовании варианта UPDATE указан список столбцов, то триггер будет за-
пускаться при модификации одного из указанных столбцов; если список
столбцов отсутствует, то триггер будет запускаться при изменении лю-
бого из столбцов связанной с триггером таблицы.
Конструкция FOR EACH ROW указывает на характер воздействия
триггера: строковый или операторный. Если конструкция FOR EACH
ROW присутствует, то триггер является строковым; при отсутствии ее
триггер является операторным. Операторный триггер запускается один
раз до или после выполнения активизирующего триггер DML-оператора
независимо от того, сколько строк в связанной с триггером таблице под-
вергается модификации. Строковый триггер запускается один раз для
каждой из строк, которая подвергается модификации DML-оператором,
активизирующим триггер.
С помощью ключевого слова WHEN можно задать дополнительное
ограничение на строки связанной с триггером таблицы, при модифика-
ции которых может быть запущен триггер.
Конструкция PL/SQL_блок представляет блок PL/SQL, который за-
пускается при активизации триггера.
Достарыңызбен бөлісу: