问题描述
- java用odbc连接oracle的一个问题
-
package 数据库基本操作01;import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;//演示:如何使用jdbc_odbc桥连接方式:
public class TextOra {
public static void main(String[] args) {
try{
//1.加载驱动
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
//得到连接
Connection ct=DriverManager.getConnection("jdbc:odbc:Oracle",
"scott", "scott");
//创建连接数据库的通道
Statement sm=ct.createStatement();
//接收结果
ResultSet rs=sm.executeQuery("select * from emp");
while(rs.next())
{
System.out.println("用户名"+rs.getString(2));
}rs.close(); sm.close(); ct.close(); }catch(Exception e){ e.printStackTrace(); } }
}
报的错为:java.lang.ClassNotFoundException: sun.jdbc.odbc.JdbcOdbcDriver
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Unknown Source)
at 数据库基本操作01.TextOra.main(TextOra.java:13)
是不是需要提前下载什么东西,还是操作不对,还是代码有错误?
解决方案
参考java.lang.ClassNotFoundException: sun.jdbc.odbc.JdbcOdbcDriver解决方法!
jdk从1.8开始,删除了jdbc-odbc桥,所以odbc的驱动是用不了的,建议重新安装jdk1.7或者更低的版本
解决方案二:
加载驱动建议你用 oracle.jdbc.driver.OracleDriver