我有一个相当复杂的场景,可以并行运行相同的包。在某些情况下,两个执行都可能最终尝试将同一行插入到目标中,这会导致违反主键错误。
当前有一个查找检查目标表以查看记录是否存在,因此插入在其“不匹配”输出上完成。它不会阻止错误,因为查找是在包启动时加载的,因此两个包都在其上获得相同的数据,如果有一行出现,它们都会将其视为“新”行,因此第一个成功,第二个失败.
有什么办法可以避免这种情况?几乎忽略了 oledb 目标上的“重复行”?我不能使用 MAX ERROR COUNT,因为重复行位于不在第一个包上的其他行中,应该插入。