【发布时间】:2025-11-26 17:25:01
【问题描述】:
目标: 从具有不同标题的平面文件中加载数据到每个对应的表中。文件可以通过文件名来区分,因为它包含表的名称。
我尝试过的:
使用 foreach 循环容器循环多个文件,使用变量将传入文件的名称动态设置为平面文件源,并通过选择设置表名的选项对 ole db 目标执行相同操作变量。
- 这不起作用,因为元数据没有为旧的 db 目标更新。仅在结构相同时才有效。
我的选择:
对每个文件使用脚本任务和控制流条件以及数据流任务。这样每个数据流都会有一个平面文件源和 ole db 目标。 (如果文件数超过 10 个,则不确定这是否可行,因为数据流任务的数量将等于文件数。)
使用脚本任务负责将数据加载到各个任务中。 (不确定流读取器是否会像数据流任务一样快)。
除了以上两个选项之外,还有其他方法可以实现这一点,或者为每次数据加载动态创建包吗?
【问题讨论】:
-
您无法在运行时更改数据流任务中的元数据,因此每组元数据都需要一个平面文件源和 OLE DB 目标。
标签: dynamic import ssis flat-file ssis-2008