HSQLDBは Wagby に標準で添付されているオープンソースのリレーショナルデータベースです。Java 言語で実装されており、軽量で高速であるという特徴があります。ここでは、HSQLDB 利用時の注意点を示します。

HSQLDBは開発時に用いる簡易データベースとして同梱しています。本番運用のアプリケーションで利用することは非推奨です。

  • すべてのデータはメモリ内で管理されます。この仕組みのため、登録データ数の上限は、本番機に搭載されているメモリ容量によって変わります。
  • Web アプリケーションの終了時に、メモリ内のデータがファイルとして出力されます。このため、不意の停電などで Web アプリケーションが停止した場合、メモリ内のデータは消失します。Wagby の標準機能であるデータエクスポートを定期的に行うことで、データのバックアップを取得するようにしてください。
  • Web アプリケーションの起動時に、すべてのデータをメモリ内に読み込みます。このため、格納データ量が多い場合、起動時間が長くかかります。
  • データベースファイルが何らかの理由で破損した場合は、いったん初期化したあと、最後にエクスポートされたデータを復元することで復旧させてください。

すべての型は Java の内部機構(int, float などの基本型および java.lang.String などの標準クラス)として扱われます。

Tomcat の起動・停止のタイミングで自動的にデータベースも起動および停止します。

本体(プログラム)

hsqldb の本体(プログラム)は $(DEVHOME)\env\lib-common\hsqldb.jar になります。ビルド後は wagbyapp\lib\hsqldb.jar に配置されます。このプログラムが JDBC ドライバも兼ねます。

データベースファイル

データベースの物理ファイルは wagbyapp\webapps\$(APPNAME)\WEB-INF\data\$(APPNAME)db.script です。標準は wagbydb.script です。

ファイルはテキスト形式です。テキストエディタを用いて内容を確認することができます。

物理ファイルをバックアップする場合は、同フォルダ上の .script および .properties ファイルの両方を保存してください。