DTS的使用简介

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
DTS的使用简介
FEnet Royalstone
主题概述
• DTS 概述 • 包元素和创建DTS包
• 管理 DTS 包

DTS 概述
• 数据转换服务 (DTS)
DTS是一组图形工具和可编程对象,使用户能够将取自完全不同来源的
数据析取、转换并合并到单个或多个目的中。
• DTS包

联机帮助参考
在DTS的使用中如果需要详细的帮助,可以查看Microsoft SQL Server的联机帮助进行参考,在其数据转换服务部分有对DTS的约束
由多个步骤的执行结果共同约束下一步骤的执行情况。例如只有任务A 执行成功并且任务B执行失败时才执行任务C。
成功 任务A 任务C 任务B 失败

管理DTS 包
• 运行 • 备份和移植 • 设置DTS 包日志

运行DTS 包
DTS包管理
• 考虑移植性 (ini文件) • 考虑统一管理和查找 (命名规范,最好以字 母开头) • 考虑容错性
历史包:要有删除已存在表和创建表的语句。 增量包:要有先删除多余表数据的语句。 创建表时表名不要以数字开头。

DTS包管理
• 如果在编辑窗口运行DTS包,运行的内容是当 前的窗口,而不是保存过的DTS包。这对于临 时只想运行包的某些任务的情况很方便。

DTS 包元素
• DTS 连接 • DTS 任务 • DTS 包工作流

DTS 连接
• 数据源连接
标准数据库连接(如 Microsoft SQL Server 2000、Microsoft Access 2000、Oracle、dBase、Paradox等) ODBC 数据源连接; Microsoft Excel 2000 电子表格数据 HTML 源; 其它 OLE DB 提供程序连接。

DTS包的版本
• 当DTS包做了修改,每保存一次,就增加一个 版本。原来的旧版本还在,方便需要的时间进 行恢复。
• 当需要恢复以前的版本时,对着包点击右键版 本,可以看到一系列的以前保存过的版本。点 击你想要恢复的版本,然后点击编辑,再保存。 也可以在这里删除你已经不需要了的不版本。 包的版本信息也都是存在msdb.sysdtspackages 里,可以直接在这里删除不需要了的版本。
DTS 包是一个有组织的连接、DTS 任务、DTS 转换和工作流约束的集 合。每个包都包含一个或多个顺序或并行执行的步骤。可以对包进行编 辑、密码保护、调度执行和按版本检索等操作。

创建和编辑DTS 包
• 创建
通过使用 DTS设计器、DTS导入/导出向导都可以创建DTS 包。
• 编辑
使用DTS设计器编辑DTS包,一般来说,DTS包应该具备以下的特点: DTS包由不同的DTS任务组成; 各个任务之间由约束条件(工作流)控制执行顺序; 一个DTS里面至少有一个源数据连接,一般都有目的数据连接和数据转 换任务;或者是调用的子包中一定有一个源数据连接。


DTS包的移植
• 如果想把某台服务器上的某些包移植到另一台 服务器上,可以用另存为,选择目的服务器的 ip,也可以保存为结构化存储文件,在目的服 务器上打开。 如果有父包调用子包的情况,要注意调用时认 的是子包的ID,如果移植到另一台机,子包的 id改变了,那么运行父包时会报错。
DTS 任务(一)——数据转换任务
• 转换数据任务
转换数据任务是用于在源和目的之间复制数据,并将列级转换选择性地 应用于数据中。转换数据任务完成从数据源连接中选择数据,将数据列 映射到一组转换,以及将转换的数据发送到目的连接的操作。

数据转换任务 一对一列映射一起使用的转换类型
• 数据链接连接
主要是SQL Server 外部的中间文件存储连接
• 文件连接
文本文件 其它文件数据源

DTS 任务
• • • • • • • 转换数据任务 执行SQL任务 执行进程任务 执行包任务 动态属性任务 执行ACTIVEX脚本任务 其它操作任务

执行包任务允许您将其它 DTS 包作为工作流的组成部分来运行,即作 为DTS包的某个任务。
可使用执行包任务动态地从父包到子包为全局变量赋值。子包可处理在 它的可执行工作流的任何一个 Microsoft® ActiveX® 脚本中传递给它的 全局变量数据。

DTS 任务(五)——动态属性任务
• 执行进程任务
执行进程任务可以调用某个Win32进程,指定将要运行的可执行文件 (.exe) 或批处理文件 (.bat) 的名称,也可指定可执行文件或批处理文件所 要求的任何命令提示参数,多个参数之间用空格分隔。


