首页 > 代码库 > SSIS包配置 转
SSIS包配置 转
SQL ServerIntegration Services 提供可用于在运行时更新属性值的包配置。配置是添加到已完成包中的属性/值对。通常,在包开发期间您在包对象上创建包设置属性,然后将配置添加到包中。当包运行时,它从配置中获取新的属性值。例如,通过使用配置,您可以更改连接管理器的连接字符串,或者更新变量的值。
包配置具有下列优点:
- 使用配置可以更轻松地将包从开发环境转移到生产环境中。例如,配置可以更新源文件的路径,或者更改数据库或服务器的名称。
- 将包部署到多台不同的服务器时,配置非常有用。例如,用于每个已部署包的配置中的变量可以包含不同的磁盘空间,并且如果可用磁盘空间不满足此值,包将不会运行。
- 配置可以使包更加灵活。例如,配置可以更新在属性表达式中使用的变量的值。
Integration Services 支持几种不同的存储包配置(例如 XML 文件、SQL Server 数据库中的表以及环境变量和包变量)的方法。
每个配置都是一个属性/值对。XML 配置文件和 SQL Server 配置类型可以包括多个配置。
一 xml配置文件
选择SSIS菜单—>包配置,打开如下窗口,包配置就从这里开始配置。
选择启用包配置复选,然后单击添加按钮,如图:
1. [配置类型]下拉列表框中可以看出,有多种类型的包配置。我们在这里选择“XML配置文件”
2.选择直接指定配置设置
3.单击浏览将配置文件存放到指定的路径。
配置文件默认为”.dtsconfig”类型,其文件格式时标准的XML格式。Integration Services 对配置文件的扩展名没有严格的规定。如果把扩展名改为.txt、.xml等都没有关系。单击[下一步]按钮,选择配置需要的属性了。如图:
在左边的对话框中,我们可以根据需要勾选要配置的属性,当选中一个属性的时候,该属性的默认值就会在右边属性特性框中,这个值是可以改变的。完成属性更改后,单击下一步按钮,如图:
输入[配置名称],点击完成,XML的配置就这样轻松地完成了。在包配置组织程序框中将会出现如下图显示。然后单击关闭按钮,整个包配置的过程就结束。
我们转到配置文件存放的目录,找到刚才的配置文件"SqlConnectionString.dtsconfig ",看看它象什么样子:
<?xml version="1.0"?>
<DTSConfiguration>
<DTSConfigurationHeading>
<DTSConfigurationFileInfo GeneratedBy="******" GeneratedFromPackageName="ReadRecommendation" GeneratedFromPackageID="{47D1A86F-A1E0-4633-85B0-323C027DE88F}" GeneratedDate="2011/10/28 10:00:21"/>
</DTSConfigurationHeading>
<Configuration ConfiguredType="Property" Path="\Package.Connections[RecommendationDB].Properties[ConnectionString]" ValueType="String">
<ConfiguredValue>Data Source=******;User ID=****;Initial Catalog=RecommendationDB;Provider=SQLNCLI10.1;Auto Translate=False;Application Name=SSIS-ReadRecommendation;</ConfiguredValue>
</Configuration>
<Configuration ConfiguredType="Property" Path="\Package.Connections[RecommendationDB].Properties[Password]" ValueType="String">
<ConfiguredValue>******</ConfiguredValue>
</Configuration>
</DTSConfiguration>
这个配置文件中,包含数据库的连接方式,如果需要修改数据库连接只要更改相应的属性就可以搞定了。
二、SQL Service配置
这也是我们常用的配置方式之一,配置方式与XML配置大同小异,只是最后的配置属性存储到SQL Service数据库中。
在[配置类型]下拉列表框中,选择[SQL Server ],下面的配置界面也随着发生了变化。
[连接],即SQL Server 即数据库的连接,如果从下拉列表框中,找不到对应的连接,点击[新增],就可以创建一个新的连接,这与在连接管理器中,创建OLE DB 连接是一样的。
[配置表(A)],即配置属性存放的Table ,如果这个Table 没有事先创建好,点击[新建],系统会默认给出其如下SQL语句,点击[确定],Table 就创建完成了。
CREATE TABLE [dbo].[SSIS Configurations]
(
ConfigurationFilter NVARCHAR(255) NOT NULL,
ConfiguredValue NVARCHAR(255) NULL,
PackagePath NVARCHAR(255) NOT NULL,
ConfiguredValueType NVARCHAR(20) NOT NULL
)
[配置筛选器(F)]:这个很关键,它是区分每个包的配置属性的key 值,也就是说,如果一个Table 中,存放有多个包的配置属性的时候,每一个包就是根据这个这个key 值来进行过滤的,所以不同的包,应该有不同的key 值。[下一步],选择要配置的属性,与上面讲的[XML配置文件]的处理方式一致了。下面,我们回到SQL Server 中,找出刚才创建的记录,看看它又是啥面貌:
三、父包变量
父包变量的定义也非常简单,打开包配置向导,如下图:
[配置类型]:选择“父包变量”。
[父变量]:这里输入父包中的变量的名称。
[下一步],选择父包变量映射的属性名称,最后点击完成,就会获得如下图所示的效果。
SSIS包配置 转