サポート > リポジトリ > モデル > サブデータベースを指定する

1つのWagbyアプリケーションから、複数のデータベースを利用することができます。 R7.8

Wagbyではモデル単位でどのデータベースを利用するかを指定することができます。一つ目を「メインデータベース」と呼び、二つ目以降を「サブデータベース」を呼びます。

サブデータベースの用途は、既存システムのマスタデータを直接、Wagbyアプリケーションが参照することです。

両者の違いは次のとおりです。

メインデータベース(標準) サブデータベース
設定できる数 1つだけです。 オプションという位置付けです。3つまでのサブデータベースを指定できます。
機能 読み込みと書き込みができます。書き込みはトランザクション制御にも対応しています。 読み込みのみとなります。

サブデータベース利用時の制約

サブデータベースを使うモデルは読み込みのみとなるため、次の制約があります。

  • テーブルの作成は行えない。(既存テーブルの再利用を想定している)
  • Wagbyのキャッシュは無効になる。
  • 全文検索機能は利用できない。
  • ワークフローは利用できない。
  • トランザクションは利用できない。親子モデル同時更新も含む。
  • 親子関係でそれぞれが別データベースの場合、再計算による更新は行えない。(表示だけは可能)。
  • メインモデル、サブモデルは利用できない。(メインモデルとサブモデルで別々のデータベースを指定することはない。)
  • 登録、更新、削除などの更新系ボタンは無効になる。
  • システムモデル(juserなど)をサブデータベースに指定することはできない。
  • 内蔵データベース(HSQLDB)は利用できない。
  • 参照先モデルがサブデータベースに存在する場合、"参照連動項目を参照先モデルに保存する"機能は利用できない。これは更新を伴うため。
  • 参照先モデルがサブデータベースに存在する場合、参照連動項目(DB保存なし)を検索項目として指定することはできない。データベースをまたがる検索になるため。
  • サブデータベースのテーブルにスキーマを含めることはできません。
サブデータベースを設定すると登録・更新系の画面とボタンが非表示化されます。そのあとサブデータベースの設定を解除(メインデータベースに戻す)しても、非表示化されたボタン設定はそのままです。サブデータベースの設定を試す場合は、事前にリポジトリのバックアップを行うことを推奨します。

データベースの設定

「環境>データベース」から、メインデータベースとサブデータベースの指定を行います。

図1 メインデータベースの設定(標準)

サブデータベースは最大3つまで指定できます。

図2 サブデータベースの設定。

モデルの設定

モデル毎に、どのデータベースを利用するかを指定できます。設定したサブデータベースのみ選択肢に用意されます。

空白時(標準)はメインデータベースを利用します。

図3 データベースを指定する
Wagby Developer Day 2017