• SQL Server SSIS中的变量使用表达式后,就无法更改其值了


    在SQL Server SSIS中,我们可以为变量定义初始值和表达式,其实SSIS的变量定义为表达式后我们就无法更改变量的值了,我们来做如下实验:

    首先我们在SSIS包中定义一个String类型的变量叫Message,我们为该变量定义初始值"Hello Tom"(注意,这时我们没有为变量Message定义表达式),如下所示:

    然后我们在SSIS包中,使用一个"Script Task"组件,该组件设置了变量Message为"ReadWriteVariables"变量,也就是说变量Message在"Script Task"组件中可以被赋予新值:

    在"Script Task"组件中我们使用C#代码,更改变量Message的值为"Hello Jack","Script Task"组件中的C#代码如下所示:

    然后我们运行SSIS包,在"Script Task"组件后设置一个断点,来查看变量Message的值,我们可以看到当SSIS包运行完"Script Task"组件后,变量Message的值变为了"Hello Jack",如下所示:

    现在我们将变量Message的值设置为表达式"Hello Tom",如下所示:

    再次运行SSIS包,当运行完"Script Task"组件后,我们可以看到变量Message的值没有改变,仍然为表达式设置的值"Hello Tom",如下所示:

    这说明SQL Server SSIS中的变量,如果使用了表达式来作为其初始值,那么该变量的值在SSIS包中就无法被更改了,这个特性如果开发人员没注意到,就很容易造成程序中的Bug,所以大家要注意SSIS变量的这个特性。

  • 相关阅读:
    CSS之Position详解
    线性回归预测法linear regression
    置信区间
    asp.net MVC 中使用dataannotation验证Model
    决策树Decision Tree
    Net反射在项目中的应用
    C#并行编程并行任务
    一个特殊的产品价格制定法(市场决定价格)
    Json
    线性规划模型(线性优化模型)Linear programming
  • 原文地址:https://www.cnblogs.com/OpenCoder/p/11234671.html
Copyright © 2020-2023  润新知