connect/query如何在HSQL数据库外应用?

How to connect/query HSQL database outside application?

我正在使用嵌入式 HSQL 作为我的 Java 应用程序的数据库。并通过 Hibernate 连接到数据库,下面是 hibernate.cfg.xml 文件条目,

<property name="hibernate.connection.url">jdbc:hsqldb:file:testdb;shutdown=true</property>
<property name="hibernate.connection.username">sa</property>
<property name="hibernate.connection.password"></property>
<property name="hibernate.dialect">org.hibernate.dialect.HSQLDialect</property>

我可以通过我的 java 应用程序连接到数据库,hibernate 会自动创建表,还会将数据插入表中,正如我在通过应用程序查询表时在我的应用程序中看到的那样。

但是当我尝试通过 SQL Workbench 访问我的数据库时,它没有向我显示任何表格。它确实与以下属性相关联,

Driver - org.hsqldb.jdbcDriver  
URL - jdbc:hsqldb:file:testdb
UserName - sa
Password - 

连接后显示如下模式,

*, INFORMATION_SCHEMA, PUBLIC, SYSTEM_LOBS

但是当我对其中一个表触发 select 查询时,它显示错误为,

user lacks privilege or object not found: table_name [SQL State=42501, DB Errorcode=-5501]

那么我需要做任何特定的配置来连接我的嵌入式数据库吗?

我在 URL 中提供了错误的信息,如果您在 windows、

上,要连接到基于文件的 HSQL 数据库,您必须提供 URL,如下所示

jdbc:hsqldb:file:C:\Softwares\eclipse-jee-mars-1-win32\eclipse\testdb

需要提及数据库文件的完整路径。它现在对我来说工作正常。 同样对于进程内文件模式,只能发生一个连接。下面link帮我解决了问题,
HSQL jdbcConnection class Documentation