oracle pl / sql将异常类型传递给函数

时间:2017-09-13 06:38:00

标签: oracle exception plsql

我试图找出是否有办法在when子句中明确实现所有predefined Exceptions的情况下获取异常类型。

我写了一个发送邮件的功能。我在PL / SQL过程的when others子句中调用此函数,有没有办法将类型作为varchar传递?
将Exception消息作为参数传递也是非常好的。

问候

3 个答案:

答案 0 :(得分:0)

在Oracle文档中搜索: DBMS_UTILITY.FORMAT_ERROR_STACK

答案 1 :(得分:0)

有几种方式,我使用SQLERRM

EXCEPTION
  WHEN CANNOTPROCEED THEN


      ORA_ERROR:=SQLERRM;

      ROLLBACK;
insert into LOG_TABLE (LOG_ERROR) Values();
commit;

答案 2 :(得分:0)

Mat中建议的comment,可以简单地使用变量SQLCODESQLERRM来检索异常。它本身并不检索Exception的类型,但它肯定提供了足够的信息来解决问题。 Oracle Documentation