HSQLDB是一個開源的純Java嵌入式關系資料庫管理系統,小巧友善,具有标準的SQL文法和Java接口,可以作為記憶體資料庫、獨立資料庫和C/S資料庫,支援索引、事務處理、Java存儲過程、完整性引用和限制等功能。
本章介紹Eclipse環境下的HSQLDB資料庫應用開發,包括HSQLDB資料庫的安裝和配置、SqlExplorer資料庫插件的安裝和配置、常見資料庫操作的封裝,最後通過學生成績管理系統介紹了基于HSQLDB進行資料庫應用開發的具體步驟。
1 HSQLDB資料庫的使用
1.1 下載下傳并安裝HSQLDB資料庫
在使用HSQLDB資料庫之前,本小節首先介紹HSQLDB資料庫的下載下傳和安裝。與大多數Java應用程式一樣,隻需解壓縮安裝包即可完成HSQLDB資料庫的安裝。
跟我做
(1)登入HSQLDB的官方網站http://www.hsqldb.org,下載下傳HSQLDB資料庫的安裝包hsqldb_1_8_0_x.zip。
(2)将下載下傳的安裝包解壓縮到設定的安裝目錄,如d:\hsqldb。
(3)将D:\hsqldb\lib目錄下的hsqldb.jar檔案加入到CLASSPATH環境變量中,HSQLDB安裝完畢。安裝後其目錄結構如圖1所示。

圖1 HSQLDB資料庫的目錄結構
注意:設定CLASSPATH環境變量,所有的HSQLDB元件如資料庫引擎、伺服器程序、JDBC驅動程式、文檔以及一些實用工具都放在hsqldb.jar檔案中。
1.2 使用Memory模式運作HSQLDB
下面介紹HSQLDB的幾種運作模式。
● 獨立伺服器模式:類似于其他關系資料庫的标準客戶機/伺服器資料庫配置,允許出現使用TCP 套接字的并發連接配接。
● 獨立Web伺服器模式:作為Web伺服器通過HTTP接受SQL查詢,也能作為任何标準Web容器中的Servlet來運作。由于HTTP是無狀态的,是以本模式中不存在事務。
● 單機模式:是許多嵌入式應用程式的首選模式,該模式下應用程式使用JDBC建立一個資料庫連接配接,HSQLDB引擎也運作在該應用程式中。
● Memory模式:所有資料庫表和索引都放在記憶體中,資料不進行外存儲,沒有持久性。
本小節将以Memory模式為例,介紹如何基于HSQLDB資料庫進行應用的開發。
跟我做
(1)啟動Eclipse,建立名字為hsqldbdemo的Java工程,并建立Java類MemoryDB.java。
注意:切記将hsqldb.jar加到工程的建構路徑上。
(2)編輯MemoryDB.java檔案。輸入如下代碼:
try {
//加載HSQLDB資料庫JDBC驅動
Class.forName("org.hsqldb.jdbcDriver");
//在記憶體中建立臨時資料庫score,使用者名為sa,密碼為空
Connection connect = DriverManager.getConnection("jdbc:hsqldb:mem:score", "sa", "");
System.out.println(“在此行上設定一個斷點”);
} catch (SQLException e) {
e.printStackTrace();
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
在記憶體中建立臨時資料庫“score”,使用者名為“sa”,密碼為空。上述程式片斷是典型的通過JDBC連接配接資料庫的方法,其中資料庫URL“jdbc:hsqldb:mem:score”中的“mem”部分定義了HSQLDB資料庫工作在Memory模式下。一旦跟資料庫的連接配接建立後,資料庫引擎就啟動起來了,接下來即可建立Table表。