小编典典

访问保存在类路径中的Microsoft Access数据库

java

我正在尝试访问存储在类路径中的数据库。我已经安装了ucanaccess 3.0.0和所有必需的.jars。

这是我到目前为止的代码:

public void login()
{

    Connection conn;
    try {


        conn = DriverManager.getConnection("jdbc:ucanaccess:/database/theDB.accdb");

    Statement s = conn.createStatement();
    ResultSet rs = s.executeQuery("SELECT Student_Number FROM User");


    while (rs.next()) {

        System.out.println(rs.getString(1));
    }



    } catch (SQLException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
}

这是一个简单的登录屏幕,我只是在单击按钮时测试到数据库的连接。我知道引用绝对文件路径不好,所以我认为将文件放在类路径中会更好。

我收到错误

找不到适用于
jdbc:ucanaccess:file:/ C:/Users/Gandalf/workspace/FubbleApp/bin/database/theDB.accdb的驱动程序

因此,我认为它必须是“ /database/theDB.accdb”,但我不确定如何解决此问题。

任何帮助表示赞赏。提前致谢


阅读 217

收藏
2020-11-30

共1个答案

小编典典

您在连接URL中提供的数据库文件(.accdb或.mdb)的路径必须是

绝对路径,或

运行您的应用程序时从当前工作目录开始的相对路径,在您的情况下,该路径似乎是“ C:/ Users / Gandalf / workspace/ FubbleApp / bin /”。

如果希望您的应用程序自动在CLASSPATH中搜索数据库文件,则需要提供您自己的代码来执行此操作,或者
包括一些第三方代码来为您进行搜索。

2020-11-30