0

我是 ssis 脚本的新手,我遇到了一些问题。在ProcessInputRow我弹出一条消息,确认我key的等于Row.KeyValue +1,但是当我在其中使用该消息时,CreateNewOutputRows它又回到 0。我不明白为什么键在不同的函数中变回 0。我究竟做错了什么?(这是一个脚本组件)

int count = 0;
int key;
public override void Input0_ProcessInputRow(Input0Buffer Row)
{
    count = count + 1;
    if (Variables.KeyValueRowCount == count)
    {
        key = Row.KeyValue + 1;
    }
}
public override void CreateNewOutputRows()
{
    base.CreateNewOutputRows();
    NewKeyBuffer.AddRow();
    NewKeyBuffer.NewKey = key;
}
4

1 回答 1

0

不知道是什么原因,但其中一种解决方法可能是在 SSIS 中定义一个包变量,并通过Dts.Variables["key"].Value.

记得把它作为读/写变量放在Script Task

于 2013-07-25T13:08:23.670 回答