我有以下CSV文件:
col1, col2, col3
"r1", "r2", "r3"
"r11", "r22", "r33"
"totals","","",
随后是2条空白行。该导入失败,因为最后一个数据行的末尾有额外的逗号,并且很可能会因末尾的额外空白而失败。
我可以以某种方式跳过最后一行,甚至更好地停止进口?它总是在" col1"中具有"总计"字符串。
更新:
据我了解,从答案中说,不可能使用平面文件做到这一点。目前,我将"脚本组件"作为源
您可以通过将行读为单个字符串来完成。
有条件拆分为null,左(col0)==" total"
在脚本组件中,您使用拆分函数
最后修剪(" ")
我不知道SSI内置的任何东西,让您忽略CSV的最后一行。
处理此问题的一种方法是使用脚本任务之前的数据流,该脚本任务使用FileSystemobject编辑CSV并删除最后一行。
您将需要创建一个自定义脚本,在其中读取所有行,但在SSIS中的最后一行。
这是旧的,但在搜索此主题时会出现。我的解决方案是在目的地重定向行。最后一行是重定向的,而不是失败,作业完成。当然,您可能会重定向行。这完全取决于您可以信任数据的程度。