我们正在尝试将平面文件中的数据加载到SQL Server数据库中。 由于我们希望全部加载或全部加载(如果10个文件中的第5个文件失败,那么我们不希望保留1-4个文件的数据),因此在foreach循环中添加了TransactionOption = Required在文件之间循环。 我们正在使用加载速度快的OLEDB目标。 要求是这样的-我们想要错误的行的行级详细信息,以便我们可以将其报告给源应用程序支持。同样,当发生回滚时,错误日志详细信息也应保留在数据库中。
问题是这个... 如果我从OLE DB目标中重定向错误的行,则会收到以下错误。
错误:无法使用事务中的连接将OLE DB Destination.Inputs [OLE DB目标输入]设置为在发生错误时重定向。
如果我关闭“快速加载”,则可以进行重定向,但这会使加载非常慢,尤其是对于初始加载。
如果我决定使用SSIS事件日志记录,它不会为我提供行级详细信息,例如失败的整行数据。
我知道我不是第一个遇到此问题的人。
我想向“到那边做完”的人寻求帮助–对于这种情况的最佳实践是什么,您想从平面文件加载到oleb-or-nothing和日志记录支持的oledb目标中,包含失败的整行的详细信息。