SSIS正在删除平面文件源导入的记录

时间:2011-05-27 05:11:09

标签: sql-server-2008 ssis record flat-file

我在SSIS(2008)中遇到了一个非常奇怪的问题。

基本工作流程如下..

使用flatfile源(CSV),进入SSIS,进入SQL。

当在开发环境中运行进程时,一切都运行良好。

当dtsx软件包投入生产时......使用完全相同的平面文件源,文件中的最后一条记录在到达SQL proc开始时就会被删除。 / p>

已经完成了我可以想到的所有内容,包括行分隔符,列分隔符,重建平面文件源连接。

以前有人见过这样的事吗?

CSV文件包含10条记录,共有4列。它由逗号分隔,并由{CR} {LF}分隔。该文件由Excel生成,并在CSV文件的末尾有一个空行。

如果需要更多信息,请与我们联系。我不确定我能提供什么。

3 个答案:

答案 0 :(得分:9)

我有同样的问题。我发现当我将SSIS包从一个服务器复制到另一个服务器时,平面文件源的文本限定符有时会混乱,因此不是< none>它将有_x003C_none_x003E_。一旦我修复了没有删除任何记录。

答案 1 :(得分:3)

我遇到了同样的问题,我昨天通过确保各列不是TextQualified来解决它。将它们全部设置为虚假神奇地使我的工作。我希望有所帮助。

答案 2 :(得分:0)

我之前遇到过类似的问题。这通常是因为您的生产SQL框是x64并且开发是X32。它仍然令人惊讶,但OLEDB驱动程序 x64 SQL服务器不完全受支持。然而,非常支持x32位相同的功能。

它始终缺少最后一条记录,后来在数据对帐中找到。 我使用的是平面文件源适配器,然后使用不同的DFT进行反复试验,发现如果你使用BULK INSERT错误就会消失,因为它不依赖于X64驱动程序。