DTS 任务(四)——执行包任务
• 执行包任务任务
• 动态属性任务
动态属性任务在包运行时间从数据转换服务 (DTS) 包之外的源检索数 值,然后将这些值指派给选中的包属性。通常,由该任务指派的外部值 在包运行之前是未知的。 可用的源类型 • 诸如 Win.ini 之类的初始化 (*.ini) 文件 • 查询结果 • DTS 包全局变量 • 环境变量 • 常量

DTS 任务(六)——执行ACTIVEX脚本
• 执行ACTIVEX脚本任务
执行ACTIVEX脚本任务是指由用户自行编写所需的操作脚本代码,并 作为包中的一个步骤执行它们。

DTS 任务(七)——执行其它操作
• 执行其它操作任务
执行其它操作任务是指完成诸如发送邮件、使用消息队列发送和接收包 之间的消息等操作,以达到接受包执行情况、控制包的执行逻辑等目的 的任务。
• 编辑保存到SQL Server的DTS包
• 在SQL Server企业管理器控制台树中,展开“数据转换服务”节 点 • 对于保存到SQL Server中的数据转换服务 (DTS) 包,单击“本地 包” • 在"详细信息"窗格中双击要在DTS设计器中打开的DTS包
完成约束:
不管上一步骤是否执行成功,只要执行结束就可以执行下一步骤。
成功约束
只有上一步骤执行成功,才进入下一步骤的执行。
失败约束
只有上一步骤执行失败,才进入下一步骤的执行。

DTS 工作流(二)
• 单一条件约束
完全由某一单一步骤的执行结果来约束下一步骤的执行情况。例如任务 A执行成功才能执行任务B。

DTS 工作流
• DTS工作流
通过在DTS包中定义各任务步骤的执行顺序来达到控制整个包的执行逻 辑。DTS工作流的条件约束包括完成约束、成功约束和失败约束。根据 约束条件,又可以分为单一条件约束和多个条件约束。

DTS 工作流(一)
• 条件约束类型

DTS包的备份
• 在SQL Server中有个 msdb数据库,DTS包的信息都放 在这个数据库的表中。 • 备份时有两种方法: • 先停SQL Server的服务,然后到SQL Server的安装目录 下备份msdbdata.mdf和msdblog.ldf两个文件。恢复时只 需停SQL Server服务,把上述两个文件替换,再启动 服务就行了。 • 点击msdb数据库,右键选择“所有任务”,再选择备 份数据库就行了。
• • • • • 复制列转换 剪裁字符串转换 日期时间字符串转换 字符串中间部分转换 大小写字符串转换
• ActiveX 脚本转换
N 对 N 列映射用在每一端连接相同数量分支的 单个箭头显示。
单个多对多复制列转换比多个一对一复制列转换的速度 快。
DTS 任务(二)——执行SQL任务
删除DTS包
1、如果包保存到 SQL Server或 Meta Data Services,则可以通过 SQL Server企业管理器将其删除 • 删除DTS包版本 1、如果将包保存到 SQL Server,那么就可以删除任何包版本 2、如果将包保存到 Meta Data Services,那么就只能删除最新的包版 本 3、如果将包保存到结构化存储文件,那么就必须删除整个文件。不 能删除保存到文件中的个别包版本
• 执行SQL脚本任务
执行SQL脚本任务是指由用户自行编写所需执行的SQL语言脚本,并作 为包中的一个步骤执行它们。这个任务可以非常灵活的满足用户的需求。
当一个SQL任务里面写着多条SQL语句时,如果第一条SQL语句失败了, 后面的SQL语句就不会继续运行了。

DTS 任务(三)——执行进程任务
• 单次运行DTS包
在完成DTS包的编辑后可以直接运行DTS包。这种运行方式是一种人工 干预的执行方式,可以比较详细的监控整个包的运行情况。
• 单步执行DTS包
在调试和编辑DTS包时,可以针对DTS包中的每个步骤进行单步执行, 以确定DTS包中各个步骤的执行情况。
• 调度执行DTS包
利用SQL Server的代理定时调度DTS包执行包。对于需要定期执行的 DTS包一般均采用此方式。设置调度的方式有两种:设置DTS包调度选 项;使用SQL Server代理的调度机制调度DTS包。
打开并编辑DTS包
• 编辑保存到结构化存储文件的 DTS 包
• 在 SQL Server 企业管理器控制台树中,右击"数据转换服务"节点, 然后单击"打开包"命令 • 在“选择文件”对话框中浏览需要的文件,单击此文件,然后单 击“打开” • 如果该文件包含多个包或包的多个版本,则出现"选择包"对话框。 双击一个数据转换服务 (DTS) 包或包的版本。若需要最新版本的 包,请单击该包节点或最高版本节点
相关文档
最新文档