HSQLDB笔记

来源:互联网 发布:申万宏源证券软件中心 编辑:程序博客网 时间:2024/06/05 09:29

1 什么是HSQLDB
HSQLDB是一款纯Java的数据库软件,支持ANSI-92 SQL、SQL 99中的多数操作。HSQLDB很小巧,包括DB Engine、Jdbc driver、DB管理工具在一起,只有一个约600K的JAR包。HSQLDB性能很好,据其官网宣称,jdbc+hsql 快过 jdbc+mysql 20倍。HSQLDB非常适合嵌入式数据库、产品演示用数据库、调试和单元测试用数据库。
HSQLDB官网:http://hsqldb.org/

2 HSQLDB常用命令

2.1 启动Server Mode的数据库:
java -cp %HSQL_HOME%/lib/hsqldb.jar org.hsqldb.Server -database.0 c:/mydb/mydb -dbname.0 xdb

这将在目录“c:/mydb/mydb”下生成一个数据库,数据库的网络访问名为“xdb”


2.2 查看数据库

java -cp %HSQL_HOME%/lib/hsqldb.jar org.hsqldb.util.DatabaseManager --driver org.hsqldb.jdbcDriver --url jdbc:hsqldb:hsql://localhost/xdb --user sa

这将启动HSQL自带的简单GUI管理器,连接本机数据库“xdb”。GUI管理器中能执行常见的SQL语句。


2.3 JDBC连接数据库

try {
  Class.forName("org.hsqldb.jdbcDriver" );
} catch (Exception e) {
  System.out.println("ERROR: failed to load HSQLDB JDBC driver.");
  e.printStackTrace();
  return;
}
Connection c = DriverManager.getConnection("jdbc:hsqldb:hsql://localhost/xdb", "sa", "");


2.4 执行sql脚本

java -cp lib/hsqldb.jar org.hsqldb.util.SqlTool --help
java -cp lib/hsqldb.jar org.hsqldb.util.SqlTool --rcfile ./sqltool.rc mydbid create_products.sql

--help选项用于查看参数。上述命令将执行sql脚本文件create_products.sql,文件./sqltool.rc定义了数据库连接选项,本例内容如下:

urlid mydbid
url jdbc:hsqldb:hsql://localhost/xdb

username sa
password

create_products.sql是SQL脚本文件,本例内容如下:

CREATE TABLE products (
id INTEGER NOT NULL PRIMARY KEY,
description varchar(255),
price decimal(15,2)
);
CREATE INDEX products_description ON products(description);