插入更新 | 无插入更新
有效对象
复制
说明
使用 INSERTUPDATES 和 NOINSERTUPDATES 参数控制 Oracle GoldenGate 是否将更新操作转换为插入操作。要将更新转换为插入,数据库必须默认或通过补充日志记录来记录所有列值。
这些参数特定于表。在遇到其他参数之前,所有后续 MAP 语句都有一个参数有效。
要确保在使用 INSERTUPDATES 时提取不会压缩更新,请使用 NOCOMPRESSUPDATES 参数。如果数据库默认包含所有列,则必须使用 NOCOMPRESSUPDATES 和 NOCOMPRESSDELETES 才能使 INSERTUPDATES 正常工作。如果数据库不支持 NOCOMPRESSDELETES,则必须使用 FETCHOPTIONS MISSINGCOLS。
因为可以在 MAP 语句之间有选择地启用或禁用这些参数,所以可以针对协调复制的不同线程启用或禁用这些参数。在一组 MAP 语句中指定 INSERTUPDATES 线程,并在另一组 MAP 语句中指定 NOINSERTUPDATES 线程。
默认值
NOINSERTUPDATES
语法
INSERTUPDATES | NOINSERTUPDATES
示例
此示例说明如何有选择地将 INSERTUPDATES 和 NOINSERTUPDATES 应用于不同的 MAP 语句,每个语句都表示协调复制的不同线程。
INSERTUPDATES
MAP sales.cust, TARGET sales.cust, THREAD (1);
MAP sales.ord, TARGET sales.ord, THREAD (2);
NOINSERTUPDATES
MAP sales.loc, TARGET sales.loc, THREAD (3);