zoukankan      html  css  js  c++  java
  • ETL学习之七:SSIS添加包配置

    包配置允许您从开发环境的外部设置运行时属性和变量。配置允许您开发灵活的并且易于部署和分发的包。Microsoft SQL Server 2005 Integration Services (SSIS) 提供了以下配置类型:

    • XML 配置文件

    • 环境变量

    • 注册表项

    • 父包变量

    • SQL Server 表

    在本课中,将修改在第 2 课:添加循环中创建的简单 Integration Services 包,以便利用包配置。使用包配置向导,将创建一个 XML 配置,以便通过使用映射到 Directory 属性的包级别变量来更新 Foreach 循环容器的 Directory 属性。在创建配置文件之后,将从开发环境的外部修改该变量的值,并将修改后的属性指向新的示例数据文件夹。再次运行包时,配置文件将填充该变量的值,而该变量又会更新 Directory 属性。结果,包将迭代遍历新数据文件夹中的文件,而不是迭代遍历在该包中硬编码的原始文件夹中的文件。

    在此任务中,将创建 SSIS Tutorial 项目中包含的 Lesson 2.dtsx 包的副本。您将使用这一新副本来完成第 3 课剩余部分。

    创建 Lesson 2 包

    1. 如果尚未打开 Business Intelligence Development Studio,请单击“开始”,依次指向“所有程序”、Microsoft SQL Server 2005,再单击 Business Intelligence Development Studio。

    2. 在“文件”菜单上,单击“打开”,单击“项目/解决方案”,选择 SSIS Tutorial,再单击“打开”,然后双击 SSIS Tutorial.sln。

    3. 在解决方案资源管理器中,右键单击 Lesson 2.dtsx,再单击“复制”。

    4. 在解决方案资源管理器中,右键单击“SSIS 包”,再单击“粘贴”。

      默认情况下,复制的包命名为 Lesson 3.dtsx。

    5. 在解决方案资源管理器中,双击 Lesson 3.dtsx 打开该包。

     

    在本任务中,将使用包配置向导来启用包配置。您将使用该向导生成 XML 配置文件,该文件包含 Foreach 循环容器的 Directory 属性的配置设置。Directory 属性的值由新的包级别变量在运行时提供,您可以更新该变量。另外,将填充要在测试期间使用的新的示例数据文件夹。

    创建映射到 Directory 属性的新的包级别变量

    1. 在“控制流”选项卡的设计图面中单击任何地方。这将把作用域设置为将要创建的变量的包。

    2. 在 SSIS 菜单上,单击“变量”。

    3. 在“变量”窗口中,单击“添加变量”图标。

    4. 在“名称”框中,键入 varFolderName。

    5. 验证“作用域”是否显示了包的名称。

    注意:
    在本教程中,包的名称可能显示为 Lesson 1,这是因为没有在设计时更新内部对象引用。
    1. varFolderName 变量的数据类型设置为“字符串”。

    2. 返回到“控制流”选项卡,并双击“文件夹中的 Foreach 文件”容器。

    3. 在“集合”页上,单击“表达式”。

    4. 在“属性表达式编辑器”内的属性列表中,选择 Directory。

    5. 在“表达式”框中,单击空单元,再单击省略号按钮 (…)。

    6. 在“表达式生成器”中,展开“变量”文件夹,并将变量 User:varFolderName 拖到“表达式”框中。

    7. 单击“确定”按钮。

    启用包配置

    1. 在设计图面上,单击任意空白区域。

    2. 在 SSIS 菜单上,单击“包配置”。

    3. 在“包配置组织程序”对话框中,选择“启用包配置”,再单击“添加”。

    4. 在包配置向导的欢迎页上,单击“下一步”。

    5. 在“选择配置类型”页上,验证“配置类型”是否已设置为“XML 配置文件”。

    6. 在“选择配置类型”页上,单击“浏览”。

    7. 默认情况下,“选择配置文件位置”对话框将打开至项目文件夹。

    8. 在“选择配置文件位置”对话框中,键入 SSISTutorial,再单击“保存”。

    9. 在“选择配置类型”页上,单击“下一步”。

    10. 在“选择要导出的属性”页上的“对象”窗格中,展开“变量”,展开 varFolderName,展开“属性”,再选择“值”。

    11. 在“选择要导出的属性”页上,单击“下一步”。

    12. 在“完成向导”页上,键入该配置的配置名称,如 SSIS Tutorial Directory configuration。这是显示在包配置组织程序中的配置名称。

    13. 单击“完成”。

    14. 单击“关闭”。

    15. 向导将创建名为 SSISTutorial.dtsConfig 的配置文件,该文件包含特定变量的 value 的配置设置,此变量用于设置枚举器的 Directory 属性。

      注意:
      配置文件通常包含有关包属性的复杂信息,但对于本教程,唯一的信息应当是 [User::varFolderName].Properties[Value]。

    创建并填充新的示例数据文件夹

    1. 在 Windows 资源管理器中,在驱动器的根位置(例如,C:\)创建名为 New Sample Data 的新文件夹。

    2. 打开 c:\Program Files\Microsoft SQL Server\90\Samples\Integration Services\Tutorial\Creating a Simple ETL Package\Sample Data 文件夹,然后从该文件夹中复制三个示例文件。

    3. 在 New Sample Data 文件夹中,粘贴所复制的文件。

     

    在此任务中,将为包级变量 User::varFolderName 的 Value 属性,修改存储在 SSISTutorial.dtsConfig 文件中的配置设置。该变量可以更新 Foreach 循环容器的 Directory 属性。修改后的值将指向前一个任务中创建的 New Sample Data 文件夹。修改了配置设置并运行包以后,该变量将使用从配置文件填充的值(而不是包中最初配置的目录值),来更新 Directory 属性。

    修改目录属性的配置设置

    1. 在记事本或其他文本编辑器中,找到并打开在前一个任务中使用包配置向导创建的 SSISTutorial.dtsConfig 配置文件。

    2. 更改 ConfiguredValue 元素的值,使其与上一个任务中创建的 New Sample Data 文件夹匹配。请不要将路径用引号括起来。

    3. 保存更改,再关闭文本编辑器。

     

    在运行时,包将从运行时更新的变量中获取 Directory 属性的值,而不使用您在创建该包时指定的原始目录名。该变量的值由 SSISTutorial.dtsConfig 文件填充。

    若要验证该包在运行时是否使用新值更新了 Directory 属性,只需执行该包。由于只向新目录中复制了三个示例数据文件,因此该数据流将只运行三次,而不遍历原始文件夹中的 14 个文件。

    测试 Lesson 3 教程包

    1. 在“调试”菜单上,单击“启动调试”。

    2. 该包运行完成后,请在“调试”菜单上单击“停止调试”。

     

  • 相关阅读:
    Chrome书签导入IE或Maxthon的程序(三)
    解决word2003自定义工具栏被恢复问题
    Chrome书签导入IE或Maxthon的程序(二)
    解决比较Oracle中CLOB字段问题
    CodeRush Xpress For C#修改配置
    短信发送程序的编写
    poj1696 Space Ant
    数论一(hdoj 简单数学题、推理题)
    poj1338 寻找丑数
    poj2411 Mondriaan's Dream 棋盘覆盖
  • 原文地址:https://www.cnblogs.com/millen/p/1417711.html
Copyright © 2011-2022 走看看