我有一个SSIS软件包,在其中我使用dft中的脚本组件将错误列和错误描述从插入到SQL表中。
我的代码在下面。但是,完成DFT(完成所有步骤(后,软件包无法继续执行下一个DFT任务,而错误的错误
[ssis.pipeline]错误:ID 0不存在对象。
我的代码在下面
我试图删除脚本组件并重新创建它,但这不起作用
public override void Input0_ProcessInputRow(Input0Buffer Row)
{
Row.ErrorDescription = this.ComponentMetaData.GetErrorDescription(Row.ErrorCode);
IDTSComponentMetaData130 componentMetaData = this.ComponentMetaData as IDTSComponentMetaData130;
Row.ErrorColumnName = componentMetaData.GetIdentificationStringByID(Row.ErrorColumn);
}
错误描述和错误列获取错误表,但软件包不会继续。
我正在使用DFT中的脚本组件来检索错误列和错误描述从插入到SQL表中的错误描述。
如果您正在从OLE DB目标的错误输出中读取数据,并且使用Table or View - Fast Load
选项为Access Mode
,则由于您执行批量插入操作,因此无法检索列名。
如果您需要获取错误列名,则不能使用Fast Load
选项,需要通过选择降低插入性能的Table or View
访问模式来执行行插入。
如果您没有从Ole DB目标错误输出中阅读,请参考以下文章以获取逐步指南:
- 检索列在SQL Server Integration Services中引起错误