Oracle、DB2、MySql、SQLServer JDBC驱动

四种数据库JDBC驱动,还列出了连接的Class驱动名和Url Pattern,DB2包括Type 2、Type 3和Type 4三种模式。注意驱动包名称的大小写。

Oralce连接驱动包名和URL PATTERN为:oracle.jdbc.driver.OracleDriver,jdbc:oracle:thin:@<ServerIP>:<Port>:<DatabaseName>,默认端口号为1521。

MySql连接驱动包名和URL PATTERN为:com.mysql.jdbc.Driver,jdbc:mysql://<ServerIP>:<Port>/<DatabaseName>,默认端口号为3306。

SQLServer连接驱动包名和URL PATTERN为:net.sourceforge.jtds.jdbc.Driver,jdbc:jtds:sqlserver://<ServerIP>:<Port>;DatabaseName=<DatabaseName>,默认端口号为1433。

DB2的连接有些复杂,说明如下:

Type 1:
驱动程序基于 JDBC-ODBC 桥。因此 ODBC 驱动程序可以与此类 JDBC 驱动程序(由 Sun 提供)结合起来使用。IBM 不支持 Type 1 驱动程序,因此它不是推荐的环境。

Type 2:
URL:jdbc:db2:<DatabaseName>
需要在本地安装DB2的客户端程序,<DatabaseName>就是在DB2客户端程序里面设置的Database名称。
CLASS:
旧的/CLI JDBC 驱动程序在文件 db2java.zip 中提供,其实现包名称为 COM.ibm.db2.jdbc.app.DB2Driver。
通用 JDBC 驱动程序在文件 db2jcc.jar 中提供,其实现包名称为 com.ibm.db2.jcc.DB2Driver。

Type 3:
URL:jdbc:db2:<ServerIP>:<Port>:<DatabaseName>
必须与 DB2 JDBC Applet 服务器(DB2 JDBC Applet Server)通信才能访问 DB2 数据。目标DB2系统侦听该服务于默认端口6789,需要在数据库服务器端启动DB2jstrt命令,来开启网络端口。
CLASS:
驱动位程序由 DB2java.zip 中提供,其实现包名称为 COM.ibm.db2.jdbc.net.DB2Driver。

Type 4:
URL:jdbc:db2://<ServerIP>:<Port>/<DatabaseName>
数据库的编码为UTF-8,否则报错。DB2 服务器会在默认端口 50000 上进行侦听。
CLASS:
驱动位程序由 db2jcc.jar 中提供,其实现包名称为 com.ibm.db2.jcc.DB2Driver。

注意:
db2jcc.jar中MANIFEST.MF记录的版本为1.4.2,db2jcc4.jar中MANIFEST.MF记录的版本为1.6.0。若操作数据库报“Unicode string can't convert to Ebcdic string”或“Could not obtain connection metadata com.ibm.db2.jcc.b.SqlException: DatabaseMetaData information is not known for server DB2/NTSQL09050 by this version of JDBC driver”类似的异常,可用db2jcc4.jar替换db2jcc.jar,一般就能解决问题。

以上DB2说明大部分来自于网络,不保证完全准确,有出入的地方请留言说明,楼主好修改。

下载网址:Oracle、DB2、MySql、SQLServer JDBC驱动

参考:使用 JDBC 连接不同版本 DB2 数据库的兼容性问题

上一篇:com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown database 'user'


下一篇:jdk8 tomcat7