我想使用JDBC出于某种原因连接Oracle和DB2数据库。在主类中,当我尝试连接Oracle时,Connection是成功的但是DB2连接没有成功给出这个错误:“Yuva acilirken hata olustu”意味着“套接字无法打开”。可能是什么问题??? Oracle可以工作,但DB2不起作用。我一次又一次地检查了DB2的所有密码,用户名,主机名和端口。
COM.ibm.db2.jdbc.DB2Exception: [IBM][JDBC Driver] CLI0616E Yuva açılırken hata oluştu. SQLSTATE=08S01
at COM.ibm.db2.jdbc.net.SQLExceptionGenerator.socketException(Unknown Source)
at COM.ibm.db2.jdbc.net.DB2Connection.create(Unknown Source)
at COM.ibm.db2.jdbc.net.DB2Connection.<init>(Unknown Source)
at COM.ibm.db2.jdbc.net.DB2Driver.connect(Unknown Source)
at java.sql.DriverManager.getConnection(DriverManager.java:590)
at java.sql.DriverManager.getConnection(DriverManager.java:232)
要获得连接,我在main中写这些,
connORA = DirectConnection.getOracleConnection();
connDB2 = DirectConnection.getDB2Connection();
My Connection Class我定义了Oracle COnnection和DB2连接如下:(可能DB2连接方法存在问题?Oracle连接成功)
public static Connection getOracleConnection() throws SQLException, ClassNotFoundException{
return getConnection("oracle.jdbc.driver.OracleDriver", "jdbc:oracle:thin:@host:port:name", "username", "password");}
public static Connection getDB2Connection() throws SQLException{
return getConnection("COM.ibm.db2.jdbc.net.DB2Driver", "jdbc:db2://host:port:name","username", "password");}
答案 0 :(得分:1)
首先,正如@ ThePhantom05所提到的,你应该使用JCC驱动程序,而不是旧的网络驱动程序。 DB2 JDBC连接的正确URL模式为jdbc:db2://host:port/database_name
答案 1 :(得分:0)
尝试使用此作为您的驱动程序:
String driver =“com.ibm.db2.jcc.DB2Driver”;