サブデータベースを指定する
最終更新日: 2020年8月10日
R8 | R9
Wagbyではモデル単位でどのデータベースを利用するかを指定することができます。一つ目を「メインデータベース」と呼び、二つ目以降を「サブデータベース」と呼びます。
サブデータベースの用途は、既存システムのマスタデータを直接、Wagbyアプリケーションが利用することです。
両者の違いは次のとおりです。
サブデータベースを使うモデルには次の制約があります。
サブデータベースを利用しているモデルのキャッシュは標準では有効となっていますが、利用状況に応じてキャッシュを無効にすることを検討して下さい。
「環境>データベース」から、メインデータベースとサブデータベースの指定を行います。
サブデータベースは最大5つまで指定できます。
モデル毎に、どのデータベースを利用するかを指定できます。設定したサブデータベースのみ選択肢に用意されます。
空白時(標準)はメインデータベースを利用します。
R8.4.0/R8.4.1のみ必要な設定があります。(R8.3.xまで、ならびにR8.4.2以降はこの設定は不要です。)[詳細...]
サブデータベースの設定を無効にするには、環境タブのサブデータベース設定を消去することに加え、サブデータベースを利用しているモデル側の設定も解除してください。
サブデータベースにデータを登録する場合、Wagbyが標準で提供する「順序」の設定は無効にする必要があります。(Wagbyが提供する「順序」はメインデータベースのみを対象にしています。)
メインデータベースとサブデータベース
メインデータベース(標準)
サブデータベース
設定できる数
1つだけです。
オプションという位置付けです。5つまでのサブデータベースを指定できます。
機能
読み込みと書き込みができます。書き込みはトランザクション制御にも対応しています。
読み込みと書き込みができます。(*1)
メインデータベースとサブデータベースの両方の更新を一つのトランザクションとすることはできません。それぞれの書き込み処理は独立して行われます。(*2)サブデータベース利用時の制約
親子モデルのいずれも(同じ)データベースを利用しているとき、その親子モデルの同時更新はトランザクション対象にならない。つまり親と子はそれぞれ独立にコミットされる。 R8.4.2で改善されました。キャッシュの扱い
定義方法
データベースの設定
モデルの設定
R8.4.0/R8.4.1の場合
サブデータベースの設定を無効にする
スクリプトを使ってサブデータベースで順序を利用する