Функция SQLERRM

Что делает функция SQLERRM?

Функция SQLERRM возвращает сообщение об ошибке связанной с последним из возникших срабатываний оператора exception. Эта функция должна использоваться только в блоке Exception вашего кода:

EXCEPTION

    WHEN exception_name1 THEN

        [statements]

    WHEN exception_name2 THEN

        [statements]

    WHEN exception_name_n THEN

        [statements]

    WHEN OTHERS THEN

        [statements]

END [procedure_name];

Вы можете использовать функцию SQLERRM для вывода текста ошибок следующим образом:

EXCEPTION

   WHEN OTHERS THEN

      raise_application_error(-20001,’An error was encountered – ‘||SQLCODE||’ -ERROR- ‘||SQLERRM);

END;

Или вы можете вести лог ошибок в таблице, например так:

EXCEPTION

   WHEN OTHERS THEN

      err_code := SQLCODE;

      err_msg := substr(SQLERRM, 1, 200);

      INSERT INTO audit_table (error_number, error_message)

      VALUES (err_code, err_msg);

END;

Оставить комментарий