SSIS根据字段内容将输出拆分为多个文件

JED*_*JED 2 ssis-2012

我有一个 Excel 电子表格,其中有一列包含学校名称和其他数据 - 超过 30 所学校。我想做的相当于将 1 个名称的所有学校过滤到自己的电子表格中,这样我最终会得到 30 多个单独的文件。这只能在 SSIS 中完成吗?

我希望最终得到与所选列中不同学校一样多的电子表格。

我已经成功地做到了,我实际上命名了一所单独的学校,[school]=="John Smeaton"但我无法命名所有学校,并且当新学校出现或关闭时,必须不断更新脚本。

Ama*_*has 6

是的,将使用 SSIS 包来实现。我在类似示例的帮助下解释它: 在此输入图像描述 就我而言,源文件也是 CSV 文件。在这里,我尝试为每个员工创建一个单独的 csv 文件。

为每个员工创建单独的 csv 文件的步骤。

步骤 1.创建一个数据流任务,从 CSV 文件中提取记录并将其存储到记录集目标中。

在此输入图像描述 在此输入图像描述

步骤2.创建一个Foreach容器并使用foreach容器配置记录集(我们在上面创建)并进行相应的迭代。

在此输入图像描述

步骤 3.创建一个用户定义的变量,并在每次迭代时将员工编号存储到其中。 在此输入图像描述

在此输入图像描述

步骤 4:现在在 foreach 容器内创建一个数据流任务,该任务从用户定义的变量中读取员工编号,并从源 CSV 文件中提取员工详细信息,并将详细信息保存到 CSV 文件中。

在此输入图像描述

这里是条件分割设置 在此输入图像描述 这是平面文件目标设置。 在此输入图像描述

最终包: 在此输入图像描述

第5步:执行容器在此输入图像描述

执行包后输出:

在此输入图像描述