Есть ли способ связать значения параметров с оператором, вызвавшим ошибку от триггера событий?

Есть ли способ получить значения входных параметров, если таковые имеются, привязанные к оператору, вызвавшему ошибку в базе данных из триггера? Независимо от того, если оператор в SQL оч, вызов процедуры / функции.

Я пытаюсь настроить журнал ошибок на уровне схемы, который работает нормально. Но я не могу найти способ записать значения параметров, и это действительно было бы полезно.

Пока триггер, который я использую, выглядит так...

CREATE OR REPLACE TRIGGER t_error
   AFTER SERVERERROR
   ON SCHEMA
DECLARE
   PRAGMA AUTONOMOUS_TRANSACTION;
   l_sql       ora_name_list_t;

   l_sequence  NUMBER;
   l_statement CLOB;
   l_count     NUMBER;
   l_ts        TIMESTAMP (6);
BEGIN
   l_count := ora_sql_txt (l_sql);

   IF l_count >= 1 THEN
      FOR i IN 1 .. l_count LOOP
         l_statement := l_statement || l_sql (i);
      END LOOP;
   END IF;

   INSERT INTO oralog
        VALUES (
           seq_oralog.NEXTVAL,
           dbms_utility.format_call_stack,
           dbms_utility.format_error_stack,
           dbms_utility.format_error_backtrace,
           l_statement,
           SYSTIMESTAMP
        );

   COMMIT;
END t_error;
/

Спасибо

0 ответов

Другие вопросы по тегам