在SSIS中将OLEDB目标与错误日志记录和事务一起使用的最佳做法

时间:2018-06-21 10:30:40

标签: ssis oledbdestination

我们正在尝试将平面文件中的数据加载到SQL Server数据库中。 由于我们希望全部加载或全部加载(如果10个文件中的第5个文件失败,那么我们不希望保留1-4个文件的数据),因此在foreach循环中添加了TransactionOption = Required在文件之间循环。 我们正在使用加载速度快的OLEDB目标。 要求是这样的-我们想要错误的行的行级详细信息,以便我们可以将其报告给源应用程序支持。同样,当发生回滚时,错误日志详细信息也应保留在数据库中。

问题是这个... 如果我从OLE DB目标中重定向错误的行,则会收到以下错误。

  

错误:无法使用事务中的连接将OLE DB Destination.Inputs [OLE DB目标输入]设置为在发生错误时重定向。

如果我关闭“快速加载”,则可以进行重定向,但这会使加载非常慢,尤其是对于初始加载。

如果我决定使用SSIS事件日志记录,它不会为我提供行级详细信息,例如失败的整行数据。

我知道我不是第一个遇到此问题的人。

我想向“到那边做完”的人寻求帮助–对于这种情况的最佳实践是什么,您想从平面文件加载到oleb-or-nothing和日志记录支持的oledb目标中,包含失败的整行的详细信息。

0 个答案:

没有答案