"找不到合适的司机"用于UCanAccess连接

时间:2018-02-24 20:28:46

标签: java database ms-access jdbc ucanaccess

我不知道我的示例代码有什么问题,我已经按照多个YouTube视频和其他在线来源的所有说明进行操作。我无法修复它。有人可以解释问题是什么以及如何解决?已经添加了所有必需的lib。

我确保所有库都已正确安装,但它仍然找不到驱动程序。

这是我的代码

public boolean checkLogin(String username, String password) {       
    try {
        Connection myconObj;

        Class.forName("net.ucanaccess.jdbc.UcanaccessDriver");
        URL databaseLocation = this.getClass().getResource("/com/vanstryp/database/MainUserData.accdb");

        myconObj = DriverManager.getConnection("jdbc:ucanaccess:/" + databaseLocation);
        ResultSet result;
        Statement stmt = conn.createStatement();
        String query = "select * from MainUserData";
        result = stmt.executeQuery(query);

        while (result.next()) {
            String dbUsername = result.getString("Username");
            String dbPassword = result.getString("Password");
            System.out.println();
            if (username.equalsIgnoreCase(dbUsername) && password.equals(dbPassword)) {

                PrintWriter activeUser = new PrintWriter(new FileWriter("activeUser.db"));
                activeUser.println(dbUsername);
                activeUser.close();
                return true;

            }
        }

    } catch (Exception e) {
        e.printStackTrace();
    }

    return false;

}

这是错误消息:

java.sql.SQLException: No suitable driver found for jdbc:ucanaccess:/file:/C:/Users/Jaco%20van%20Stryp/Dropbox/Fitness%20Perfect/build/classes/com/vanstryp/database/MainUserData.accdb

1 个答案:

答案 0 :(得分:0)

  

java.sql.SQLException:没有为jdbc找到合适的驱动程序:ucanaccess:/ file:/ C:/ Users / Jaco%20van%20Stryp / Dropbox / Fitness%20Perfect / build / classes / com / vanstryp / database / MainUserData .ACCDB

UCanAccess连接URL必须以jdbc:ucanaccess://开头,后跟数据库文件的路径。您的连接网址以jdbc:ucanaccess:/(仅一个斜杠)开头,并且还包含虚假file:指示符。看起来应该更像这样:

jdbc:ucanaccess://C:/path/to/database/file.accdb