Hitachi

HiRDB データ連動機能 HiRDB Datareplicator Version 10


3.3.11 マージ表の作成

複数の表を抽出側システムから抽出した更新情報を反映側の一つの表に反映(n表を1表に反映)するとき,又は抽出側システムが構造型でもリレーショナル型データベースでもないときは,マッピングキーの制約でキー重複や該当行なしになって反映側システムでエラーになります。これを解決するため反映側システムでは,更新情報でINSERTするキーが重複したときにUPDATEに変換したり,UPDATEで該当行なしのときにINSERTに変換して格納したりできます。これをマージ表の作成といいます。

マージ表を作成するかどうかは,反映表定義に指定します。反映表定義の指定については,「5.10 反映定義」のload文の説明を参照してください。

〈この項の構成〉

(1) マージ表の前提条件

反映処理で作成できるマージ表には,次に示す条件があります。

(2) マージ表の処理

次の規則に従って,マージ表は作成されます。

(3) 繰返し列を含む表へのマージ表反映

繰返し列を含む表に要素番号を指定したUPDATEを実行すると,列内の要素データすべてではなく,更新された要素のデータだけが更新情報として送られます。このときマージ表反映のINSERTで指定するデータが不足しないように,NULL値で補完されます。補完される方式を次に示します。

SQL

要素# < 最小要素#

最小要素# < 要素# < 最大要素#

最大要素# < 要素#

INSERT

補完不要

UPDATE SET

列指定

補完不要

要素指定

NULLで補完

NULLで補完

補完しない

UPDATE ADD

NULLで補完

ありえない

補完しない

UPDATE DELETE

列値NULLとして反映

要素#は要素番号を示します。

最大要素#/最小要素#は,該当する繰返し列に対する更新情報にある要素の中で最大/最小の要素番号を示します。

(4) マージ表へ反映するデータの注意事項