【发布时间】:2015-04-16 19:52:38
【问题描述】:
我有一个包给我一个非常令人困惑的“文本被截断或一个或多个字符在目标代码页中没有匹配”错误,但仅当我在控制流中运行完整包时,而不是在我运行时任务本身。
第一个任务获取 CSV 文件并将它们组合成一个文件。下一个任务读取前一个文件的输出并开始处理记录。真正奇怪的是在第二步的平面文件源中抛出了截断错误。这是与上一步中的目标完全相同的平面文件源。
如果出现截断错误,上一步尝试创建文件时不会抛出该错误吗?由于第一步创建的文件没有截断,为什么我不能在下一个任务中读取同一个文件?
注意 - 唯一让这个包与我工作过的其他包不同的是我正在处理特殊字符并使用代码页 65001 UTF-8 来捕获具有特殊字符的字段。我的其他包都引用了代码页为 1252 的平面文件连接管理器。
【问题讨论】:
-
第一个任务是什么任务?是数据流任务吗?
-
那么问题出在您的控制流中。可以发截图吗?
-
第一个任务是合并每个 CSV 文件的 foreach 循环。第二个任务是一个数据流任务,它在最顶部使用 foreach 循环生成的输出文件作为输入文件。我看看能不能加个JPG文件。
-
提醒一下,如果我只运行第二个任务,则不会抛出任何错误。
标签: sql-server csv ssis ssis-2012