我遇到了SSIS包的问题。
正如大多数人所知,xls文件每张被限制为65,536行乘256列。因此,当查询提取超过记录限制(65,536)时,Excel目标步骤失败。
我收到以下错误消息。
Error: 0xC0202009 at Calidad VIDA, Excel Destination [82]: SSIS Error Code DTS_E_OLEDBERROR. An OLE DB error has occurred. Error code: 0x80004005.
Error: 0xC0209029 at Calidad VIDA, Excel Destination [82]: SSIS Error Code DTS_E_INDUCEDTRANSFORMFAILUREONERROR. The "input "Excel Destination Input" (93)" failed because error code 0xC020907B occurred, and the error row disposition on "input "Excel Destination Input" (93)" specifies failure on error. An error occurred on the specified object of the specified component. There may be error messages posted before this with more information about the failure. Error: 0xC0047022 at Calidad VIDA, SSIS.Pipeline: SSIS Error Code DTS_E_PROCESSINPUTFAILED. The ProcessInput method on component "Excel Destination" (82) failed with error code 0xC0209029 while processing input "Excel Destination Input" (93). The identified component returned an error from the ProcessInput method. The error is specific to the component, but the error is fatal and will cause the Data Flow task to stop running. There may be error messages posted before this with more information about the failure.
Error: 0xC02020C4 at Calidad VIDA, OLE DB Source [1]: The attempt to add a row to the Data Flow task buffer failed with error code 0xC0047020.
Error: 0xC0047038 at Calidad VIDA, SSIS.Pipeline: SSIS Error Code DTS_E_PRIMEOUTPUTFAILED. The PrimeOutput method on component "OLE DB Source" (1) returned error code 0xC02020C4. The component returned a failure code when the pipeline engine called PrimeOutput(). The meaning of the failure code is defined by the component, but the error is fatal and the pipeline stopped executing. There may be error messages posted before this with more information about the failure.
文件需要采用该格式,因为客户端没有更新的版本。他们不想购买许可证。有谁知道如何解决这个问题? 我应该使用脚本任务并自己制作excel,或者我应该为每个循环创建一个并创建各种excels woorkbooks?
答案 0 :(得分:6)
答案 1 :(得分:2)
stock excel呈现选项允许选项分页到单独的选项卡上。如果在适当的行数后强制分页,则会在输出中为每个“页面”获取一个新选项卡。我没有过去使用过的设置,但是如果你需要我,我明天可以查看。
答案 2 :(得分:0)
同样适用于我的是使用SSIS包导出到CSV文件,然后手动将数据导入Excel。请注意,这与Excel中的“打开”不同,因为它也将停在65536行。创建一个新的xlsx文件,然后单击“数据” - > “来自文字”。它将导入并显示所有行。测试了750,000行。
但是,不确定是否csv - > xlsx转换很容易在SSIS包中编写脚本。最有可能通过使用Excel COM对象的脚本任务。