SSIS部署包 - 配置太多 - 如何快速完成?

时间:2014-01-15 18:22:36

标签: sql-server ssis

我正在尝试为包创建部署配置/文件。我有许多可配置的变量,连接管理器等。对于变量,我只想配置值而不是其他任何东西。我不想转到每个变量,然后单击该复选框。是否有更快的方法来配置程序包以进行部署?

1 个答案:

答案 0 :(得分:2)

一旦定义了包使用配置,就可以关闭包,编辑配置源(文件或表条目)并预先设置,一个配置变为30。

我创建了一个新包并添加了一些变量。使用向导,我将把变量Blasto的value属性放入配置文件中。

nothing up my sleeve

我只为变量Blasto

建立配置

Package Configuration Wizard

验证将在我的配置文件中构建的内容与之前的屏幕截图匹配

Configuration confirmation

生成的XML看起来像

<?xml version="1.0"?>
<DTSConfiguration>
  <DTSConfigurationHeading>
    <DTSConfigurationFileInfo GeneratedBy="home\bfellows" GeneratedFromPackageName="Package1" GeneratedFromPackageID="{085B2116-4597-4E3A-8659-2815C82E5055}" GeneratedDate="1/15/2014 12:34:37 PM"/>
  </DTSConfigurationHeading>
  <Configuration ConfiguredType="Property" Path="\Package.Variables[User::Blasto].Properties[Value]" ValueType="Int32">
    <ConfiguredValue>-1</ConfiguredValue>
  </Configuration>
</DTSConfiguration>

如果您返回并选择Variable3,最终结果将是将另外一个条目添加到现有配置文件中。我的方法,特别是当我忘记在部署后配置某些东西时,只需编辑配置实体。我使用过SQL Server表,但XML也是如此。

当应用配置时,对于SQL Server和XML源,那些可以定义要应用的配置集合,而不是环境变量或注册表(我太懒了,无法完成父/子配置)。

如果我复制,粘贴,编辑特定于Configuration标记的行以包含这3个变量

  <Configuration ConfiguredType="Property" Path="\Package.Variables[User::Variable].Properties[Value]" ValueType="Int32">
    <ConfiguredValue>100</ConfiguredValue>
  </Configuration>
  <Configuration ConfiguredType="Property" Path="\Package.Variables[User::Variable1].Properties[Value]" ValueType="Int32">
    <ConfiguredValue>200</ConfiguredValue>
  </Configuration>      <Configuration ConfiguredType="Property" Path="\Package.Variables[User::Variable2].Properties[Value]" ValueType="Int32">
    <ConfiguredValue>300</ConfiguredValue>
  </Configuration>

Bickety bam,当我重新打开包时,发现这3个变量现在由配置驱动。

enter image description here

注意事项

外壳和变量的路径很重要。损坏的配置文件不会导致程序包中止。相反,你得到一个小小的警告,说错过配置,但不要担心,它会以设计时值运行。有一位同事设法将开发数据混合到生产环境中。大“oopsie”本身但只是把“警告只是等待成长的错误”的口号带回家了

Warnings for missed configurations