我是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;
}
答案 0 :(得分:0)
不知道是什么原因,但其中一个解决方法可能是在SSIS中定义一个包变量,并通过Dts.Variables["key"].Value
访问它。
请记住将其作为读/写变量放在Script Task