【问题标题】:SSIS global variableSSIS 全局变量
【发布时间】:2010-03-18 13:50:04
【问题描述】:

SSIS中有没有类似全局变量的东西?我有 4 个变量(FromAddress、ToAddress、...),它们将在所有包 (32) 中使用。 因此,如果我只能设置它们一次,它将非常容易在所有软件包中使用,并且会节省我的时间。 请指教。

【问题讨论】:

    标签: ssis


    【解决方案1】:

    SSIS 有变量可以是一个包的全局变量,但是要跨越多个包,我可以想到以下选项

    传递变量

    让主包定义一个变量并将值作为参数传递给它调用的所有包。为方便识别,在所有包中调用同名变量。

    配置文件

    跨包使用相同的 SSIS 配置文件并将值存储在其中。

    环境变量

    使用从其他包中读取的windows环境变量

    注册表值

    存储在 Windows 注册表中并读取每个包 - 确保存储在所有包都可以看到的树下,否则您可能会遇到权限问题。例如HKLM

    数据库查找

    将值存储在表结构中。

    【讨论】:

      【解决方案2】:

      您可以在脚本中创建局部变量。您在脚本中创建的任何变量都是该脚本的本地变量。您还可以创建全局变量(通过“变量”滑出窗口),其范围可以用于整个包或包的子集。

      【讨论】:

      • 该地址中的任何一个如何具有跨多个包作用域的变量?
      • @ck - 我不认为他的意思是包裹。我认为他的意思是任务。只是我的猜测。
      【解决方案3】:

      您可以使用包配置(使用 DB、XML 文件、环境文件或注册表设置)来保存这些值,并且 32 个包中的每一个都可以引用相同的配置,而不必在每个包中设置变量,

      【讨论】:

        【解决方案4】:

        您可以使用配置数据库跨多个包检索类似的值。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2015-06-12
          • 2019-07-24
          • 2017-11-08
          • 1970-01-01
          • 1970-01-01
          • 2011-06-16
          相关资源
          最近更新 更多