sql-server – 执行SSIS的SQL作业 – 无法完成游标操作,因为声明了游标后表模式已更改

前端之家收集整理的这篇文章主要介绍了sql-server – 执行SSIS的SQL作业 – 无法完成游标操作,因为声明了游标后表模式已更改前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我一直试图解决这个问题几天,但在网上搜索时没有任何问题直接解释了为什么我收到此错误,因为此程序包上没有执行游标.

我有一个执行SSIS包的sql作业 – 这个包在这里有很多解释:

如上所示,发生了许多架构更改,最终可以解释为什么我收到此错误但是当手动执行包并且仅通过sql作业时,似乎永远不会发生此错误.它似乎也是自发地发生,有一天它起作用,然后它给我这个错误

Microsoft (R) sql Server Execute Package UtilityVersion 10.50.4000.0 for 64-bitCopyright (C) Microsoft Corporation 2010. All rights reserved.Started: 04:30:00 AMError: 2016-11-11 04:31:35.91 Code: 0xC0202009 Source: Load into Stageing Database Load into Stageing Database [114] Description: SSIS Error Code DTS_E_OLEDBERROR. An OLE DB error has occurred. Error code: 0x80004005.An OLE DB record is available. Source: “Microsoft sql Server Native Client 10.0” Hresult: 0x80004005 Description: “Could not complete cursor operation because the table schema changed after the cursor was declared.”.End ErrorError: 2016-11-11 04:31:35.92 Code: 0xC0209029 Source: Load into Stageing Database Load into Stageing Database [114] Description: SSIS Error Code DTS_E_INDUCEDTRANSFORMFAILUREONERROR. The “input “OLE DB Destination Input” (127)” Failed because error code 0xC020907B occurred and the error row disposition on “input “OLE DB Destination Input” (127)” 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.End ErrorError: 2016-11-11 04:31:35.92 Code: 0xC0047022 Source: Load into Stageing Database SSIS.Pipeline Description: SSIS Error Code DTS_E_PROCESSINPUTFailed. The ProcessInput method on component “Load into Stageing Database” (114) Failed with error code 0xC0209029 while processing input “OLE DB Destination Input” (127). 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.End ErrorError: 2016-11-11 04:31:36.06 Code: 0xC02020C4 Source: Load into Stageing Database Retrieve ITExtr03FinM 07002 Description: The attempt to add a row to the Data Flow task buffer Failed with error code 0xC0047020.End ErrorError: 2016-11-11 04:31:36.11 Code: 0xC0047038 Source: Load into Stageing Database SSIS.Pipeline Description: SSIS Error Code DTS_E_PRIMEOUTPUTFailed. The PrimeOutput method on component “Retrieve ITExtr03FinM” (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.End ErrorDTExec: The package execution returned DTSER_FAILURE (1).Started: 04:30:00 AMFinished: 04:31:36 AMElapsed: 95.859 seconds

上面的错误确实提到加载到舞台数据库 – 以下内容包含在该数据流任务中:

有人可以解释这种异常,有没有办法解决这个问题?

解决方法

阅读错误我认为回答问题的关键不是光标,而是错误的这些部分:

>组件“Retrieve ITExtr03FinM”(1)上的PrimeOutput方法返回错误代码0xC02020C4
> DTS_E_PRIMEOUTPUTFailed
>加载到分阶段数据库中检索ITExtr03FinM 1说明:尝试向数据流任务缓冲区添加行失败,错误代码为0xC0047020

关于sqlServerCentral的讨论建议将RAM /内存缓冲区配置作为问题https://ask.sqlservercentral.com/questions/46865/ssis-data-flow-task-getting-error-code-0xc02020c4.html

链接表明32位与64位问题.您在服务器上使用64位本地和32位吗? SSIS ERROR: The attempt to add a row to the Data Flow task buffer failed with error code 0xC0047020

我发现了一些更多的链接,这些链接表明RAM是一个问题,这将导致为什么它会在一台机器上出现问题,而不是另一台因为配置会有所不同.此外,如果您在服务器的大量使用时间内运行包,则可用于您的操作的内存较少.

猜你在找的MsSQL相关文章