将数据库连接到HSQLDB服务器

时间:2014-01-03 08:34:20

标签: hsqldb

我以独立的方式使用版本hsqldb-1.8。我想用一些数据库启动服务器。我想使用HSQLDB文档中的命令行:

java -cp ../lib/hsqldb.jar org.hsqldb.Server -database.0 file:mydb -dbname.0 xdb

我的问题是我有我需要的每个数据库的脚本,这个命令行创建一个新的数据库,而不使用我的脚本。问题可能来自其中一点:

  • 我的脚本的位置
  • 我的脚本扩展名是一个SQL文件
  • 命令行中出现错误或缺失
  • 命令行不能这样做=>如果是的话,有什么办法吗?

我想留在控制台里做所有这些。这样,我只需要启动一个脚本来完成所有工作。任何帮助都感激不尽 !感谢

3 个答案:

答案 0 :(得分:2)

我找到了我的问题的解决方案:)

我在目录server.properties中创建了一个../hsqldb-1.8.10/hsqldb/文件,其中包含:

server.database.0=file:mydb;user=test;password=test
server.dbname.0=mydb

我还创建了包含该代码的mydb.script文件:

CREATE SCHEMA PUBLIC AUTHORIZATION DBA
CREATE MEMORY TABLE MYDB(ID BIGINT NOT NULL,VERSION INTEGER NOT NULL,NOM VARCHAR(255))
CREATE USER TEST PASSWORD "TEST"
GRANT DBA TO TEST
SET WRITE_DELAY 10
SET SCHEMA PUBLIC
INSERT INTO MYDB VALUES(1,0,'test')

然后,我使用以下命令启动HSQLDB服务器:

java -cp ../lib/hsqldb.jar org.hsqldb.Server

我们可以看到数据库已成功创建:

[Server@10f0f6ac]: Database [index=0, id=0, db=file:mydb, alias=mydb] opened successfully in 313 ms.

要检查数据库是否确实包含我的数据,我使用HSQLDB DatabaseManager工具执行此命令:

java -cp ../lib/hsqldb.jar org.hsqldb.util.DatabaseManager

连接:

  • 网址:jdbc:hsqldb:file:mydb
  • 用户:test
  • 密码:测试

之后,我们连接到数据库。执行命令SELECT * FROM MYDB;,我们可以看到数据库的行。

希望这会有所帮助! :)

答案 1 :(得分:1)

与HSQLDB(IMDB)连接的简便方法

连接字符串

<property name="driverClassName" value="org.hsqldb.jdbcDriver" />
<property name="url" value="jdbc:hsqldb:file:/home/vikask/elmo/db/elmo;" />
<property name="username" value="sa" /> 
<property name="password" value="" />

在这个简单的Java项目中,使用Java Annotations演示Hibernate,HSQL和Maven。 HSQL数据库用于简化项目,因为我们可以使用内存数据库,我们只需要一个JAR文件包含在我们的项目中。

要连接到嵌入式HSQLDB数据库,请从连接类型列表中选择JDBC(HSQLDB Embedded)连接类型。输入任何登录信息(如果适用),然后指定是使用现有嵌入式数据库,还是让HSQLDB创建新的嵌入式数据库。

如果嵌入式数据库已存在,请浏览到数据库文件所在的目录(例如database_name.log,database_name.script和database_name.properties),然后选择database_name.script文件。 如果数据库不存在,请键入或浏览以为HSQLDB数据库创建新位置。然后HSQLDB将创建必要的文件,前缀为数据库名称。例如,如果键入/ home / vikask / sample作为数据库的位置,HSQLDB将创建一个名为sample.properites的文件,也许是sample.log等等。在这种情况下,数据库的实际名称只是样本。

答案 2 :(得分:0)

HSQLDB创建一个扩展名为.script的文件供内部使用。这不是你创造的东西。

首先运行服务器并连接到其中一个数据库。此时数据库将为空。然后使用HSQLDB zip包中的utilitly SQLTool在数据库上执行您的脚本。脚本创建的所有表和数据都保存在HSQLDB数据库中。