当前位置: 技术问答>java相关
java连接oracle是出现的问题
来源: 互联网 发布时间:2017-04-10
本文导语: 程序的片断: public int beginConnect() { try { //加载一个Oracle驱动 DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver()); System.out.println ("dddddddddddddddd"); //使用OCI8连接到数据库 conn=DriverManager.getConnection("jdbc:oracl...
程序的片断:
public int beginConnect()
{ try
{ //加载一个Oracle驱动
DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
System.out.println ("dddddddddddddddd");
//使用OCI8连接到数据库
conn=DriverManager.getConnection("jdbc:oracle:thin:@"+dbNAME,userID,userPWD);
return 1;
}
catch(SQLException e) //捕捉SQL违例
{ System.out.println("Ora8iConnect在连接oracle8数据库时捕获");
while (e!=null)
{ System.out.println("SQLState:"+e.getSQLState());
System.out.println("Message :"+e.getMessage());
System.out.println("Vendor :"+e.getErrorCode());
e=e.getNextException();
System.out.println(" ");
}
conn=null;
return 0;
}
}
程序编译后,运行
抛出错误:
oracle.net.TNSAddress.SOException
at oracle.net.TNSAddress.ServiecAlias.iniFromNVPair(Unknown Source)
....
修改conn=DriverManager.getConnection("jdbc:oracle:thin:@"+dbNAME,userID,userPWD);为
conn=DriverManager.getConnection("jdbc:oracle:oci8:@"+dbNAME,userID,userPWD);后
编译,运行
抛出错误
Exception inthread "main" java.lang.UnsatisfiedLinkError:no ocijdbc8 in java.library.path
.....
我用sun.jdbc.odbc.JdbcOdbcDriver连接本机的oracle8。0。5,成功连接。
这是怎么回事???
public int beginConnect()
{ try
{ //加载一个Oracle驱动
DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
System.out.println ("dddddddddddddddd");
//使用OCI8连接到数据库
conn=DriverManager.getConnection("jdbc:oracle:thin:@"+dbNAME,userID,userPWD);
return 1;
}
catch(SQLException e) //捕捉SQL违例
{ System.out.println("Ora8iConnect在连接oracle8数据库时捕获");
while (e!=null)
{ System.out.println("SQLState:"+e.getSQLState());
System.out.println("Message :"+e.getMessage());
System.out.println("Vendor :"+e.getErrorCode());
e=e.getNextException();
System.out.println(" ");
}
conn=null;
return 0;
}
}
程序编译后,运行
抛出错误:
oracle.net.TNSAddress.SOException
at oracle.net.TNSAddress.ServiecAlias.iniFromNVPair(Unknown Source)
....
修改conn=DriverManager.getConnection("jdbc:oracle:thin:@"+dbNAME,userID,userPWD);为
conn=DriverManager.getConnection("jdbc:oracle:oci8:@"+dbNAME,userID,userPWD);后
编译,运行
抛出错误
Exception inthread "main" java.lang.UnsatisfiedLinkError:no ocijdbc8 in java.library.path
.....
我用sun.jdbc.odbc.JdbcOdbcDriver连接本机的oracle8。0。5,成功连接。
这是怎么回事???
|
我以前也碰到这样的问题,用ODBC连的上,但用JDBC连不上,我是用JNDI连接的,你可以试试看JNDI呀,
|
例子:
DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
con = DriverManager.getConnection ("jdbc:oracle:thin:@202.107.198.115:1521:orcl","l55bz", "ld!@bz");
DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
con = DriverManager.getConnection ("jdbc:oracle:thin:@202.107.198.115:1521:orcl","l55bz", "ld!@bz");
|
Exception inthread "main" java.lang.UnsatisfiedLinkError:no ocijdbc8 in java.library.path
你选用的方法是oci方法连接,因此要保证ocijdbc8.dll在你的path环境变量中。
使用thin连接无此问题
你选用的方法是oci方法连接,因此要保证ocijdbc8.dll在你的path环境变量中。
使用thin连接无此问题
|
ODBC应该没问题
|
which i