Учебное пособие Для студентов университетов Специальностей «Информатика», «Прикладная математика»



Pdf көрінісі
бет146/177
Дата15.02.2022
өлшемі2,58 Mb.
#25567
түріУчебное пособие
1   ...   142   143   144   145   146   147   148   149   ...   177
Создание и включение триггеров. 
Для создания и автоматического 
включения триггера применяется следующий общий синтаксис: 
CREATE  [OR  REPLACE]  TRIGGER  имя_триггера 
{BEFORE  |  AFTER} 
{INSERT  |  DELETE  |  UPDATE  [OF  список_столбцов]}   
ON  имя_таблицы   [FOR  EACH  ROW]   [WHEN  условие] 
< PL/SQL_блок > 
 
163


 
При наличии ключевых слов 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, который  за-
пускается при активизации триггера. 


Достарыңызбен бөлісу:
1   ...   142   143   144   145   146   147   148   149   ...   177




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет