【发布时间】:2015-08-25 17:52:56
【问题描述】:
我目前有一个数据流任务,它有一个 OLEDB 源和一个平面文件目标。
我现在必须修改它以创建一个像现在一样的平面文件,但每 100 行创建一个新文件。
所以如果总共有 250 行,我将不得不创建 3 个文件。
file1.txt // contains rows 1-100
file2.txt // 101-200
file3.txt // 201-250
行数是动态的,我事先不知道要创建多少行/文件。
我有什么选择?
我在这个项目中使用 VS 2008。
【问题讨论】:
-
像这样的时代,unix 很方便。无论哪种方式,SSIS 方式都是 1) 数据流中的脚本目标,它执行所有写入文件活动。非常适合灵活性,但由于您没有使用“本机”目的地,因此可维护性不佳。 2) 使用一个普通的平面文件目标,file.txt,然后在 DFT 之后有一个执行脚本任务,然后在那里进行文件拆分。我自己可能会选择#2,更容易调试
-
@billinkc 您指的是“脚本组件”吗?这是 vs 2008 我没有看到脚本任务。
-
“脚本组件”是您添加到数据流中的内容。 “脚本任务”是您添加到控制流中的内容。
-
@TabAlleman 是的,但他的意思是在平面文件目标或脚本任务之后在我的数据流中使用脚本组件吗?不确定我是否理解如何使用脚本任务在 SSIS 中进行设置。
-
一个脚本组件,它位于数据流任务内部,充当目标。当您将它添加到数据流时,它会询问您是否希望它充当源、转换或目标,我的手指将其缩短为脚本目标。对此深表歉意。
标签: sql-server ssis flat-file