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);