DB2(LUW)是否支持JDBC 4.1?
如果存在,我可以从哪里下载此驱动程序?
答案 0 :(得分:1)
JDBC v3的db2驱动程序名为db2jcc.jar
对于版本4,DB2的JDBC驱动程序称为db2jcc4.jar,文档说:JDBC 4.0或更高版本的函数。
您的问题是针对JDBC 4.1的,但是DB2文档没有说明这个特定于JDBC的版本(RowSetProviderClass和自动关闭连接,声明结果集)
这个jdbc驱动程序似乎不适用于此jdbc版本。
db2 jdbc驱动程序列表:http://www-01.ibm.com/support/docview.wss?uid=swg21363866
答案 1 :(得分:1)
作为@AngocA上面提到的内容的后续答案,我开发了一个简单的程序来测试DB2驱动程序,以检查其与JDBC
的合规性级别。
我发现声称这种支持的第一个DB2驱动程序是驱动程序4.13.127
。
所以之后的任何事情都应该支持JDBC 4.1
以下是我可以用来检查合规级别的简单程序:
import java.sql.Connection;
import java.sql.DatabaseMetaData;
import java.sql.DriverManager;
import java.sql.SQLException;
public class tester {
// Replace these info with your DB2 info
private final static String hostName = "mydb2.db2.com";
private final static String portNum = "50000";
private final static String userName = "dasusr";
private final static String password = "db2sdin";
private final static String dbName = "mydb";
private final static String fullURL = "jdbc:db2://" + hostName + ":" + portNum
+ "/" + dbName + ":" + "user=" + userName
+ ";password=" + password + ";";
public static void main(String[] args) {
Connection con = null;
try {
con = DriverManager.getConnection(fullURL);
DatabaseMetaData conMD = con.getMetaData();
String driverName = conMD.getDriverName();
String driverVersion = conMD.getDriverVersion();
String jdbcVersion = conMD.getJDBCMajorVersion()
+"."+ conMD.getJDBCMinorVersion();
System.out.println("driverName: " + driverName + "\n"
+"driverVersion: "+ driverVersion + "\n"
+"jdbcVersion: "+ jdbcVersion);
} catch (SQLException e) {
e.printStackTrace();
}
}
}
在.classpath
中,在eclipse的Navigator
标签中看起来像这样:
添加您要测试的驱动程序的位置,如下所示:
<classpath>
<classpathentry kind="src" path="src"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse
.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
<!-- driver_4.13.127 -->
<classpathentry kind="lib" path="driver_4.13.127/db2jcc_license_cisuz.jar"/>
<classpathentry kind="lib" path="driver_4.13.127/db2jcc4.jar"/>
<classpathentry kind="output" path="bin"/>
</classpath>
然后您应该得到类似于此的输出:
driverName: IBM Data Server Driver for JDBC and SQLJ
driverVersion: 4.13.127
jdbcVersion: 4.1