1

DB2 (LUW) 是否支持 JDBC 4.1?

如果存在此驱动程序,我可以从哪里下载该驱动程序?

4

2 回答 2

2

用于 JDBC v3 的 db2 驱动程序称为 db2jcc.jar

对于版本 4,DB2 的 JDBC 驱动程序称为 db2jcc4.jar,文档中说:JDBC 4.0 或更高版本的函数。

您的问题是针对 JDBC 4.1 的,但是 DB2 文档没有说明这个 JDBC 特定版本(RowSetProviderClass 和自动关闭连接,声明一个结果集)

此 jdbc 版本似乎没有此 jdbc 驱动程序。

http://pic.dhe.ibm.com/infocenter/db2luw/v10r5/topic/com.ibm.db2.luw.apdv.java.doc/src/tpc/imjcc_cjvintro.html

db2 jdbc 驱动列表:http ://www-01.ibm.com/support/docview.wss?uid=swg21363866

于 2014-05-13T16:32:45.843 回答
1

作为对上面提到的@AngocA 的后续回答,我开发了一个简单的程序来测试 DB2 驱动程序以检查其与JDBC. 我发现第一个声称支持这种支持的 DB2 驱动程序是 driver 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();
        } 
    }
}

在Eclipse 的选项卡中,您的.classpath 哪个看起来像这样: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
于 2016-02-23T15:19:55.043 回答