MAPEXCLUDE

有效对象

复制

说明

使用 MAPEXCLUDE 参数以及 MAP 参数可从通配符规范明确排除源表和序列。可以对特定的 MAP 语句使用多个 MAPEXCLUDE 语句。

在评估关联的 MAP 参数之前对 MAPEXCLUDE 进行求值。因此,它们的出现顺序不会产生影响。

使用通配符时,请注意不要放置通配符,以免排除所有对象,而无需进行任何处理。例如,以下示例不从 cat1 获取任何内容:

MAP cat1.schema*.tab*, TARGET schema*.tab*;
MAPEXCLUDE cat1.*.*

另请参见 EXCLUDEWILDCARDOBJECTSONLY 参数。

解析通配符的默认值为 WILDCARDRESOLVE DYNAMIC。因此,如果使用 MAPEXCLUDE 排除的表重命名为满足通配符的名称,则将捕获数据。DYNAMIC 设置允许在遇到满足通配符的新表名并立即将其包括在 Oracle GoldenGate 配置中后立即解析。有关更多信息,请参见 WILDCARDRESOLVE 。

默认值

无

语法

MAPEXCLUDE [<container>.]<owner>.{<table> | <sequence>}

<container>.

如果源数据库需要三部分名称,请指定包含要排除的对象的 Oracle 容器的名称或通配符指定。

<owner>

指定要排除的对象的所有者的名称或通配符指定,例如方案。

<table> | <sequence>

要排除的源对象的名称或通配符规范。

示例 1

在此示例中,目录 pdb1 中的源表(方案 test 以 tab 开头)和源表 pdb2.fin.acct 从线索文件中排除:

MAPEXCLUDE pdb1.test.tab*
MAP pdb1.*.*, TARGET *.*;
MAPEXCLUDE pdb2.fin.acct
MAP pdb2.*.*, TARGET *.*;

示例 2

以下示例从以 pdb 开头的目录中排除所有源表,即,它从 pdb1、pdb2、pdb3 等中排除所有表:

MAP pdb1.*.*, TARGET *.*;
MAP pdb2.*.*, TARGET *.*;
MAPEXCLUDE pdb1.test.tab*
MAPEXCLUDE pdb*.*.*
MAPEXCLUDE pdb2.fin.acct