非零的 sqlcode 值是不是总是指示 pl/sql 中的错误情况

Posted

技术标签:

【中文标题】非零的 sqlcode 值是不是总是指示 pl/sql 中的错误情况【英文标题】:Does a sqlcode value other than zero always indicate an error condition in pl/sql非零的 sqlcode 值是否总是指示 pl/sql 中的错误情况 【发布时间】:2013-07-11 16:06:42 【问题描述】:

如果 sqlcode 不为 0(在 oracle plsql 中)那么总是抛出异常?

如果不是,则询问 SQLCODE 是有意义的。 示例:

if (sqlcode = 0) ...

【问题讨论】:

这里的问题到底是什么? 单独的问号不会使句子成为问题。 if (sqlcode 0), the ... else... 在异常块之外有什么意义 如果sqlcode不为0那么总是抛出异常? 【参考方案1】:

如果您询问是否应该在 SQLCODE 不为零时总是抛出异常,并非总是如此。

这是list of some SQLCodes。可以看到,有些 SQLCodes(比如 100 )并不一定意味着有错误。

希望对你有帮助

【讨论】:

oracle 不一致。据我了解,sqlcode 仅在异常处理程序中才有意义。但如果 sqlcode 不为零,并不总是抛出异常。 是的。我只会在异常处理程序的上下文中查看 SQLCODE。但是,在追踪代码中的错误时,它可能很有用。由于我不知道在什么情况下回答您的问题,所以我试图尽可能笼统。【参考方案2】:

看起来您正在混合使用错误检查和异常处理。 SQLCODE,根据定义,只有在异常处理程序中才有意义。

引发异常是自动发生的。除非您的代码正在捕获异常并返回它们而不是重新引发它们。什么样的废墟 异常处理的重点。

【讨论】:

以上是关于非零的 sqlcode 值是不是总是指示 pl/sql 中的错误情况的主要内容,如果未能解决你的问题,请参考以下文章

stdio 是不是总是设置 errno?

验证非零的正整数

UIPopoverPresentationController 应该在演示发生之前设置一个非零的 sourceView 或 barButtonItem

Netsuite 项目搜索 - 目标:显示可用数量非零的项目

常用正则表达式整理

使用非零值初始化可选的 @AppStorage 属性