SSIS错误 - 对象不仅是故障序列的ADODB.RecordSet或ADODB.Record

时间:2017-12-22 16:13:45

标签: ssis ssis-2008

我有一个SSIS项目,在运行一堆SQL数据任务后同时出现故障和成功流程,例如: enter image description here

如您所见,有两种不同的创建电子邮件脚本任务。两个脚本任务都包含以下行:

 OleDbDataAdapter da = new System.Data.OleDb.OleDbDataAdapter();
 DataTable dt = new DataTable();
 da.Fill(dt, Dts.Variables["LogResultSet"].Value); //this line causing error

其中LogResultSet是变量的对象类型,默认值为“System.Object”。即使上面的行对于成功流程正常工作,但在发生故障时它会给出如下错误。

  

Object不是ADODB.RecordSet或ADODB.Record。

发生的故障是执行的一个存储过程中的虚假故障,如:

raiserror('Oh no a fatal error', 15, -1) 

当我试图查看“Dts.Variables [”LogResultSet“]的值时。通过使用MessageBox,我注意到成功流程的值为System._ComObject,但它是{{1对于故障流程。因此,出于某种原因,System.Object值在发生任何错误且序列失败时不会发生变化。我找不到为什么以及如何解决它。

我在网上搜索,在许多平台上寻找解决方案,包括下面的链接,但没有任何帮助。请注意,我尝试了以下链接中提供的所有解决方案,没有帮助.. System.ArgumentException: Object is not an ADODB.RecordSet or an ADODB.Record

任何建议或帮助将不胜感激。谢谢!

0 个答案:

没有答案