【发布时间】:2016-01-27 03:37:56
【问题描述】:
我在 Oracle 中有一个存储过程,它在某些情况下使用 RAISE_APPLICATION_ERROR 引发用户定义的错误。用户自定义错误码为-20000。
我正在使用 VB.NET 从 ASP.NET 应用程序调用存储过程,我想捕获这个特定错误并显示自定义错误消息,但是 VB.NET 捕获的错误号为 20000,而不是 - 20000.
是否有其他方法来捕获此错误或更好的方法来解决此问题?谢谢!
【问题讨论】:
我在 Oracle 中有一个存储过程,它在某些情况下使用 RAISE_APPLICATION_ERROR 引发用户定义的错误。用户自定义错误码为-20000。
我正在使用 VB.NET 从 ASP.NET 应用程序调用存储过程,我想捕获这个特定错误并显示自定义错误消息,但是 VB.NET 捕获的错误号为 20000,而不是 - 20000.
是否有其他方法来捕获此错误或更好的方法来解决此问题?谢谢!
【问题讨论】:
在做了更多研究之后,我认为 20000 错误代码是我需要捕获的。根据下面的链接,ORA-20000 是针对由 RAISE_APPLICATION_ERROR 生成的异常,所以我认为我只捕获 20000 而不是 -20000 是安全的。这让我很困惑。
https://docs.oracle.com/cd/B28359_01/server.111/b28278/toc.htm
【讨论】: