SSIS多个目的地按顺序排列

时间:2013-06-25 18:53:38

标签: sql-server-2008 ssis

我有一个软件包可以将文件中的一些数据加载到3或4个表中。有一个标题表,其余的与基于列的表有外键关系,称之为event_id

我有一个条件拆分,它会拆分各种表的行 - header,child 1,child 2等。

在本地运行包时 - 订单没问题 - 包首先在第一个路径下创建头记录,然后创建子记录。我将EngineThreads设置为5,我的oledb连接将RetainSameConnection设置为True。我已经观察到数百个文件没有发生任何事故。我正在使用“从表中使用Fastload打开行集”进行子插入。

但是,在服务器上运行时 - 由于外键约束,程序包将失败。头表仍然具有新创建的记录,具有新的event_ids ..但是不会创建任何子记录。这几乎就像流动不一样;在服务器上,它不尊重条件拆分顺序,并将数据加载到头表之后的子表中,从而加载错误。

有人观察过这个吗?你是怎么绕过它的?

我无法真正重新排序数据流,因为需要多个目标作为终止点。我认为有一个选项 - 删除CHECK_CONSTRAINTS的FastLoadOption - 这很好,我只是为什么服务器不服从本地观察到的行为感到困惑。

0 个答案:

没有答案