DeepEdit!

Программирование баз данных на Oracle, техническая документация, литература, статьи и публикации

  • Увеличить размер шрифта
  • Размер шрифта по умолчанию
  • Уменьшить размер шрифта

Функции событий

Существует ряд атрибутных функций, которые разрешается использовать в системных триггерах. Подобно триггерным предикатам (INSERTING, UPDATING и DELETING), они позволяют получать информацию об ак­тивизирующем событии в теле триггера. Хотя эти функции можно вызы­вать и из других блоков PL/SQL (не только в теле системного триггера), возвращаемый ими результат не всегда будет достоверным. Атрибутные функции событий описаны в таблице 11.5.
Использование события SERVERERROR
Событие SERVERERROR применяется для отслеживания ошибок, проис­ходящих в базе данных. Код ошибки можно узнать в триггере посредством атрибутной функции SERVER_ERROR. Она возвращает коды ошибок, на­ходящихся в стеке, но не выдает сообщений, соответствующих этим кодам.
Решить эту проблему можно с помощью процедуры DBMS_UTILiTY. FORMAT_ERROR_STACK. Даже если сам триггер не приводит к ошибке, эта процедура обеспечивает доступ к стеку ошибок в PL/SQL. Приведем пример, где ошибки регистрируются в следующей таблице:




 









jAntivirus