变量表达式与表达式任务

时间:2018-05-09 16:13:43

标签: sql-server variables ssis expression etl

在SSIS 2012中,我对表达式任务和变量"表达式"之间的差异感到困惑。属性。有什么区别?我想将变量@Now设置为等效的T-SQL GETDATE()函数。我假设唯一的区别是Expression Task只设置变量值一次,而每次访问变量时都会执行变量的Expression属性。因此,每次使用变量时,当前日期和时间的Expression属性都会更改。

1 个答案:

答案 0 :(得分:1)

在这两种方法中都可以实现许多任务,但假设您必须在特定任务之后或在特定条件下(可能与其他任务相关)更改变量值(当任务时)成功,将变量值设置为1,在这种情况下,表达式属性无法实现您的目标,因此您必须使用表达式任务。

此外,在您的情况下,假设您要在for-each循环容器(在每个循环中)内将@Now变量设置为GETDATE(),因此变量表达式属性可能无法正常运行>(它将在程序包执行时设置一次),您需要一个表达式任务。