连接数据库错误:No suitable driver!数据库是mdb,以下是相关代码,大家帮忙看看,谢谢!
class Conn
{
protected String DriverName;
protected String DBURL;
protected Connection cn;
protected Statement stmt;
protected ResultSet rs;
//Data data=new Data();
public Conn()
{
DriverName="sun.jdbc.odbc.JdbcOdbcDriver";
DBURL="jdbc:odbc:PhoneBook";
cn=null;
}
public void DBConnect()
{
try
{
cn=DriverManager.getConnection(DBURL);//提示错误就在这一行
}
catch (SQLException e)
{
// TODO 自动生成 catch 块
e.printStackTrace();
}
}
}小弟初学java,很多不懂,还望大家不吝赐教!谢谢!
class Conn
{
protected String DriverName;
protected String DBURL;
protected Connection cn;
protected Statement stmt;
protected ResultSet rs;
//Data data=new Data();
public Conn()
{
DriverName="sun.jdbc.odbc.JdbcOdbcDriver";
DBURL="jdbc:odbc:PhoneBook";
cn=null;
}
public void DBConnect()
{
try
{
cn=DriverManager.getConnection(DBURL);//提示错误就在这一行
}
catch (SQLException e)
{
// TODO 自动生成 catch 块
e.printStackTrace();
}
}
}小弟初学java,很多不懂,还望大家不吝赐教!谢谢!
这不就是说没有合适的驱动吗
public Conn()
{
DriverName="sun.jdbc.odbc.JdbcOdbcDriver";
Class.forName(DriverName);
DBURL="jdbc:odbc:PhoneBook";
cn=null;
}
还有,你要在程序前面加上
import java.sql.*;应该就是这两个问题
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
cn=DriverManager.getConnection(DBURL);//
public Conn()
{
DriverName="sun.jdbc.odbc.JdbcOdbcDriver";
Class.forName(DriverName);
DBURL="jdbc:odbc:PhoneBook";
cn=null;
}
还有,你要在程序前面加上
import java.sql.*;应该就是这两个问题
=======================================================
不能像你说的那样该,该之后提示“Class.forName(DriverName);”是一个未处理的异常类
还有java.sql.*;我倒入了,只是这里没有写出来
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
cn=DriverManager.getConnection(DBURL);//
=========================================================================
数据源建了!
Class.forName(DriverName);的问题
你贴出来的内容我觉得应该没什么错误了
要不你把整个程序贴出来我给你看看
try
{
Class.forName("jdbc:odbc:JdbcOdbcDriver");
}
catch(Exception e){}
还是那样我再把调用它的代码发出来吧,顺便大家也帮我看看有没有其他的错误================================================================================
......
{
......
Conn conn=new Conn();
......
}public void listInit()
{
try{
conn.DBConnect();
conn.stmt=conn.cn.createStatement();
String strSQL="select * from PhoneBook";
conn.rs=conn.stmt.executeQuery(strSQL);
Class.forName(conn.DriverName);
}
catch(ClassNotFoundException e)
{
System.out.println("Error:Can not load JDBC!");
}
catch(Exception e)
{
System.out.println(e.getMessage());
}
try
{
data.Name=conn.rs.getString(1);
data.Sex=conn.rs.getString(2);
data.Number=conn.rs.getString(3);
data.Address=conn.rs.getString(4);
list.add(data.Name+" "+data.Sex+" "+data.Number+" "+data.Address);
rs.close();
stmt.close();
}
catch(SQLException c)
{
System.out.println(c.getMessage());
}
catch(Exception e)
{
System.out.println(e.getMessage());
}
finally
{
if(conn.cn!=null)
{
try
{
conn.cn.close();
}
catch(Exception e)
{
e.printStackTrace();
}
}
}
}
然后才能用Connectio conn=DriverManager.getConnection("jdbc:odbc:数据源")
Statement stat=conn.createStatement();
ResultSet rs=stat.executeQuery("select * from PhoneBook");
如果还不行那就可能是你的环境变量没有设好
try
{
Class.forName("jdbc:odbc:JdbcOdbcDriver");
}
catch(Exception e){}
{
DriverName="sun.jdbc.odbc.JdbcOdbcDriver";
DBURL="jdbc:odbc:PhoneBook";
try
{
Class.forName(DriverName);
}catch(Exception e){}}public void DBConnect()
{
try
{
cn=DriverManager.getConnection(DBURL);
}
catch (SQLException e)
{
// TODO 自动生成 catch 块
e.printStackTrace();
}
}
}
不行把完整代码贴出来