我有一个导入平面CSV文件的SSIS包,文件中有大约200,000条记录。我已使用帐号的主要唯一键设置数据导入的表。源数据中不应该有任何重复项(受控制的应用程序 - 在我的影响之外)
然而,CSV中有1个重复的行,但是当我添加主键时,它会重定向7k行...这些不重复的行只是为了无缘无故地重定向加载?
如果我手动删除单个重复行,它可以完美地工作。数据或文件没有什么特别之处,它应该只导入数据并重定向错误行。
答案 0 :(得分:1)
此行为是由于使用了OLE DB目标和快速插入模式。
使用快速插入模式,OLE DB目标发出INSERT BULK
命令并批量插入。如果批处理中的某一行违反表约束,则整个批处理失败并重定向到错误输出。乍看之下这种行为很奇怪 - 拒绝超过1行。
您可以用它做什么 - 取决于您的目标和限制