32.1.5 更新DBで実行したUAP,トランザクション,SQLの参照DBへの反映可否
更新DBで実行したUAP,トランザクション,SQLについて,その更新内容が参照DBへ反映されるかどうかを,それぞれ次の表に示します。
|
UAP |
トランザクション |
反映可否 |
|---|---|---|
|
ログ取得モードのUAP |
コミットしたトランザクション |
○ |
|
ロールバックしたトランザクション |
× |
|
|
更新前ログ取得モードのUAP |
− |
× |
|
ログレスモードのUAP |
− |
× |
- (凡例)
-
○:反映されます。
×:反映されません。
表32‒3 更新DBで実行したSQLの参照DBへの反映可否 分類
SQL
反映可否
定義系SQL
−
×
操作系SQL
INSERT文
DELETE文
UPDATE文
PURGE TABLE文
○
上記以外
−
制御系SQL
LOCK文
IN EXCLUSIVE MODE指定あり
○
IN EXCLUSIVE MODE指定なし
×
上記以外
−
- (凡例)
-
○:反映されます。
×:反映されません。
−:対象外です。
- 注意事項
-
-
定義系SQLを実行した場合,更新DBと参照DBでデータベース構成に差異ができるため,参照DBの更新が行えなくなるときがあります。更新DBで定義系SQLを実行した場合は,「参照DBのデータベース再作成手順」を参照して参照DBのデータベースを再作成してください。
-
LOB型の列及びSGML型の列に対して更新したSQLを参照DBに反映するには,列回復制約のRECOVERY ALLを指定又はpd_ddl_tbl_recoveryオペランドにALLを指定してください。参照表,被参照表,又は検査制約を定義した表に対してPURGE TABLE文を実行した場合,「参照DBのデータベース再作成手順」を参照して参照DBのデータベースを再作成してください。
-
プラグインインデクスを定義した表に対してINSERT文,DELETE文,UPDATE文,PURGE TABLE文を実行した場合,参照DBにはプラグインインデクスの更新内容は反映しません。更新DBと参照DBのプラグインインデクスを一致させる場合は,参照DBでプラグインインデクスを再作成してください。参照DBのプラグインインデクス再作成方法については,「参照DBのプラグインインデクス再作成について」を参照してください。
-
UNTIL DISCONNECTを指定したLOCK文を参照DBに反映する場合は,トランザクション単位に反映します。LOCK文を実行したトランザクションのすべての更新内容を反映した時点で,排他を解除します。
-
ユティリティ実行による更新内容の反映可否については,マニュアル「HiRDBコマンドリファレンス」の「リードレプリカ機能使用時の運用コマンド・ユティリティの実行について」を参照してください。