http://www.hsqldb.org/
然后建立一個文件夾,比如D:"hsqldb,在hsqldb目錄下建立data,lib兩個子文件夾,
將解壓后的lib目錄下的hsqldb.jar文件copy到 D:"hsqldb"lib 目錄下,
將解壓后的demo目錄下的runServer.bat和runManagerSwing.bat文件copy到 D:"hsqldb 目錄下,
2.
修改runServer.bat文件的內容如下:
@java -classpath ../lib/hsqldb.jar org.hsqldb.Server %1 %2 %3 %4 %5 %6 %7 %8 %9
修改runManagerSwing.bat文件的內容如下:
@java -classpath ../lib/hsqldb.jar org.hsqldb.util.DatabaseManagerSwing %1 %2 %3 %4 %5 %6 %7 %8 %9
3.先運行runServer.bat,啟動HSQLDB server,
接著運行runManagerSwing.bat, 先彈出cmd窗口,接著彈出Connect窗口,
將Connect窗口的Type選項設置為 HSQL Database Engine Server,按ok連接到db,進入HSQL Database Manager窗口。
這時查看data目錄下,發現生成4個文件:test.lck, test.log, test.properties, test.script
4.在HSQL Database Manager中execute下面sql 后,
create table test(id bigint , name varchar , remark varchar);
insert into test(id,name,remark)values(1,'admin','this is remark!');
在 test.log 中出現內容:
/*C2*/SET SCHEMA PUBLIC
CONNECT USER SA
create table test(id bigint , name varchar , remark varchar)
INSERT INTO TEST VALUES(1,'admin','this is remark!')
HSQL db中的數據就是儲存在這個test.log文件中的。
5.在hsqldb目錄下建立一java文件,內容如下:
import java.sql.DriverManager;
import java.sql.Statement;
import org.hsqldb.jdbcDriver;
public class HsqlDemo{
public static void main(String[] args){
try {
Class.forName("org.hsqldb.jdbcDriver" );
Connection c = DriverManager.getConnection("jdbc:hsqldb:hsql://localhost", "sa", "");
if(c != null){
System.out.println("Connected db success!");
String sql = "CREATE TABLE T_USER(ID BIGINT,NAME VARCHAR,BIRTHDAY DATE);";
Statement st = c.createStatement();
st.execute(sql);
sql = "INSERT INTO T_USER(ID,NAME,BIRTHDAY)VALUES('1','ADMIN',SYSDATE);";
st.executeUpdate(sql);
if(st != null){
st.close();
}
c.close();
}
} catch (Exception e) {
System.out.println("ERROR: failed to load HSQLDB JDBC driver.");
e.printStackTrace();
return;
}
}
}
再建立一test.bat文件,內容如下(注意配置path為你jdk的安裝路徑):
set path=D:Program FilesJavajdk1.5.0_07bin
javac -classpath lib/hsqldb.jar HsqlDemo.java
java -cp lib/hsqldb.jar;./ HsqlDemo
運行test.bat文件后,在 HSQL Database Manager窗口選擇View,Refresh tree ,可以發現已經多了T_USER這個表,并且表里面已有一條記錄。
6. 退出HSQL Database Manager, 到Hsql Db 的cmd窗口,按Ctrl+C結束DB。
在hsqldb目錄下建立server.properties,內容如下:
server.port=9394
server.database.0=file:data/mydb9394
server.dbname.0=mydb
server.silent=true
建立runServer2.bat,內容如下:
@java -classpath lib/hsqldb.jar org.hsqldb.Server %1 %2 %3 %4 %5 %6 %7 %8 %9
這時運行runServer2.bat,則會在data目錄下創建mydb9394.properties,mydb9394.log,mydb9394.lck三個文件,
再運行runManagerSwing.bat,彈出Connect窗口,這時需要將
Type選項設置為 HSQL Database Engine Server
URL 處設置為 jdbc:hsqldb:hsql://localhost:9394/mydb
按ok即可連接db進入 HSQL Database Manager界面。
7. Table的數據類型
Name |
Range |
Java Type |
INTEGER | INT |
as Java type |
int | java.lang.Integer |
DOUBLE [PRECISION] | FLOAT |
as Java type |
double | java.lang.Double |
VARCHAR |
as Integer.MAXVALUE |
java.lang.String |
VARCHAR_IGNORECASE |
as Integer.MAXVALUE |
java.lang.String |
CHAR | CHARACTER |
as Integer.MAXVALUE |
java.lang.String |
LONGVARCHAR |
as Integer.MAXVALUE |
java.lang.String |
DATE |
as Java type |
java.sql.Date |
TIME |
as Java type |
java.sql.Time |
TIMESTAMP | DATETIME |
as Java type |
java.sql.Timestamp |
DECIMAL |
No limit |
java.math.BigDecimal |
NUMERIC |
No limit |
java.math.BigDecimal |
BOOLEAN | BIT |
as Java type |
boolean | java.lang.Boolean |
TINYINT |
as Java type |
byte | java.lang.Byte |
SMALLINT |
as Java type |
short | java.lang.Short |
BIGINT |
as Java type |
long | java.lang.Long |
REAL |
as Java type |
double | java.lang.Double[1] |
BINARY |
as Integer.MAXVALUE |
byte[] |
VARBINARY |
as Integer.MAXVALUE |
byte[] |
LONGVARBINARY |
as Integer.MAXVALUE |
byte[] |
OTHER | OBJECT |
as Integer.MAXVALUE |
java.lang.Object |