No suitable driver found

wd9053 2010-07-01 02:20:43
控制面板已添加数据源并且连接正常,可还找不到驱动,请各位指点一下
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement;
import java.sql.ResultSet;

public class Test
{
public static void main(String[] args)
{
try
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con = DriverManager.getConnection("jdbc::odbc:mine", "scott", "tiger");

Statement sm = con.createStatement();
ResultSet rs = sm.executeQuery("select * from emp");
while(rs.next())
{
System.out.println("用户名" + rs.getString(2));
}
}
catch(Exception ex)
{
ex.printStackTrace();
}
}
}
...全文
1306 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
wd9053 2010-07-01
  • 打赏
  • 举报
回复
[Quote=引用 14 楼 iihero 的回复:]
sigh, 楼主,还是你的代码问题啊,你好粗心哦:-)

Connection con = DriverManager.getConnection("jdbc::odbc:mine", "scott", "tiger");

应该是jdbc:odbc:mine
多了一个冒号
[/Quote]

额,我错了。。感谢大家的帮忙
iihero_ 2010-07-01
  • 打赏
  • 举报
回复
sigh, 楼主,还是你的代码问题啊,你好粗心哦:-)

Connection con = DriverManager.getConnection("jdbc::odbc:mine", "scott", "tiger");

应该是jdbc:odbc:mine
多了一个冒号
wd9053 2010-07-01
  • 打赏
  • 举报
回复
自己顶一下
wd9053 2010-07-01
  • 打赏
  • 举报
回复
java.sql.SQLException: No suitable driver found for jdbc::odbc:mine
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at Test.main(Test.java:45)
cyousor 2010-07-01
  • 打赏
  • 举报
回复
换这个呢

Class.forName( "sun.jdbc.odbc.JdbcOdbcDriver" );


试试
iihero_ 2010-07-01
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 wd9053 的回复:]

我在控制面板-ODBC数据源管理器-用户DSN中创建了一个数据源mine,mine连接数据库TEST,在控制面板中用scott/tiger测试连接正常
[/Quote]
那就奇怪了,你把stacktrace完整的帖出来吧,可能跟环境有关。
wd9053 2010-07-01
  • 打赏
  • 举报
回复
我在控制面板-ODBC数据源管理器-用户DSN中创建了一个数据源mine,mine连接数据库TEST,在控制面板中用scott/tiger测试连接正常
wd9053 2010-07-01
  • 打赏
  • 举报
回复
但是用jdbc连接却正常
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;

public class Test
{
public static void main(String[] args)
{
try
{
//加载驱动
Class.forName("oracle.jdbc.driver.OracleDriver");
//得到连接
Connection ct = DriverManager.getConnection("jdbc:oracle:thin:@127.0.0.1:1521:TEST", "scott", "tiger");

//从下面开始和sql server一样
Statement sm = ct.createStatement();
ResultSet rs = sm.executeQuery("select * from emp");
while(rs.next())
{
System.out.println("用户名" + rs.getString(2));
}
}
catch(Exception ex)
{
ex.printStackTrace();
}
}
}
iihero_ 2010-07-01
  • 打赏
  • 举报
回复
楼主用的是jdbc-odbc桥方式,所以,根本 不需要oracle的jdbc驱动,反倒是需要oracle的odbc驱动。
你得创建一个oracle odbc数据源:mine
先自己测试这个数据源看能否连通吧
luocb1980 2010-07-01
  • 打赏
  • 举报
回复
倒,加入你的java project的build path。
wd9053 2010-07-01
  • 打赏
  • 举报
回复
classpath=.;F:\Program Files\Java\jdk1.6.0_13\lib;F:\app\wd\product\11.1.0\db_2\
sqldeveloper\jdbc\lib\ojdbc14.jar;F:\app\wd\product\11.1.0\db_2\oui\jlib\classes
12.jar
仍然报错
luocb1980 2010-07-01
  • 打赏
  • 举报
回复
你把class12.jar加入build path.
cyousor 2010-07-01
  • 打赏
  • 举报
回复
不是,是class12.jar或者ojdbc14.jar之类的
wd9053 2010-07-01
  • 打赏
  • 举报
回复
系统已安装的驱动程序
Oracle in OraDb11g_home2

是这个吗?
cyousor 2010-07-01
  • 打赏
  • 举报
回复
你导入驱动包了么,,,oracle12 什么的

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