HsqldbException:用户缺少权限或找不到对象:TABLE

HsqldbException: user lacks privilege or object not found: TABLE

我正在尝试使用 java 中的 hsqldb 连接到 MS Access 数据库。我添加了我需要的所有库,但最后我仍然得到一个异常: 线程 "main" java.sql.SQLSyntaxErrorException 中的异常:用户缺少权限或找不到对象:消息 原因:org.hsqldb.HsqlException:用户缺乏权限或找不到对象:MESSAGES

代码如下:

    Connection conn = null;
try {
    Class.forName("org.hsqldb.jdbcDriver");
    conn = DriverManager.getConnection("jdbc:hsqldb:D:/sms4.accdb", "sa", "");
} catch (SQLException e) {
    e.printStackTrace();
} catch (ClassNotFoundException e) {
    e.printStackTrace();
}

Statement s = conn.createStatement();
ResultSet rs = s.executeQuery("select * from Messages"); //here is where I get the error

HSQLDB 不能(据我所知)直接打开 Access 数据库。您将需要使用 UCanAccess JDBC 驱动程序。 (它在后台使用 HSQLDB,但您的 Java 应用程序从不直接操作 HSQLDB "backing database"。)

有关详细信息,请参阅

Manipulating an Access database from Java without ODBC