微波EDA网,见证研发工程师的成长!
首页 > 通信和网络 > 通信网络技术文库 > 在SQL Server集成服务中运行DTS包

在SQL Server集成服务中运行DTS包

时间:09-06 来源:IT专家网 点击:
SQL Server集成服务(SQL Server Integration Services ,SSIS)是SQL Server产品中最新发布的ETL工具。它是数据转换服务(DTS)的替代,功能强大,易于使用并且非常灵活。有了这个最新和最好的工具,你为什么还要继续使用DTS呢?回答很简单:当SQL Server 2005推出SSIS时DTS已经使用七年了。许多公司都使用它,并且一些现有的DTS包很复杂,花费了几天、几星期、甚至几个月来开发。如果你的DTS包能够工作那为什么要重新开发呢?

  有几种方法将DTS包转换为SSIS包,但是它们并不总是能按计划的工作并且你会花费很多时间去修正它。这对于DTS包来说意味着什么?你是否要为了使用SQL Server 2005和SSIS而将它们丢弃?绝对不是。SQL Server集成服务具有内置的集成功能可以集成你的旧的DTS包。

  在开发一个SSIS包时,你在控制流中有一个可用的任务叫做Execute DTS 2000 Package Tasks(执行DTS 2000包任务)。这个任务允许你添加对采用SQL Server 2000工具集建立的DTS包的调用。如果你的DTS包是用SQL Server 7建立的,那你就像他们所说的,没办法了。使用Execute DTS 2000 Package Task非常简单。你将这个任务拖动到你的控制流中并双击它来进行配置。这会打开如Figure1所示的对话框。  

Figure 1: Execute DTS 2000 Package Task属性对话框

  你可以从这指定这个包是存储在SQL Server上还是存储在一个文件里,并提供包的连接细节。另外,你还可以设立传送到DTS包里的变量。这通过两种方式实现。首先,在这个属性对话框的内部变量区域点击New。在这里,你将可以设置任何存在于DTS包内的全局变量的值。

  你还可以添加要传送的外部变量--在你的SSIS包中定义的变量。然后你就可以在你的DTS包脚本对象里使用这些变量。最后,但不是最不重要的,你可以告诉SSIS将DTS包放到SSIS包的内部。要这么做,点击在内部加载DTS2000包按钮。这会在你的SSIS包内创建一个DTS包的拷贝,你就不再依赖于源SQL Server或文件了。记住你不能使用SQL Server 2005工具来编辑或者查看一个DTS包如果你把它存储在内部,这个选项只用于DTS包的存储。

  一旦你设置了Execute DTS 2000 Package Task的所有属性,它就会作为你的工作流的一部分而存在。你可以进一步的围绕DTS包建立SQL Server集成服务功能,操纵相同的数据如果你希望这么做; 或者你可以简单的让SSIS包作为DTS包的一个封装。虽然转换你的数据转换服务包到SQL Server集成服务让你具有更大的灵活性,但有时并不值得去花费这个时间做转换。如果是这种情况,你可以很容易的知道这个选项是用来从你的SSIS包里调用那些旧的DTS包的。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top