JDBC驱动程序的版本和DB的版本是否必须完全匹配?

use*_*710 14 postgresql jdbc version

假设我在服务器上运行了postgresql 9.1,但我选择使用9.2驱动程序来访问它.这会有用吗?如果没有,这些版本检查是否总是强制执行,还是取决于您的DBMS?

Luc*_*cci 12

不是强制性的.
驱动程序可以支持多个版本的RDBMS,或者只支持特定的一个版本.
通常每个驱动程序都提供了兼容性表,以便您可以针对您的RDMBS版本选择最新的驱动程序版本(通常包含错误修正,改进,...),或者只选择与您的RDBMS兼容的最新驱动程序以用于旧版方案.

http://jdbc.postgresql.org/download.html

这是驱动程序的当前版本.除非您有不寻常的要求(运行旧应用程序或JVM),否则这是您应该使用的驱动程序.它支持Postgresql 7.2或更高版本,需要1.5或更高版本的JVM.它包含对SSL和javax.sql包的支持.它有两种版本,JDBC3和JDBC4.如果您使用的是1.6或1.7 JVM,那么您应该使用JDBC4版本.

  • @ user991710您通常不希望对较新的服务器使用*旧的*JDBC驱动程序,因为它可能在理解较新服务器的元数据时遇到问题.使用旧服务器的较新的JDBC驱动程序很好. (4认同)