はじめに
ASTERIA WARPをインストールすると、インストールディレクトリ配下のフォルダーにhsqldbutil.exeというファイルができています。InternalDataStorage(HSQLDB)のデータ操作や内容を確認するツールのようですがマニュアルに使い方など記載が特になかったので実際に触ってみました。
環境
- OS:Windows Server 2012 R2
- ASTERIA WARP:1712
- Java:1.8.0_151
事前準備
InternalDataStorageに接続するのでFSMCなどからサービスを立ち上げておきます。
動作確認
起動
インストールディレクトリ[INSTALL_DIR]配下のserver/bin/hsqldbutil.exe
をダブルクリックして起動します。
HSQLDBの管理ツール(Database Manager)が起動して接続画面が表示されました。
接続
接続先を設定して「OK」ボタンをクリックします。
接続先の情報はTypeは「HSQL DataBase Engine Server」としてURLやUserはASTERIA WARPインストール時に作成されるシステムコネクション「asteria_internal」というコネクション情報を参考にしています。
接続に成功するとテーブルの一覧とSQL文を入力する画面が表示されます。
※インストール直後はテーブルなどはないのでテーブル一覧には何も表示されません。
画面操作(テーブル一覧)
テーブル一覧画面でテーブルをクリックするとフィールド定義などスキーマ情報が確認できました。
画面操作(SQLの実行)
SQL文を入力し、「Execute」ボタンをクリックすると実行結果が表示されました。
HSQLDB以外のデータベースに接続
どこまでサポートされているのかは不明でしたが、Typeにはプルダウンリストがあり、HSQLDBだけではなく他データベースについてもツールとして接続はできるようです。
試しにPostgreSQLを選んでConnectしてみました。
JDBCドライバーが読み込めないらしいので、laxファイルのクラスパス指定部分でASTERIAで使用しているjdbcドライバーの配置パス[DATA_DIR]/system/lib/drivers
を追加してトライしてみます。
C:\ASTERIAHOME5\SYSTEM\LIB\DRIVERS
postgresql-42.1.4.jar
sqljdbc42.jar
# LAX.CLASS.PATH
# --------------
# the Java classpath necessary to run this application
# Can be separated by colons (Mac OS/Unix) or semicolons (Windows)
lax.class.path=../lib/ext/*;lax.jar;C:/asteriahome5/system/lib/drivers/*
接続できました。
終わりに
InternalDataStorageはそもそも接続確認やサンプルフローの動作確認を行う用途のみで使用するという制限事項があり、PostgreSQLやMySQLなど他のデータベースについては付属のクライアントツールが提供されていると思います。フローを使ってRDBGetやSQLCall、SQLBuilder画面でも確認できるので、ASTERIA WARPサーバー上でこのツールを使ってわざわざ確認する必要性は正直あまり感じません。
しかもlaxファイルを直接編集しないといけないので裏技みたいな感じで自己責任の範囲となってしまうと思います。
ただHSQLDBの管理ツールを操作してみるという点では勉強になり、デザイナー側に配置されていれば、ちょっと何か調べ物したいとかそんな時には使えるのかなとは思いました。
以上です。