【发布时间】:2015-04-03 02:49:31
【问题描述】:
我一直在创建一个 SSIS 包,其中我使用的过程返回 3 个结果集,并且需要将其复制到具有 3 个不同工作表的单个 excel 中。我使用脚本组件来提取数据,定义 3 个输出并使用数据阅读器将结果映射到这些输出。我添加了 3 个不同 Excel 文件目标的路径(都指向同一个文件但不同的工作表)。当我运行该软件包时,它每 5/6 次就可以正常工作一次,但大多数情况下它会失败并出现以下错误。
谁能帮助我为什么它大部分时间都失败以及如何解决它。
错误:数据流任务中的 0xC0202009,Excel 目标 1 [366]:SSIS 错误代码 DTS_E_OLEDBERROR。发生 OLE DB 错误。错误代码:0x80004005。
错误:数据流任务中的 0xC0209029,Excel 目标 1 [366]:SSIS 错误代码 DTS_E_INDUCEDTRANSFORMFAILUREONERROR。 “输入“Excel 目标输入”(377)”失败,因为发生错误代码 0xC020907B,并且“输入“Excel 目标输入”(377)”上的错误行处置指定错误失败。指定组件的指定对象发生错误。在此之前可能会发布错误消息,其中包含有关失败的更多信息。
错误:数据流任务中的 0xC0047022,SSIS.Pipeline:SSIS 错误代码 DTS_E_PROCESSINPUTFAILED。处理输入“Excel 目标输入”(377) 时,组件“Excel 目标 1”(366) 上的 ProcessInput 方法失败,错误代码为 0xC0209029。已识别的组件从 ProcessInput 方法返回错误。该错误是特定于组件的,但该错误是致命的,将导致数据流任务停止运行。在此之前可能会发布错误消息,其中包含有关失败的更多信息。
【问题讨论】:
-
你能提供更多细节吗?例如查询,您查询的数据是什么样的,等等。您尝试过什么?
-
可能是操作顺序问题。如果您要并行填充 Excel 工作表,请尝试按顺序执行,强制其按顺序排列(Sheet1、Sheet2、Sheet3)。
-
Tab - 谢谢,问题是争用。一旦我开始一个接一个地填充工作表,它工作得很好。
标签: ssis