Ssis 如何在BIDS中成功和失败执行sql任务时增加用户变量?

Ssis 如何在BIDS中成功和失败执行sql任务时增加用户变量?,ssis,bids,Ssis,Bids,我有一个简单的包,其中我正在执行执行SQL任务中的select语句,我希望在该任务成功时,我的变量@cnt=0应该将@cnt增加一个,比如@cnt=@cnt+1,在脚本任务中,我应该能够显示它,如果失败,它应该是@cnt=@cnt-1 我应该在优先约束中尝试什么,我尝试使用这个'@CNT==@CNT+1',但它不会在成功时增加@CNT的值 我的表情是 感谢您在这方面的帮助。您可以使用Expression任务设置变量值,优先约束为success,并使用单独的任务来减少变量值,约束为failure

我有一个简单的包,其中我正在执行执行SQL任务中的select语句,我希望在该任务成功时,我的变量@cnt=0应该将@cnt增加一个,比如@cnt=@cnt+1,在脚本任务中,我应该能够显示它,如果失败,它应该是@cnt=@cnt-1

我应该在优先约束中尝试什么,我尝试使用这个'@CNT==@CNT+1',但它不会在成功时增加@CNT的值

我的表情是


感谢您在这方面的帮助。

您可以使用Expression任务设置变量值,优先约束为success,并使用单独的任务来减少变量值,约束为failure。
优先约束本身中的表达式用于评估是否应该发生某些事情,而不是设置变量的值。

感谢您的回复,但我使用的是BIDS 2008,我不知道如何执行该操作。我可以使用expression Task在数据工具中增加值,但现在我希望增加的值永久不变。就像当我执行包时,它从0移动到1,但第二次它又被初始化为0,不管怎样。酷,你能把这个标记为帮助未来人的答案吗?要使该值永久化,需要将其存储在某个位置,如文件或数据库表中。也许您可以通过从一个表中加载值来启动包,增加值,然后在最后写回表以便下次使用。