手机站
网通分站
电信主站
密 码:
用户名:
热门关键字:  域名  虚拟主机  cn域名  域名注册  asd
当前位置 : 主页>网络编程>Mssql>列表

SQL Server的数据转换服务分析

来源:互联网 作者:west263.com 时间:2008-04-02 点击:
西部数码-全国虚拟主机10强!40余项虚拟主机管理功能,全国领先!双线多线虚拟主机南北访问畅通无阻!免费赠送企业邮局,.CN域名,自助建站480元起,免费试用7天,满意再付款! P4主机租用799元/月.月付免压金!

  在使用SQL Server 的过程中,由于经常需要从多个不同地点将数据集中起来或向多个地点复制数据,所以数据的导出,导入是极为常见的操作.我们能够使用BCP 命令来完成这一任务,但是记住 BCP 的命令格式是一件令人头痛的苦差事,虽然您能够查看帮助文档,所以我们需要功能强大操作简单的工具来完成这一任务,数据转换服务DTS 提供了这种支持。因此本文将介绍DTS 的基本情况、讨论DTS 的各个构建组件连同如何完成数据转换服务。

  数据转换服务简介

  为了支持企业决策,许多组织都需将数据集中起来进行分析。但是通常数据总是以不同的格式存储在不同的地方。有的可能是文本文档,有的虽然具备表结构但不属于同一种数据源,这些情况极大地妨碍数据的集中处理。SQL Server 为我们提供了令人欣慰的组件,即Data Transformation Services( DTS)。 DTS 本身包含多个工具并提供了接口来实现在任何支持OLE DB 的数据源间导入、导出或传递数据,并使这一工作变得简单高效。这意味着不但能够在SQL Server 数据源间进行数据的转储,而且能够把Sybase, Oracle, Informix 下的数据传递到SQL Server。

  利用Data Transformation Services (DTS) 可能在任何OLE DB、 ODBC 驱动程式的数据源或文本文和SQL Server 之间导入、导出或传递数据。具体表现在: 数据的导入、导出服务

  通过读写数据在不同应用程式间交换数据。例如,可将文本文档或Microsoft Access 数据库导入到SQL Server, 也能够把数据从SQL Server 导出到任何OLE DB 数据源。转换数据 所谓传递是指在数据未到达目标数据源前而对数据采取的系列操作。比如DTS 允许从源数据源的一列或多列计算出新的列值,然后将其存储在目标数据库中。 传递数据库对象   在异构数据源情况下DTS, 的内置工具只能在数据源间传递表定义和数据。假如要传递其他数据库对象,如索引、约束、视图时,必须定义一个任务,从而在目标数据库上执行那些包含在任务中的SQL 语句,SQL 语句是被用来创建这些数据库对象的。 18.1.2 DTS 结构 DTS 将数据导入、导出或传递定义成可存储的对象,即包裹或称为包。每一个包都是包括一个或具备一定顺序的多个任务的工作流。每个任务能够将数据从某一数据源拷贝至目标数据源或使用Active 脚本转换数据或执行SQL 语句或运行外部程式。也能够在SQL Server 数据源间传递数据库对象。

  包对象用来创建并存储步骤,这些步骤定义了一系列任务执行的顺序连同执行任务的必要细节。包对象中还包括源列、目标列连同有关在数据传递过程中如何操纵数据的信息。

  包能够存储在DTS COM 结构的存储文档中、msdb 数据库中、或Microsoft Repository 中。

  能够通过以下工具来运行包,他们是:dtsrun 工具,DTS Designer, DTS 的导入、导出向导,SQL Server Agent 来运行规划作业,使用Execute 方法调用DTS 包对象的COM应用程式。

  包是顶层对象,他包含三种底层对象:连接、任务、步骤。

  连接

  连接定义了有关源和目标数据(数据源或文档)的信息这些信息包括数据格式和位置,连同安全认证的密码。DTS 包可不包含或包含多个连接。使用连接的任务有:

  DTS Data Pump 任务 执行SQL 任务 数据驱动查询任务 定制任务;

  有三种类型的连接对象 数据源连接。

  数据源连接定义了有关源和目标OLE DB 数据源的信息。这些信息包括服务器名称、数据格式和位置,连同安全认证的密码。第一个使用连接的任务负责创建该连接。假如使用ODBC 的OLE DB 提供者,则连接也能够定义ODBC 数据源信息。

  文档连接定义了有关源和目标文档的信息。这些信息包括文档格式和位置。 Microsoft 数据连接对象

  Microsoft 数据连接对象或加载数据连接文档(*.udl) 或为OLE DB 提供者配置数据连接文档的属性。

  任务

  每个DTS 包都含有一个或多个任务,每个任务都是数据转换(传递)处理的工作项目。任务的种类包括: 执行SQL 任务:即执行SQL 语句; Data Pump 任务该任务:为Data Pump 操作定义了源和目标数据源连同数据转换。Data Pump 从源和目标OLE DB 数据源间拷贝并转换数据; ActiveX 脚本执行:ActiveX, VB, Jscript 或Perscript 脚本。凡是脚本支持的操作都能够执行; 执行处理任务(Execute Process task): 指执行外部程式; 批量插入指执行:SQL Server 批拷贝操作; 发送邮件:使用SQL Mail 发送寻呼或邮件; 数据驱动查询:执行OLE DB 数据源间的高级数据传递; 转换SQL Server 对象:即从SQL Server OLE DB 数据源向另外的同类数据源复制对象,例如表、索引、视图。

  步骤

  步骤对象定义了任务执行的顺序,连同某一任务的执行是否依赖于前一个任务的结果。假如某一任务不和步骤对象相关联,则其将无法被执行。能够为某一步骤设定运行条件,使其只在一定条件才被执行,为了提高执行的性能,也能够并行执行多个步骤。

  步骤的一个重要特性是步骤优先权约束。步骤优先权约束定义了前一步必须满足哪些条件之后才会执行当前步骤,通过步骤优先权约束能够控制任务的执行顺序。有三种类型的优先权约束:

  完成:表示前一步骤完成后就执行当前步骤,而不管其成功和否; 成功:表示前一步骤只有成功执行才执行当前步骤; 失败:表示前一步骤执行失败时才执行当前步骤。某一步骤可有多个优先权约束,只有前一步满足任何的约束后,才能执行当前步骤。


文章整理:西部数码--专业提供域名注册虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

最新评论共有 0 位网友发表了评论
发表评论
评论内容:不能超过250字,需审核,请自觉遵守互联网相关政策法规。
用户名: 密码:
匿名
注册