hsqldb.jar包
這個包位於/lib目錄下包括一些組件和程序,可以用不同的命令來啓動這些程序。hsqldb.jar中的組件:
HSQLDB RDBMS HSQLDB JDBC Driver Database Manager (Swing and AWT versions) Transfer Tool (AWT version) Query Tool (AWT) Sql Tool (command line) |
其中,HSQLDB RDBMS和JDBC Driver提供了核心的功能,其它的都是一些通用的數據庫工具,只要你有其它的驅動,這些工具可以同其他數據庫一起工作。
運行工具
所有的工具都可以以jar方式運行,下面是簡單的例子:
java -cp ../lib/hsqldb.jar org.hsqldb.util.DatabaseManager java -cp hsqldb.jar org.hsqldb.util.DatabaseManager |
Hsqldb工具的主類:
org.hsqldb.util.DatabaseManager org.hsqldb.util.DatabaseManagerSwing org.hsqldb.util.Transfer org.hsqldb.util.QueryTool org.hsqldb.util.SqlTool |
其中,如DatabaseManager和SqlTool都可以有命令行參數,你可以用-?來察看它們有什麼參數。DatabaseManager和Transfer都有圖形界面可以更好地交互。
運行Hsqldb
HSQLDB可以以不同的方式運行,一般將它們分爲Server模式和In-Process模式。每一個HSQLDB數據庫包含2到5個文件,它們有同樣的名字和不同的後綴名,位於同一個目錄中。舉例來說,一個叫做test的數據庫會包含以下的文件:
test.properties test.script test.log test.data test.backup |
properties文件包含數據庫的一般配置。script文件包含表的定義,其他數據庫對象,以及non-cached表的數據。log文件則包含數據庫最近的更新。data文件包含cached表的數據,backup文件則是上次持久化後的data文件的打包文件。這些文件都是有用的不能被刪除。如果數據庫沒有cached表,則.data和.backup文件是不會存在的。
當test數據庫被操作的時候,test.log文件被用來紀錄數據的修改。這個文件在數據庫正常關閉時會被刪除掉,否則(非正常關閉)這個文件將會用來在下次啓動時重新更新數據。一個test.lck文件用來紀錄數據庫是打開的。這個文件也會在正常關閉時刪除。在某些情況下,test.data.old會被創建接着被刪除。
注意:當引擎關閉數據庫的時候,它將會創建以.new爲後綴的臨時文件,再將它們重命名爲上述這些文件。