- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
在 JDBC 中,Connection
、Statement
和 ResultSet
类型都有一个 getWarnings()
方法,即指定产生与该类型对象关联的第一个警告。第二个和后续警告(如果存在)将链接到第一个警告(如果 它 甚至存在,如果没有警告则生成 null
)。
规范说,与这些类型的对象关联的警告在执行某些操作后会被清除。例如,当读取每个新行时,ResultSet
上的警告将被清除。
SQLWarning
类型是 SQLException
的子类型。那么警告的存在是否会由异常指示?如果异常的运行时类型是 SQLWarning
,那么该异常将被链接到关联的对象?
我想知道的是,它可能是特定于驱动程序的,我怎么知道什么时候应该调用 getWarnings()
并期望一个非 null
response? 换句话说,警告是否存在于 JDBC 对象上并且仅在该对象引发异常后才可用于 getWarnings()
? (那个异常(exception)是警告?)
如果我的目标是观察每个警告,我是否应该在每次 JDBC 操作后调用 getWarnings()
来查找警告“只是为了确定”?
最佳答案
SQLWarning
对象是 SQLException
的子类,用于处理数据库访问警告。
警告不会像异常那样停止应用程序的执行;他们只是提醒用户某些事情没有按计划发生。
可以在Connection
对象、Statement
对象(包括PreparedStatement
和CallableStatement
对象)上报警告), 或 ResultSet
对象。
这些类中的每一个都有一个 getWarnings
方法,您必须调用该方法才能看到调用对象上报告的第一个警告:
SQLWarning warning = stmt.getWarnings();
if (warning != null)
{
System.out.println(\"n---Warning---n\");
while (warning != null)
{
System.out.println(\"Message: \" + warning.getMessage());
System.out.println(\"SQLState: \" + warning.getSQLState());
System.out.print(\"Vendor error code: \");
System.out.println(warning.getErrorCode());
System.out.println(\"\");
warning = warning.getNextWarning();
}
}
关于java - 何时使用 JDBC 对连接、语句和结果集调用 getWarnings()?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6434338/
我不明白 Connection.getWarning() 和 Statement.getWarnings() 之间有什么区别?Connection.getWarning 包含所有语句的警告和 Stat
当 ResultSet 的方法 getWarnings 真的会返回 SQLWarning 吗?我正在使用 Oracle Thin Driver,我尝试了数据转换,例如将 12345.678 转换为 j
在 JDBC 中,Connection、Statement 和 ResultSet 类型都有一个 getWarnings() 方法,即指定产生与该类型对象关联的第一个警告。第二个和后续警告(如果存在)
本文整理了Java中org.apache.sis.io.wkt.WKTFormat.getWarnings()方法的一些代码示例,展示了WKTFormat.getWarnings()的具体用法。这些代
我正在创建一个通过 JDBC 调用的 sybase 存储过程。在某些错误条件下,我希望我的存储过程向 JDBC 调用者返回警告。我需要在存储过程中添加什么 Statement.getWarnings(
我是一名优秀的程序员,十分优秀!