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个重复行导致整个批次被重定向到错误目标表.
| 归档时间: |
|
| 查看次数: |
13965 次 |
| 最近记录: |