BIDS - SSIS - 重定向行错误发送太多行

Mat*_*t H 4 ssis sql-server-2008

我有一个简单的数据流.源是一个小的平面文件,里面有大约16k行.目标是OLE DB目标,SQL 2008表上有3部分唯一键.数据流通过一些简单的转换; 行计数,派生列,数据转换等.

一切都很简单,一切正常.

我的问题是,在这个数据中,有2行在主键方面是重复的,2个重复的行违反了该键,因此共有4行.在OLE DB目标上,我已将错误输出设置为重定向行,并将行发送到Error表,该表具有足够的列以供我识别坏行.

问题是即使有4个cuplrits,转换仍然会将1268行写入错误表.

有任何想法吗?

谢谢.

**

只是添加,如果我删除2个重复行,整个文件导入成功.... 16,875行.毫无疑问,只有2行违反了密钥,但错误重定向会影响1268.

**

Mat*_*t H 12

我找到了解决方案.

如果使用OLE目标中的数据访问模式"表或视图"而不是"表或视图 - 快速加载"加载数据,问题就会消失.

我能找到的唯一相关评论是在MSDN上;

目标上的任何约束失败都会导致FastLoadMaxInsertCommitSize定义的整批行失败.

因此,在我的情况下,行大小似乎是1268,并且违反该键的2个重复行导致整个批次被重定向到错误目标表.