
各位大哥大姐帮忙解决一下,用Java连接Access数据库时出错,以下是Java程序和报的错。
importjava.sql.*;publicclassJDBCDemo{publicStringurl="jdbc:odbc:driver={MicrosoftAcce...
import java.sql.*;
public class JDBCDemo {
public String url="jdbc:odbc:driver={Microsoft Access Driver (*.mdb, *.accdb)};DbQ=src/database/specharacter.accdb";
public Connection connect=null;
public Statement stmt=null;
public ResultSet rs=null;
public JDBCDemo(){
try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
connect=DriverManager.getConnection(url);
stmt=connect.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_UPDATABLE);
}catch(Exception e){
System.out.println(e.toString());
}
}
public ResultSet executeSelect(String sql){
try{
rs=null;
rs=stmt.executeQuery(sql);
return rs;
}catch(Exception e){
System.out.println(e.toString());
return null;
}
}
public void executeDML(String sql){
try{
stmt.execute(sql);
}catch(Exception e){
System.out.println(e.toString());
}
}
public static void main(String[] args){
new JDBCDemo();
}
}
------------------------------------------------------------------------------------------------------
报错:
java.aql.SQLException:[Microsoft][ODBC Microsoft Access Driver]常见错误 无法打开
注册表项"Temporary <volatile> Ace DSN for process 0*17b4 Thread 0*199c DBC 0*
6ff93c8 Jet" 展开
public class JDBCDemo {
public String url="jdbc:odbc:driver={Microsoft Access Driver (*.mdb, *.accdb)};DbQ=src/database/specharacter.accdb";
public Connection connect=null;
public Statement stmt=null;
public ResultSet rs=null;
public JDBCDemo(){
try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
connect=DriverManager.getConnection(url);
stmt=connect.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_UPDATABLE);
}catch(Exception e){
System.out.println(e.toString());
}
}
public ResultSet executeSelect(String sql){
try{
rs=null;
rs=stmt.executeQuery(sql);
return rs;
}catch(Exception e){
System.out.println(e.toString());
return null;
}
}
public void executeDML(String sql){
try{
stmt.execute(sql);
}catch(Exception e){
System.out.println(e.toString());
}
}
public static void main(String[] args){
new JDBCDemo();
}
}
------------------------------------------------------------------------------------------------------
报错:
java.aql.SQLException:[Microsoft][ODBC Microsoft Access Driver]常见错误 无法打开
注册表项"Temporary <volatile> Ace DSN for process 0*17b4 Thread 0*199c DBC 0*
6ff93c8 Jet" 展开
1个回答
展开全部
url="jdbc:odbc:driver={Microsoft Access Driver (*.mdb, *.accdb)};DbQ=src/database/specharacter.accdb";
这里的连接字符串,一般来说,是要用绝对路径的,你写错了,他找不到你的MDB文件 ,就会报这个错误了。
这里的连接字符串,一般来说,是要用绝对路径的,你写错了,他找不到你的MDB文件 ,就会报这个错误了。
追问
谢谢你,问题解决了!上面的错误是我用JCreator运行时出现的,但是如果用MyEclipse运行就没有上面的错误,这是为什么?
补充:我在工程文件夹的src文件夹里建了一个database文件夹里面就是我的数据库文件specharacter.accdb
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询