我想将 Java 8 与 Access 连接,但出现以下错误,我不知道如何修复它。我总是收到此错误:
java.sql.SQLException: No suitable driver found for jdbc:ucanaccess://C:/Users/Ghazi/workspace/java w access/login.accdb
我添加了 4 个库:
- hsqldb.jar
- jackcess-2.0.7.jar
- org.apache.commons.lang-2.6-source.jar
- org.apache.commons.loggin-1.1.1-source.jar
这是我的代码
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
}
最佳答案
尝试添加“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 ...并且 ODBC 驱动程序已从 Java 8 中删除。
可以使用两种替代方案:
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) 考虑使用名称中不带空格的目录
关于java - 将 Java 8 与 Access 连接时出错 : No suitable driver found,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27576985/