如何制作 HSQLDB 2 客户端程序?
Posted
技术标签:
【中文标题】如何制作 HSQLDB 2 客户端程序?【英文标题】:How do I make a HSQLDB 2 client program? 【发布时间】:2014-06-25 12:02:47 【问题描述】:我有一个小的 HSQLDB 程序来测试一些 SQL。我收到此错误:
A pre-version 2.0 client attempted to connect. We rejected them.
然而,我唯一拥有的 JDBC 驱动程序是最近下载的 HSQLDB v2.3:
hsqldb/lib/hsqldb.jar
我正在使用这个字符串来加载 JDBC 驱动程序:
Class.forName("org.hsqldb.jdbcDriver");
而连接字符串是:
connectionStr = "jdbc:hsqldb:hsql://localhost/tmp_db";
user=sa, password=
默认值。我的 HSQLDB 服务器似乎已经使用如下数据库正常启动:
server.dbname.0=**tmp_db**
server.database.0=file:r:/.data/hsqldb/**tmp_db/tmp**
[Server@372f7a8d]: Database [index=2, id=2, db=file:r:/.data/hsqldb/**tmp_db/tmp**, alias=tmp_db] opened sucessfully in 26 ms.
我正在使用 Netbeans,当我通过“服务”选项卡连接时,数据库似乎可以正常打开。 Netbeans 不会使用相同的驱动程序吗?我可以检查一下吗?
最大的问题是我们如何指定版本 2 的客户端连接、驱动程序或参数?我必须为正确的驱动程序获取不同的 JAR 吗?
最后一件事。如果我使用基于文件的连接,测试程序可以正常工作,例如:
jdbc:hsqldb:db_file
同样令人沮丧的是,服务器连接字符串今天早些时候似乎还在工作。至少我可以在进行更改时删除/创建表。
【问题讨论】:
【参考方案1】:您必须在客户端和服务器上使用相同的 jar(或至少是最新的兼容版本)。
错误显示您在服务器上使用的是 2.x 版本的 jar,但在客户端上使用的是 1.8 版本的 jar。检查 NetBeans 以查看您已加载的某些扩展是否具有旧驱动程序。您可以通过将其添加为库来在 NetBeans 项目中使用正确的 jar。
如果错误不是来自 NetBeans,请检查应用程序的类路径并确保其中包含最新的 jar。
【讨论】:
以上是关于如何制作 HSQLDB 2 客户端程序?的主要内容,如果未能解决你的问题,请参考以下文章