我正在使用 Connector/J 5.1.10 作为我的数据库应用程序(使用 MySQL)的 JDBC 驱动程序。
我发现虽然 Statement 返回的默认 ResultSet 是 TYPE_FORWARD_ONLY 类型,但我仍然能够安全地调用 ResultSet 上的 previous() 方法。
我还查看了源代码 (com.mysql.jdbc.ResultSetImpl),发现它也没有对 ResultSet 的类型进行任何检查。
Connector/J 是否不完全符合 JDBC 规范?
谢谢。
最佳答案
API 文档说 ResultSet#previous() 应该抛出 SQLException“如果……结果集类型是 TYPE_FORWARD_ONLY”,所以我想可以安全地假设 J/Connector 违反了这里的规范。
关于java - MySQL JDBC 驱动程序是否符合 JDBC 规范?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2070622/