HSQLDB介紹

目前穩定版本 1.7.1
下載處 http://hsqldb.sourceforge.net/

 

中文幫助手冊:頁http://code.google.com/p/hsqldb-zh-doc/

(1)簡介
hsqldb 是由 Tomas Muller 的 Hypersonic SQL 後續開發出來的專案, hsql 已經停止研發了, hypersonic db 是純 java 所開發的資料庫, 可以透過 jdbc driver 來存取, 支援 ANSI-92 標準的 SQL 語法, 而且他佔的空間很小, 大約只有 160K, 擁有快速的資料庫引擎, 也提供了一些工具, 例如 web-server, 記憶體查詢, 及一些管理工具.
他是屬於 BSD 的 license, 可以自由下載, 並且可以安裝使用在商業產品之上.

(2)安裝
當你下載了hsqldb_1_7_1.zip, 將他解壓縮到一個目錄, 我將稱之爲 %HSQLDB_HOME% , 你可以看到 hsqldb 下面有這些目錄
- bin
- build
- data
- demo
- doc
- lib  - hsqldb.jar
     - servlet.jar
- src

最重要的就是 hsqldb.jar, 將他放到工作目錄下的 lib 中.

(3)使用
在命令列模式到工作目錄
cmd>java -cp lib/hsqldb.jar org.hsqldb.util.DatabaseManager
選擇 HSQL Database Engine Standalone ( 檔案型資料庫 )
Driver : org.hsqldb.jdbcDriver
URL : jdbc:hsqldb:test
sa 登入, 如果該資料庫 ( test ) 不存在, 他就會建立
test.properties 及 test.script

可以直接在 fundad.script 加入 SQL 標準語法,
當程式起來的時候, hsqldb 會自動匯入 script 中的資料到記憶體之中
語法與 T-SQL 相當, 可參考 http://hsqldb.sourceforge.net/doc/hsqlSyntax.html

(4)結論
如果你是小型簡單的資料庫運用, 可以採用這個 opensource
尤其在 embedded application 的應用,
但是大型資料例如上百萬筆, 除非你的 RAM 很大很大,
否則會導致速度過慢,
我嘗試在我的電腦 P4-1.8G 512MB 安裝 1百萬筆資料 ( 每筆 4 欄位 )
就會 out of memory
如果強制 java -mx1024m -ms1024m 也要花上超過一小時.... @@"
不過, 他有個很好用的地方, 就是 bundle 在 Applet 之中
有興趣的人可以參考他的範例.

附帶一提

hibernate 中可以採用 HSQLDialect 去連結,HSQLDB還有支持分頁的sql語句

在hibernate中,使用hsql中,如果設置主鍵類型用Idenetity,那麼java的field用Integer類型,不能用Long。

 

 

發佈了9 篇原創文章 · 獲贊 3 · 訪問量 7萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章