JConnect错误代码列表是什么?
时间:2020-03-06 14:43:06 来源:igfitidea点击:
我最近更改了一个应用程序,将数据库用户名和密码存储在配置文件中(gasp密码以纯文本格式存储在配置文件中)。
现在,该应用程序要求用户输入用户名和密码,然后才能继续。
现在,新版本的应用程序必须查询SQLException以确定导致异常的原因(无效的用户名或者密码,无法访问数据库服务器,连接超时等)。
这样,它就可以决定下一步要做什么(提示用户更正用户名和密码,告诉用户在解决网络问题后再试一次,不可见地重新连接等)。
试图找到与这些(和其他)原因相关的" SQLException" errorCodes(SQLException.getErrorCode())几乎是不可能的,我们不得不猜测(有时可能很危险)。
Java API文档说这是特定于供应商的。
是否有人可以通过" Sybase JConnect JDBC驱动程序"设置错误代码?
JRE 1.5
- jConnect for JDBC 2.0(规范版本5.2)
- Sybase IQ 12.7
解决方案
似乎捕获的SQLException中的大多数errorCodes为0。
这意味着我们必须检查Connection
/Statement
/ResultSet
的SQLWarnings
connection.getWarnings();
或者链接到抛出的异常的异常
sqlException.getNextException();
这里棘手的事情是,链接的异常可能是SQLException或者IOException以及其他(可能不记得遇到其他)。