SQL Server 数据库技术之:DTS(中)
作者:本站原创转载自:xin3721网络学院更新时间:2010/10/19

还可以用编程方式创建自定义任务,然后使用“注册自定义任务”命 
令将其集成到 DTS设计器中。 

  为说明如何使用这些任务,这里显示一个简单的 DTS软件包,其中包 
括两项任务: Microsoft ActiveX?脚本任务以及发送邮件任务: 
      
       图 2. 具有两项任务的 DTS 软件包 

  ActiveX脚本任务可包含任何ActiveX脚本引擎,包括Microsoft Visual 
Basic Scripting Edition(VBScript)、Microsoft JScriptActiveState 
ActivePerl。这些搜索引擎可以从 https://www.activestate.com 下载。 
发送邮件任务可以发送消息,指示软件包已运行。请注意,这些任务尚未 
排序。执行软件包时,ActiveX 脚本任务和发送邮件任务将同时运行。 

工作流:设置任务优先级 

  定义任务组时,通常有一个执行任务的顺序。如果任务已排序,每个 
任务将成为进程中的一个步骤。在 DTS设计器中,在 DTS设计器工作表上 
操作任务,并使用优先级约束条件来控制执行任务的顺序。 

  优先级约束条件继而将软件包中的任务链接起来。下表显示在 DTS中 
可以使用的优先级约束条件类型。 

优先级约束条件 说明 

按完成顺序
(蓝色箭头)
如果希望在任务 1 完成前不执行任务 2,而不考虑执行结果如何,则应使用“按完成顺序”优先级约束条件链接任务 1 和任务 2。 

按成功情况
(绿色箭头)
如果希望在任务 1 成功完成前不执行任务 2,应使用“按成功情况”优先级约束条件链接任务 1 和任务 2。 

按失败情况
(红色箭头)
如果希望只在任务 1 无法成功执行的情况下才执行任务 2,应使用“按失败情况”优先级约束条件链接任务 1 和任务 2。  

  下图显示使用“按完成顺序”优先级约束条件的 ActiveX脚本任务和 
发送邮件任务。当 Active X 脚本任务完成后,无论成功或失败,都将运 
行发送邮件任务。 
      
图 3. 使用“按完成顺序”优先级约束条件的 ActiveX 脚本任务和发送邮件任务 

  可以分别配置发送邮件任务,一个配置为使用“按成功情况”约束条 
件,一个配置为使用“按失败情况”约束条件。两个发送邮件任务可根据 
ActiveX 脚本成功还是失败发送不同的消息。 
     
             图 4. 邮件任务 

  您还可以对一个任务采用多个优先级约束条件。例如,发送邮件任务 
“管理通知”可以在脚本 #1 采用“按成功情况”约束条件,在脚本 #2 
采用“按失败情况”约束条件。在这些情况下,DTS 假设存在逻辑关系 
“AND ”。因此,只有在脚本 #1 成功执行而脚本 #2 失败的情况下,才 
会发送“管理通知”消息。 
        
      图 5.示例:对一项任务采用多个优先级约束条件 

连接:访问和移动数据 

  要成功执行复制和转换数据的 DTS任务,DTS 软件包必须与它的源和 
目标数据以及所有其它数据源(如查找表)建立有效连接。 

  创建软件包时,通过从可用的 OLE DB 提供程序和 ODBC 驱动程序列 
表选择连接类型,可对连接进行配置。可用的连接类型包括: 

● Microsoft 数据访问组件 (MDAC) 驱动程序 
用于 SQL Server 的 Microsoft OLE DB 提供程序 
Microsoft 数据链接 
用于 Oracle 的 Microsoft ODBC 驱动程序 

● Microsoft 数据访问组件 (MDAC) 驱动程序 
dBase 5 
Microsoft Access 
HTML 文件(源) 
Microsoft Excel 97-2000 
Paradox 5.X 

● 其它驱动程序 
文本文件(源) 
文本文件(目标) 
其它连接 


  DTS 允许您使用任何 OLE DB 连接。使用“连接”工具栏上的图标可 
以便捷地访问常用的各种连接。 

  下图显示一个使用两种连接的软件包。数据将从 Access 数据库(源 
连接)复制到 SQL Server 产品数据库(目标连接)。 
 
       图 6. 示例:使用两种连接的软件包 

  此软件包中的第一个步骤是一个执行 SQL任务,该任务检查是否目标 
表已经存在。如果存在,将删除它然后重新创建。成功完成执行 SQL任务 
后,第二个步骤是将数据复制到 SQL Server 数据库。如果复制操作失败, 
第三个步骤是发送一份电子邮件。 

关于我们--广告服务--免责声明--本站帮助-友情链接--版权声明--联系我们     黑ICP备07002182号