MAPINVISIBLECOLUMNS | NOMAPINVISIBLECOLUMNS
有効な対象
OracleのReplicat。スタンドアロン・パラメータまたはMAPのオプションとして有効です。
摘要
MAPINVISIBLECOLUMNSおよびNOMAPINVISIBLECOLUMNSを使用すると、Replicatがデフォルトの列マッピングでOracleターゲット表の非表示列を含むかどうかを制御できます。明示的な列マッピングを使用しているOracleターゲット表では非表示列が常にマップされるので、このオプションは不要です。MAPINVISIBLECOLUMNSは、自動競合検出および解決に必要です。
MAPINVISIBLECOLUMNSおよびNOMAPINVISIBLECOLUMNSは、異なる2つの方法で使用できます。グローバル・レベルで指定されている場合、一方のパラメータは、他のパラメータが指定されるまで、それ以降のすべてのMAP文に有効です。MAP文内で使用する場合は、グローバル指定よりも優先されます
デフォルト
統合Replicatまたはパラレル統合Replicatの場合、Replicatパラメータ・ファイルで明示的にNOMAPINVISIBLECOLUMNSを指定しないかぎり、デフォルト値はMAPINVISIBLECOLUMNSです。
他のすべてのタイプのReplicatの場合、デフォルトはNOMAPINVISIBLECOLUMNSです。
構文
MAPINVISIBLECOLUMNS | NOMAPINVISIBLECOLUMNS
[, THREAD (<threadID>[, <threadID>][, ...][, <thread_range>[, <thread_range>][, ...])]
THREADS (<threadID>[, <threadID>][, ...][, <thread_range>[, <thread_range>][, ...])
MAPINVISIBLECOLUMNS | NOMAPINVISIBLECOLUMNSは、指定されたスレッドまたは調整Replicatのスレッドに対してのみ指定します。
<threadID>[, <threadID>][, ...]
threadID, threadID, threadIDというフォーマットでスレッドIDまたはスレッドのカンマ区切りリストを指定します。
[, <thread_range>[, <thread_range>][, ...]
スレッドの範囲をthreadIDlow-threadIDhighの形式で指定するか、範囲のカンマ区切りリストをthreadIDlow-threadIDhigh, threadIDlow-threadIDhighの形式で指定します。
threadID, threadID, threadIDlow-threadIDhighのように、これらの形式を組み合せて指定することもできます。
例
例1
次の例では、一部のMAP文に対してのみMAPINVISIBLECOLUMNSを有効にし、それ以外に対しては無効にします。
MAPINVISIBLECOLUMNS
MAP hr.emp, TARGET hr.emp2;
NOMAPINVISIBLECOLUMNS
MAP hr.dep, TARGET hr.dep2;
例2
次に、MAPINVISIBLECOLUMNSのグローバルおよびMAPレベルを組み合せた使用例を示します。指定された表では、MAPレベルの指定がグローバル指定よりも優先されます。
NOMAPINVISIBLECOLUMNS
MAP hr.dep, TARGET hr.dep2;
MAP hr.emp, TARGET hr.emp2, MAPINVISIBLECOLUMNS;
例3
この例では、MAPINVISIBLECOLUMNSがグローバルに有効化されますが、スレッド3に対しては無効です。他のスレッド1、2および4では、デフォルトの列マッピングに非表示のターゲット列を含めます。
MAPINVISIBLECOLUMNS
NOMAPINVISIBLECOLUMNS THREAD(3)
MAP hr.dep, TARGET hr.dep2, THREADRANGE(1, 4);
MAP hr.emp, TARGET hr.emp2, THREADRANGE(1, 4);