检查 PL/SQL 异常块中的特定错误代码

Posted

技术标签:

【中文标题】检查 PL/SQL 异常块中的特定错误代码【英文标题】:checking for specific error code in PL/SQL exception block 【发布时间】:2013-05-08 23:18:29 【问题描述】:

我得到 ORA-06503: PL/SQL: Function return without value error in a pl/sql trigger code。我实际上只想在发生此错误时进行一些特定的异常处理,否则在我的代码中执行常规异常处理。 我的问题是如何捕获异常块中的特定 ORA 代码。如果我想添加一个 if 条件,比如

If(oracode = something) then ...
else ...

SQLERRM 给出带有错误消息的 ora 代码。如何在 IF 条件下使用它?

需要帮助

谢谢。

【问题讨论】:

【参考方案1】:

您正在寻找 SQLCODE - 出现错误时这些是负数。

if SQLCODE = -6503 then  ....

【讨论】:

以上是关于检查 PL/SQL 异常块中的特定错误代码的主要内容,如果未能解决你的问题,请参考以下文章

如何处理 pl/sql 块中的编译时异常?

在 JDBC PL/SQL 块中多次使用命名参数时出错

pl/sql 块中的子选择上的 Oracle 8i 动态 SQL 错误

PL/SQL数据开发那点事

PL/SQL 异常 ORA-06511 游标已打开

从 pl/sql 异常块中“一次”关闭所有游标