执行进程包示例
执行进程示例是一个包,它在包中运行可执行文件。在这种情况下,示例包将包含运行展开实用工具 (expand.exe) 的执行进程任务。展开****实用工具用于解压包含 Excel 电子表格的 CAB 文件,该 Excel 电子表格将用作包的其余部分的源数据。执行 SQL 任务会在包第一次运行时创建 Execute_Process_Table 表。创建表的 Transact-SQL 语句存储在单独的文件中。包再次运行时,执行 SQL 任务将截断 Execute_Process_Table。
OLE DB 源将读取 Excel 电子表格中的数据,OLE DB 目标将把数据写入 Execute_Process_Table。
如果在非英语版本的 Windows 上运行该示例,则可能需要替换 Program Files 文件夹的本地化名称,才能打开或运行该示例。
重要提示: |
---|
提供的示例仅供教学使用。这些示例不是针对生产环境设计的,也没有在生产环境中进行测试。对于这些示例,Microsoft 不提供相关的技术支持。 |
要求
运行此示例包具有以下要求:
- 示例数据包及其使用的数据文件必须安装在本地硬盘驱动器上。
- 您必须安装了 AdventureWorks 数据库并对其具有管理权限。
- 如果仅需要从命令行运行示例包,则必须安装 SQL Server 2005 Integration Services (SSIS)。
- 若要在 SSIS 设计器中打开包并运行示例包,则必须安装 Business Intelligence Development Studio。
- 您可能需要修改执行进程任务以提供展开实用工具的正确路径。展开实用工具的位置可能不同于示例包指定的位置,这取决于操作系统。若要修改执行进程任务,请右键单击**“控制流”选项卡中的任务,然后选择“编辑”。在“执行进程任务编辑器”中,将 Executable 属性的路径设置为展开**实用工具所在的文件夹。
有关如何安装示例的详细信息,请参阅 SQL Server 2005 联机丛书中的“Installing Sample Integration Services Packages”主题。若要获取示例的最新版本,包括在最初发布 SQL Server 2005 之后发布的新示例,请参阅 SQL Server 2005 示例和示例数据库(2006 年 4 月)。
示例包的位置
如果示例安装在默认的安装位置,则执行进程示例包位于以下文件夹:
C:\Program Files\Microsoft SQL Server\90\Samples\Integration Services\Package Samples\ExecuteProcess Sample\ExecuteProcess\
运行此示例包需要下列文件:
文件 | 说明 |
---|---|
UsingExecuteProcess.dtsx |
示例包。 |
Customers.cab |
CAB 文件,包含用作包中数据源的已压缩 Excel 电子表格。 |
Create_Execute_Process_Dest.sql |
在 AdventureWorks 数据库中创建目标表的 Transact-SQL 查询。 |
运行示例
可以使用 dtexec 实用工具从命令行运行包,或在 Business Intelligence Development Studio 中运行包。
如果您使用的是非英语版本的 Windows,则可能需要更新包中使用的所有文件连接管理器的 ConnectionString 属性,才能成功地运行示例包。您应验证计算机上连接管理器所用的路径是否为有效路径。如果需要,可以修改此路径以便使用 Program Files 文件夹的本地化名称。
重要提示: |
---|
此示例使用 Microsoft Jet 4.0 OLE DB 访问接口,该 Microsoft Jet 4.0 OLE DB 访问接口没有 64 位版本。该包无法在 64 位计算机上运行。 |
对于此示例,可能必须更新 orders.xml、TransformToFF 和 XsltResult 连接管理器的 ConnectionString 属性中的“Program Files”。
使用 dtexec 运行包
打开命令提示符窗口。
将目录更改为 C: Program Files\Microsoft SQL Server\90\DTS\Binn,即 dtexec 所在的位置。
键入下列命令:
dtexec /f "C:\Program Files\Microsoft SQL Server\90\Samples\Integration Services\Package Samples\ExecuteProcess Sample\ExecuteProcess\UsingExecuteProcess.dtsx"
按 Enter。
有关如何使用 dtexec 实用工具运行包的详细信息,请参阅 SQL Server 2005 联机丛书中的“dtexec 实用工具”主题。
在 Business Intelligence Development Studio 中运行包
打开 Business Intelligence Development Studio。
在**“文件”菜单上,指向“打开”,然后单击“项目/解决方案”**。
找到 ExecuteProcess Sample 文件夹,然后双击名为 ExecuteProcess.sln 的文件。
在解决方案资源管理器中,右键单击 SSIS 包文件夹中的 ExecuteProcess.dtsx,然后单击**“执行包”**。
有关如何在 Business Intelligence Development Studio 中运行包的详细信息,请参阅 SQL Server 2005 联机丛书中的“运行包”主题。
示例中的组件
下表列出了示例中使用的任务、源和目标。
元素 | 用途 |
---|---|
执行 SQL 任务 |
执行 Create_Execute_Process_Dest.sql 文件中的 Transact-SQL 查询,在 Adventure Works 数据库中创建目标表。在第一次运行包时创建表。当再次运行包时表将被截断。 |
执行进程任务 |
运行展开实用工具来解压缩 Customers.cab。 |
数据流任务 |
运行包中的数据流。 |
OLE DB 源 |
将已解压缩的 Excel 电子表格用作数据源。 |
OLE DB 目标 |
将 Excel 电子表格中的数据保存在执行 SQL 任务创建的目标表中。 |
文件连接管理器 |
连接到包含创建 Execute_Process_Table 表的 SQL 语句的文件。 |
OLE DB 连接管理器 |
一个 OLE DB 连接管理器使用 Microsoft Jet 4.0 OLE DB 访问接口连接到 Excel 电子表格,另一个使用 SQL Native Client 连接到 AdventureWorks 数据库。 |
示例结果
若要查看执行进程示例包的执行结果,请打开 SQL Server Management Studio。在对象资源管理器中,连接到包含 AdventureWorks 的服务器。在 SQL Server Management Studio 中,单击**“新建查询”,然后选中“数据库引擎查询”**。在数据库列表(默认选中 master 数据库)中,选择 AdventureWorks 数据库或者在查询窗口中键入 USE AdventureWorks,然后按 F5 以更改数据库。
键入并运行以下 Transact-SQL 查询:
Select * from AdventureWorks.dbo.Execute_Process_Dest