在目标上禁用约束条件
必须在目标表上禁用触发器和级联约束条件,或者将触发器和级联约束条件配置为忽略复制所做的更改。必须禁用约束条件,因为 Oracle GoldenGate 复制由触发器或级联约束条件产生的 DML。如果在目标表上激活了相同的触发器或约束条件,则由于复制的版本,该触发器或约束条件将变得冗余,并且数据库将返回错误。请考虑以下示例,其中源表为 emp_src 和 salary_src,目标表为 emp_targ 和 salary_targ。
-
对
emp_src发出删除。 -
它将删除级联到
salary_src。 -
Oracle GoldenGate 会将两项删除操作发送到目标。
-
父删除首先到达,并应用于
emp_targ。 -
父删除将删除级联到
salary_targ。 -
salary_src中的级联删除将应用于salary_targ。 -
无法找到该行,因为已在步骤 5 中将其删除。