我想将Java 8与Access连接,但发生以下错误,我不知道如何解决它。我总是得到这个错误:
java.sql.SQLException:没有为jdbc找到合适的驱动程序:ucanaccess:// C:/ Users / Ghazi / workspace / java w access / login.accdb
我添加了4个库:
这是我的代码
import java.sql.*;
public class DbConnection {
Connection con;
Statement st;
DbConnection(){
dbconnect();
}
//-----------------------
public void dbconnect(){
try
{
Connection conn=DriverManager.getConnection("jdbc:ucanaccess://C:/Users/Ghazi/workspace/java w access/login.accdb");
Statement stment = conn.createStatement();
}
catch(Exception err)
{
System.out.println(err);
}
}
//--------------------------
public static void main(String[]args){
DbConnection ob=new DbConnection();
}//end main
}
答案 0 :(得分:0)
我添加了4个库
您需要五(5)个库。您忘了添加“ucanaccess-x.y.z.jar”文件本身。
有关详细说明,请参阅
答案 1 :(得分:-1)
尝试添加" Class.forName():
public void dbconnect(){
try {
Class.forName("net.ucanaccess.jdbc.UcanaccessDriver");
Connection conn=DriverManager.getConnection("jdbc:ucanaccess://C:/Users/Ghazi/workspace/java w access/login.accdb");
Statement stment = conn.createStatement();
}
catch(Exception err) {
System.out.println(err);
}
}
基本问题是早期版本的Java / JDBC使用ODBC连接到MS-Access ...并且已从Java 8中删除了ODBC驱动程序。
有两种选择:
1)UCanAccess:http://ucanaccess.sourceforge.net/site.html
......或......
2)Jackcess(Jackcess 2.0:外面新的脆脆,同样美味的填充!):http://jackcess.sourceforge.net/
如果这不起作用:
3)请说明您正在使用的IDE(Eclipse等等 - 如果适用)
4)确保您的jackcess-2.0.7.jar明确包含在CLASSPATH中(如何执行此操作取决于您的IDE)
5)考虑使用名称
中没有空格的目录