第 11章 SQL Server 2005
集成服务集成服务概述
集成服务( Integration Services)是用于生成高性能数据集成和工作流解决方案(包括针对数据仓库的提取、转换和加载 (ETL) 操作)的平台。集成服务包括生成并调试包的图形工具和向导;执行如数据导入、导出,FTP 操作,
SQL 语句执行和电子邮件消息传递等工作流功能的任务等。
数据转换服务是一个功能非常强大的组件。其中,导入和导出向导提供了把数据从一个数据源转换到另一个数据目的地的简单方法,该工具可以在异构数据环境中拷贝数据、
拷贝整个表或者查询结果,并且可以交互式地定义数据转换方式。 SQL Server商务智能开发平台是一个图形工具,
它使创建和编辑集成服务包( SSIS包)的工作变得更加简单和轻松,而且它提供了比导入,导出向导更为强大的功能。可以向 SSIS包中添加控制流、数据流任务和事件处理程序。
11.1 数据的导入和导出
11.1.1 数据的导入
11.1.2 数据的导出
11.1.1 数据的导入
1.导入 Access数据库利用导入,导出向导导入 Access数据库的步骤如下:
( 1) 打开 SQL Server管理平台,展开服务器和数据库,右击该数据库图标,从弹出的快捷菜单中选择,任务 → 导入数据,选项,如图 11-1所示 。 启动数据导入向导工具,就会出现欢迎使用向导对话框,对话框中列出了导入向导能够完成的操作 。
( 2) 单击,下一步,按钮,则出现选择数据源对话框,如图 11-2所示 。 在该对话框中,可以选择数据源类型,文件名,用户名和密码等选项图 11-1 打开导入向导 图 11-2 选择数据源对话框
11.1.1 数据的导入
1.导入 Access数据库
( 3) 单击,下一步,按钮,则出现选择导入的目标数据库类型对话框,如图 11-3所示 。 本例使用 SQL Server数据库作为目标数据库,在目标对话框中选择 SQL Native Client,在服务器名称框中输入目标数据库所在的服务器名称 。 下方需要设定连接服务器的安全模式以及目标数据库的名称 。 设定完成后,单击,下一步,按钮,则出现指定表复制或者查询对话框,如图 11-4所示 。
图 11-3 选择目标对话框 图 11-4 指定表复制或查询对话框
11.1.1 数据的导入
1.导入 Access数据库
( 4) 单击,下一步,按钮,就会出现选择源表和视图对话框,如图 11-5所示 。 在该对话框中,
可以设定需要将源数据库中的哪些表格传送到目标数据库中去 。 单击表格名称左边的复选框,
可以选定或者取消对该表格的复制 。 如果想编辑数据转换时源表格和目标表格之间列的对应关系,可单击表格名称右边的,编辑 …,按钮,则出现列映射对话框,如图 11-6所示 。
图 11-5 选择源表和视图对话框 图 11-6 列映射对话框
11.1.1 数据的导入
1.导入 Access
数据库
( 5) 在图 11-5中单击,下一步,按钮,
则会出现,保存并执行包,对话框,
如图 11-7所示 。 在该对话框中,可以指定是否希望保存
SSIS包,也可以立即执行导入数据操作 。
图 11-7,保存并执行包”对话框
11.1.1 数据的导入
1.导入 Access数据库
( 6) 单击,下一步,按钮,则出现,包保护级别,对话框,如图 11-8所示 。
点击,确定,按钮可完成包保护级别设定,并打开,保存 SSIS包,页框,如图 11-9所示 。
图 11-8,包保护级别”对话框 图 11-9 保存 SSIS包对话框
11.1.1 数据的导入
1.导入 Access 数据库
( 7) 单击,下一步,
按钮,则出现向导完成确认对话框,如图
11-10所示 。 其中显示了在该向导中进行的设置,如果确认前面的操作正确,单击
,完成,按钮后进行数据导入操作,否则,
单击,上一步,按钮返回修改 。
图 11-10 完成向导对话框
11.1.1 数据的导入
2,导入文本文件
( 1) 打开 SQL Server管理平台,展开选定的服务器和数据库,右击该数据库图标,从弹出的快捷菜单中选择,任务 → 导入数据,选项,如图 11-1所示 。
启动数据导入向导工具,
就会出现欢迎使用向导对话框,对话框中列出了导入向导能够完成的操作 。( 2) 单击,下一步,按钮,则出现选择数据源对话框,如图 11-11所示 。
这里在数据源栏中选择平面文件源,即文本文件 。
图 11-11 选择文本数据源对话框
11.1.1 数据的导入
2,导入文本文件
( 3) 单击,下一步,按钮,就会出现选择目的数据库类型对话框,如图
11-12所示 。 这里选择为 SQL Server,选定服务器名称和数据库名称后,
单击,下一步,按钮,则出现选择源表和视图对话框,如图 11-13所示 。
图 11-12 选择目的数据库对话框 图 11-13 选择源表和视图对话框
11.1.1 数据的导入
2,导入文本文件
( 4)单击映射“编辑 …” 按钮,则出现列映射对话框,如图 11-14所示,点击
“确定”按钮保存所作设置。单击“下一步”按钮,则出现“保存并执行包”对 话框。在该对话框中,可以设置立即执行或者保存 SSIS包以备以后执行。
( 5)单击“下一步”按钮,则出现确认导入数据对话框,如图 11-15所示。
图 11-14 选择列映射对话框 图 11-15 确认导入数据对话框
11.1.1 数据的导入
2,导入文本文件
( 6)如果在向导中设定了立即执行,在向导结束后,则会出现数据导入对话框,
如图 11-16所示。该对话框中执行向导中定义的复制操作。
图 11-16 进行数据导入对话框
11.1.2 数据的导出
1,导 出 数 据 库 至
Access
( 1)打开 SQL Server管理平台,右击服务器图标,从弹出的快捷菜单中选择“所有任务
→ 导出数据”选项,则会出现数据转换服务导入和导出向导对话框,它显示了导出向导所能完成的操作。
( 2)单击“下一步”按钮,
就会出现选择导出数据的数据源对话框,如图 11-17所示。
这里在数据源栏中选择,Microsoft OLE DB Provider
for SQL Server”选项,然后选择身份验证模式以及数据库的名称。
图 11-17 选择数据源对话框
11.1.2 数据的导出
1,导出数据库至 Access
( 3)单击“下一步”按钮,则会出现选择目的对话框,如图 11-18所示。
( 4)选定目标数据库后,单击“下一步”按钮,则出现指定表复制或查询对话框,如图 11-19所示。
图 11-19 指定表复制或查询对话框图 11-18 选择目的数据库对话框
11.1.2 数据的导出
1,导出数据库至 Access
( 5)单击“下一步”按钮,则出现选择源表和视图对话框,如图 11-20所示。其中可以选定将源数据库中的哪些表格或视图复制到目标数据库中,只需单击表格名称左边的复选框,即可选定或者取消删除复制该表格或视图。单击“编辑 …” 按钮,就会出现列映射对话框,如图 11-21所示。
图 11-21 列映射对话框图 11-20 选择源表和视图对话框
11.1.2 数据的导出
1,导出数据库至 Access
( 6)选定某个表格后,单击“预览”按钮,就会出现查看数据对话框,如图 11-22所示,
在该对话框中可以预览表格内的数据。单击“下一步”按钮,则会出现“保存并执行包”
对话框。在该对话框中,可以设定立即执行还是保存包以备以后执行。
( 7)单击“下一步”按钮,就会出现导出向导结束对话框,如图 11-23所示。
图 11-23 确认导出数据对话框图 11-22 查看数据对话框
11.1.2 数据的导出
2,导出数据库至文本文件
( 1)打开 SQL Server管理平台,右击服务器图标,从弹出的快捷菜单中选择“所有任务 → 导出数据”
选项,则会出现数据转换服务导入和导出向导对话框,它显示了该导出向导所能完成的操作。
( 2)单击“下一步”按钮,则会出现选择数据源对话框。
( 3)单击“下一步”按钮,就会出现选择目标对话框,如图 11-24。在“目标”栏中选择“平面文件目标”选项。单击“浏览”按钮,则会出现选择文件对话框,如图 11-25所示,可以设定目标文件的文件名。
图 11-25 选择文件对话框图 11-24 选择目标对话框
11.1.2 数据的导出
2,导出数据库至文本文件
( 4)单击“下一步”按钮,就会出现指定表复制或查询对话框。其中可以选定将源数据库中的表格或视图复制到文本文件,还是将满足查询结果的记录复制到文本文件。
( 5)单击“下一步”按钮,则出现“配置平面文件目标”对话框,如图 11-26所示。如图 11-27所示在该对话框中单击“编辑转换”按钮,则出现列映射对话框,
图 11-27 列映射对话框图 11-26 配置平面文件目标对话框
11.1.2 数据的导出
2,导出数据库至文本文件
( 6)在该对话框中单击“预览”按钮,可查看要导出的表中的数据,如图 11-28所示。 单击“下一步”按钮,就会出现“保存并执行包”对话框。单击“下一步”按钮,则出现“完成该向导”对话框,
如图 11-29
图 11-28 预览数据对话框 图 11-29 完成向导对话框
11.2 使用图形设计界面来创建
SSIS包
SQL Server商务智能开发平台是一个图形工具,它使创建和编辑
SSIS包的工作变得更加简单和轻松,而且它提供了比导入,导出向导更为强大的功能 。 可以向 SSIS包中添加控制流,数据流任务和事件处理程序 。
SQL Server 2005集成服务包 ( SSIS包 ) 中的控制流由不同类型的控制流元素构造而成:容器,任务和优先约束 。 容器提供包中的结构并给任务提供服务,任务在包中提供功能,优先约束将容器和任务连接成一个控制流 。
SQL Server 2005 SSIS包中的数据流由下列不同类型的数据流元素构造而成:提取数据的源,修改和聚合数据的转换,加载数据的目标以及将数据流组件的输出和输入连接为数据流的路径 。
事件处理程序与包类似 。 事件处理程序可以像包一样为变量提供作用域,并且包含控制流和可选数据流 。
11.2 使用图形设计界面来创建
SSIS包
1.创建包创建 SSIS包的步骤如下:
( 1)在 SQL Server商务智能开发平台中,在文件菜单中选择“新建 项目”,如图 11-31所示,则打开“新建项目”对话框,如图 11-32所示。
图 11-31 打开“新建项目”对话框 图 11-32,新建集成服务项目”对话框
11.2 使用图形设计界面来创建
SSIS包
1.创建包
( 2)在集成服务项目对话框中,如图 11-33所示。可以向包中添加控制流、数据流任务和事件处理程序。控制流设计器用来创建包中的控制流。工具箱的“控制流项”节点列出多种类型的任务和容器,如图 11-34所示。
图 11-33,创建包”对话框 图 11-34,工具箱”中的控制流项对话框
11.2 使用图形设计界面来创建
SSIS包
2,定义和设置数据转换任务
( 1)右键单击“连接管理器”区域中的任意位置,再单击“新建平面文件连接”,如图 11-35
所示。 在“平面文件连接管理器编辑器”对话框的“连接管理器名称”字段中,键入名称 text。
单击“浏览”。在“打开”对话框中,浏览并找到数据文件夹,再打开相应的文件,如图 11-
36所示。
图 11-35 打开“新建平面文件连接”对话框 图 11-36,平面文件连接管理器”对话框
11.2 使用图形设计界面来创建
SSIS包
2,定义和设置数据转换任务
( 2)右键单击连接管理器区域中的任意位置,再单击“新建 OLE DB 连接”。在“配置 OLE DB连接管理器”对话框中,单击“新建”。在“服务器名称”中,输入本地服务器名称或输入 localhost,
如图 11-37。在“配置 OLE DB连接管理器”对话框的“数据连接”窗格中,如图 11-38所示,确认选择了相应的服务器及数据库图 11-37,SQL Server连接管理器”对话框 图 11-38 配置 OLE DB连接管理器窗口
11.2 使用图形设计界面来创建
SSIS包
2,定义和设置数据转换任务
( 3)为源数据和目标数据创建了连接管理器后,下一个任务是在包中添加一个数据流任务。接下来向包中添加一个平面文件源并对其进行配置。如图 11-39所示 。
( 4)接下来,将目标数据库添加到数据流中。则数据流任务可表示为如图 11-40所示。
( 5)最后对包进行调试和运行。
图 11-39 平面文件源的高级编辑器窗口 图 11-40 数据流编辑器窗口
11.2 使用图形设计界面来创建
SSIS包
3.定义和设置多任务
如果包中包含两个或更多任务,
则可以通过将它们的连接线从一项拖动到其他项而将它们连接成控制流。两个项之间的连接器表示优先约束。优先约束定义了两个连接项之间的关系。它指定了运行时任务的执行顺序以及任务的运行条件。例如,优先约束可以指定某任务必须成功,才能运行控制流中的下一个任务。
如果在前面的数据转换任务成功完成后,需要完成另一个任务
“执行 T-SQL语句”,则在控制流界面中,可将这两个任务连接成控制流,如图 11-41所示。
图 11-41 数据流编辑器窗口
11.2 使用图形设计界面来创建
SSIS包
3.定义和设置多任务
双击两个任务之间的连接线,打开“优先约束编辑器”窗口,如图 11-42所示。在此窗口中可定义两个连接项之间的关系,例如前一个任务执行成功后,可执行后一个任务。
双击“执行 T-SQL语句”任务图标,可编辑要执行的 T-SQL语句,如图 11-43所示。点击“确定”
按钮完成编辑。
图 11-42,优先约束编辑器”窗口 图 11-43 编辑“执行 T-SQL语句”任务窗口