Как определить AUTONOMOUS_TRANSACTION в оракуле? - PullRequest
0 голосов
/ 13 марта 2019

Как определить autonomous pragma для error logging в Oracle с помощью процедуры. Моя структура таблицы как ниже.

  CREATE TABLE error_logs (
      id             NUMBER(10)     NOT NULL,
      log_timestamp  TIMESTAMP      NOT NULL,
      error_message  VARCHAR2(4000),
      CONSTRAINT error_logs_pk PRIMARY KEY (id)
              );

  CREATE SEQUENCE error_logs_seq
   start with 1
   nocycle
   nocache;

Я попробовал ниже код для моего требования.

CREATE OR REPLACE PROCEDURE log_errors (p_error_message  IN  VARCHAR2) AS
  PRAGMA AUTONOMOUS_TRANSACTION;
BEGIN
  INSERT INTO error_logs (id, log_timestamp, error_message)
  VALUES (error_logs_seq.NEXTVAL, SYSTIMESTAMP, p_error_message);
  COMMIT;
END;
/
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...