我目前正在为我们将收到的新导入文件创建一个 SSIS 包。该公司改变了以前的方式 - 一张桌子的 1 个平面文件。现在,他们将数据分散在 1 个表的多个文件中。
我有 12 个数据流任务中的 2 个,我正在努力尝试使其正常工作。--1 有 5 个文件到 1 db 目标 --1 有 3 个文件到 1 db 目标。
每个文件都有一个我用来排序的一致键(Property_ID)。平面文件数据流任务的当前设置是:
- 平面文件源 1
- 数据转换
- 合并 Join1(对其他文件的排序 ID)
- 平面文件源 2
- 数据转换
- 合并Join1
- 排序(按属性 ID 排序)
合并Join2
平面文件源
- 数据转换
合并Join2
合并 Join2 -> OLE DB 目标
我已经尝试了合并连接的所有连接类型,但仍然无法将数据正确放入表中。
除了“Property_ID”之外,每个文件对于指定的目标表都有不同的列
我收到的当前结果是仅包含来自 1 个平面源文件而不是其他源文件的数据的数据行。
非常感谢任何帮助。
更新
我确实解决了这个问题。
我所做的是将 2 个文件合并到一个合并中,然后每个文件都按一个键排序。
之后,将合并作为右表放入合并连接中,其中左连接表是另一个单独的平面源文件,它实际上具有进入表的主排序键。
然后,合并连接在相同的 sortID 上排序,所有文件都直接用于 ole db 目标。