我正在使用以下可能的记录结构处理SSIS中的平面文件:
ACTION_TYPE PERSON_ID TIME_STAMP
----------- --------- ---------------
1 / 2 (9 digits) (up to millis)
逻辑表明我必须在执行操作2之前为每个人执行操作1。 此外,“动作”可以在文件中出现,没有任何限制:每个人的1对2和2对,只有1,只有2等。
现在,流程是:
__(1)___> PERFORM 1 ON PERSON (DB)
SOURCE --> SORT BY OPERATION --> CONDITIONAL-SPLIT --|
|__(2)___> PERFORM 2 ON PERSON (DB)
一切正常,直到我注意到来自条件分割的记录顺序没有被保留 - 也就是说,当同一个人的1和2的“两行”进入分割时,它可能是并行执行 - 在我的数据库中导致竞争条件甚至违反约束(因为该表建立在假设1总是在2之前执行的基础上)。
使用时间戳对数据进行排序可能非常有用,但拆分会再次破坏订单,就像我在这里完成的排序一样。
任何想法如何“顺序化”con-split的输出?如果以某种方式完全顺序模式,我可以执行流程吗?
谢谢, Harel的