gpt4 book ai didi

java - ErrorCode 和 SQLState 组合是否可以被视为某些异常的唯一 ID?

转载 作者:太空宇宙 更新时间:2023-11-04 07:27:12 25 4
gpt4 key购买 nike

一般来说,将 ErrorCode 和 SQLState 组合视为特定异常的唯一 ID,作为代码逻辑的基础是否安全?

更具体地说,DataDirect 是否遵循这样的事情?

另外对于我需要的确切案例,我的代码生成以下异常:

[SQLServer JDBC 驱动程序]不支持更改默认可保持性...

以及以下内容:

System.out.println(">e.getErrorCode: " + e.getErrorCode());
System.out.println(">e.getSQLState: " + e.getSQLState());

正在回归:

>e.getErrorCode:  0
>e.getSQLStat: hy000

那么可以安全地假设,如果我检查 0 && hy00 那么我只过滤我之前提到的异常?

如果我可以获得说明此类事实的官方 DataDirect 文档的引用,将会非常有帮助。

最佳答案

不,你不能假设这一点。 SQLState HY000 只是一个通用 CLI SQL 错误(由 SQL CLI 标准定义),错误代码 0 表示“未设置特定错误代码”。通常,当没有更具体的可用信息或者开发人员没有指定任何其他内容时,驱动程序会使用 HY000 作为 SQLState。

即使一般情况下,单个 SQLState 也可以涵盖非常广泛的错误,并且单个错误代码(0 除外)是否用于一个错误或一组错误可能取决于数据库和错误的上下文。

关于java - ErrorCode 和 SQLState 组合是否可以被视为某些异常的唯一 ID?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18363693/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com