我有一个SSIS包,很难让它的一个简单部分工作。
我有一个循环,对于每次迭代,调用一个返回true / false的存储过程,如果为true,则递增一个包变量,并且SQL任务使用新增加的变量值更新数据库记录(如下所示)。
如果我在设计器中运行包,这绝对可以。但是,如果我在SQL Server上执行包,或在SQL代理作业中运行,则变量永远不会从其默认值0更新。
变量的类型为Int32,范围在包级别定义,并且肯定会出现增量(如上所述,它与设计器中的相同数据源一起工作正常)。
我在同一个包中有其他SQL任务,它们可以很好地执行插入/更新SQL任务,所以它似乎不是一个访问问题。
任何想法都非常感谢!
修改
我认为问题确实存在于脚本任务的某个地方,我猜测实时服务器上缺少某种类型的.NET框架组件(正如下面提到的评论之一)。现在已经能够通过在SQL任务中执行增量工作来解决这个问题了。