确定PL/SQL异常的类型



在OTHERS异常块中,我想显示异常的类型。

EXCEPTION
    WHEN OTHERS THEN 
        DBMS_OUTPUT.PUT_LINE( -- I want to display the type of exception here -- ); 
END;

我更喜欢健壮的异常块,而不是没有任何特定目的的琐碎的EXCEPTION WHEN OTHERS THEN。请永远记住,您捕获异常,然后对其采取措施。否则,您需要对其进行RE-RAISE以将句柄返回给调用者。

在您的异常块中,添加以下内容:

DBMS_UTILITY. FORMAT_ERROR_STACK; DBMS_UTILITY.FORMAT_ERROR_BACKTRACE 这将为您提供错误堆栈,回溯过程将让您知道错误的确切数量。由于EXCEPTION从调用方获取句柄,因此调用方永远不会知道引发的错误。包含RAISE语句以重新引发错误并将其返回给调用者。最好有一个错误记录表,以便为未来的研究记录错误。

关于其他人,请阅读我的文章,http://lalitkumarb.wordpress.com/2014/05/02/when-others-then-null-a-bug/

相关内容

  • 没有找到相关文章

最新更新