HSQLDB作成

環境作成 [#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から作成する場合

  • 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