如何截断然后附加到SSIS中的RAW文件

时间:2013-11-01 15:51:45

标签: sql ssis

我正在尝试从位于单个文件夹中的多个电子表格中提取数据,然后将所有数据与列标题一起放入单个csv文件中。

我有一个foreach循环容器设置来遍历文件夹中的每个文件名,然后将这些数据附加到RAW文件,但是似乎很多人都遇到过,似乎没有内置选项这将允许人们在进入循环容器之前简单地截断RAW文件。

Jamie Thompson在他的博客here中描述了类似的情况,但是这些示例的链接似乎不起作用。在进入foreach循环之前,有没有人能够在独立步骤中截断RAW文件?

2 个答案:

答案 0 :(得分:2)

我一直使用的方法是使用适当的元数据格式创建数据流,但没有实际的行和路由到RAW文件设置为Create new。

在我现有的数据流中,我查看填充RAW文件的元数据,然后制作一个模仿它的select语句。

e.g。

SELECT
    CAST(NULL AS varchar(70)) AS AddressLine1
,   CAST(NULL AS bigint) AS SomeBigInt
,   CAST(NULL AS nvarchar(max)) AS PerformanceLOL

答案 1 :(得分:1)

这就是我要做的事情:

  • 制作初始原始文件
  • 制作该原始文件的副本
  • 每次使用文件任务替换软件包/作业开头的登台文件。

在我的用例中,我有20个foreach个线程同时写入自己的文件。没有线程可以创建然后追加,所以你只需要重新创建"通过复制一个空的'在调用线程之前已经分配了元数据的原始文件:

enter image description here