環境作成 [#y8f4f442]
明示的に書いてない限り、Windowsでも
Linuxでも同じ手順です。
使用バージョン [#xafe2fac]
2.2.5 (2011/9 時点の最新)
前提 [#c31688be]
JAVAが使えること。
javaのパスが通っていれば問題なし。
手順 [#y2db5227]
- HSQLDBのサイトからモジュールをダウンロードする
- 好きなところに解凍する
DB本体は hsqldb.jar(とservlet.jar?)。
これは好きなところに置いてよい。
あとはデータを保存する dataディレクトリを任意の場所に用意する。
DBの種類
モード
In-Processモード(スタンドアロン)と、Serverモードがある。
詳しくはネット検索やユーザガイドで。
TCP/IP経由でアクセスするなら、Serverモード。
データの種類
mem, file, res の3種類がある。
- mem:メモリのみ(ファイルは生成しない)
- file: ファイルにデータを保存する
- res: javaのresource に保存する
DBの作成
DB起動時に存在しない場合、自動的に作成される。
コマンドラインから作成(起動)する場合
【フォルダ構成例】
├― lib
| └― hsqldb.jar
└― data
batファイルに起動コマンドを登録しておくと便利。
(linuxの場合はシェルファイルを作っておくと便利)
java -cp ../lib/hsqldb.jar org.hsqldb.Server --database.0 file:testdb --dbname.0 DBエリアス名
上記例は、dataディレクトリ直下で実行するケース。
コマンドを実行すると、data直下にわらわらとtestdb用のファイルを作成する。
「file:aaa/testdb」などとしても実行可能。
その場合、data/aaa配下にtestdb用のファイルが作成される。
- DBエリアス名:ネットワーク経由でアクセスする際の名前
⇒ "jdbc:hsqldb:hsql://localhost/DBエリアス名"
DatabaseManagerから作成する場合
batファイルに起動コマンドを登録しておくと便利。
(linuxの場合はたぶんGUIを表示するための環境が必要)
java -cp ../../lib/hsqldb.jar org.hsqldb.util.DatabaseManager
- DBの設定を入力するプロンプトが表示されるので、入力する。
(あとで細かく書くかも)
Javaなどのプログラムから作成する場合
In-Process版の場合
getConnection()でオプション指定で生成する。
Class.forName("org.hsqldb.jdbcDriver");
Connection connection =
DriverManager.getConnection(
"jdbc:hsqldb:file:D:/dirname/testdb"
+ ";create=true" //存在しなければDBを生成する
// ifexists=false と設定しても、なければ作ってくれる
+ ";shutdown=true",//アクセス後にDBを閉じる
"username", //接続ユーザ名(デフォルト"SA")
"password"); //接続パスワード(デフォルト"")
Server版の場合
※※※作れるのかな? まだ未確認。
最終更新:2011年09月21日 09:40