【问题标题】:How to process ragged right text files with many suppressed columns in SSIS or other tool?如何在 SSIS 或其他工具中处理带有许多抑制列的参差不齐的正确文本文件?
【发布时间】:2010-09-20 19:10:34
【问题描述】:

不规则的右平面文件选项对于以 CRLF 终止的单个尾随字段非常有用,但是当任何数量的空白尾随字段被抑制并且该行以 CRLF 提前终止时,我在 SSIS 中找不到其他选择,只能使用单个“REMAINDER”列读取几列,然后使用带有 SUBSTRING 操作的派生列转换来一一提取“可选”列。

我想到的一种可能性是,在连接管理器获得它之前,是否有任何方法通过 SSIS 中的“填充器”组件传递线路。然后,您可以获得使用连接管理器设置传入列长度的所有好处。我总是可以创建一个外部程序(或一个完全独立的 SSIS 数据流)来传递一个文件,该文件将用空格填充每一行(并且右不规则 - 只需添加相同的最小空格数以解释所有抑制字段到每个行就足够了),但这似乎相当浪费磁盘空间,并且还需要再完全读取(和写入)文件一次。

或者,如果行过早终止,也许有一个第三方数据源组件将自动简单地为 NULL 或空白和列。

还有其他选择吗?

【问题讨论】:

    标签: sql-server ssis text-files etl


    【解决方案1】:

    我认为您提出的解决方案听起来很合理。磁盘空间很便宜。在导入数据之前清理格式的两步过程是完全可以接受的。

    【讨论】:

      【解决方案2】:

      使用脚本组件将列分隔为数据源。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-04-28
        • 2011-03-26
        相关资源
        最近更新 更多