2010-09-23 55 views
1

我想忽略批量提交时可能发生的错误。在我的情况下,独特的列。SSIS 2005 - 忽略行插入失败

OLE DB目标错误输出设置为“忽略失败”,但仍然失败。数据流“停止失败属性”设置为false并且MaximumErrorCount为0.

我不想进行行重定向以保持快速加载模式。

谢谢

回答

1

我终于重定向错误流到测试点(测试错误代码,确认它是一个行插入错误)重定向这些行成,我什么都不做与SELECT 1一个“OLE DB查询”节点,简单地忽略它们。

3

几点意见:

  1. 不能使用忽略错误,因为忽略行错误还通过记录到目的地。你必须使用重定向来摆脱坏行。
  2. 如果您不想保留坏行的副本,那么您可以将它们发送到行计数转换,因为这对性能影响最小。或者,您可以将错误的行输出到平面文件或其他表格,以便您可以查看未来日期的错误。
  3. 快速加载选项是目标的属性,而不是源的属性。即使将错误行从源代码重定向到其他位置,也可以使用快速加载。我刚刚使用快速加载的ORDER选项在一百万行数据集上运行了性能测试,当我添加错误重定向并将500K行重定向到行计数转换时,性能基本相同。我还验证了当我删除快速加载选项时性能较慢,所以我确信这会影响0。