控制流元素
包由一个控制流以及可选的一个或多个数据流组成。SQL Server 2005 Integration Services (SSIS) 提供了三个不同类型的控制流元素:提供包中结构的容器、提供功能的任务以及将可执行文件、容器和任务连接为已排序控制流的优先约束。
下面的关系图显示具有一个容器和六项任务的控制流。这些任务中有五项定义于包级别,还有一项定义于容器级别。任务位于容器内。
Integration Services 体系结构支持容器的嵌套,且一个控制流可以包含多级嵌套容器。例如,一个包可以包含一个容器(如 Foreach 循环容器),此容器转而又能包含另一个 Foreach 循环容器,如此逐层嵌套。
事件处理程序也具有控制流,而这些控制流是使用同类控制流元素生成的。
容器
容器为控制流中的任务提供包中结构和服务。Integration Services 包含下列容器类型,用于对任务分组以及实现重复的控制流:
- Foreach 循环容器枚举一个集合,并对该集合的每个成员重复其控制流。
- For 循环容器重复其控制流,直到指定表达式的计算结果为 False 为止。
- 序列容器使您可以在容器内定义控制流的子集,并将任务和容器作为一个单元来管理。
有关详细信息,请参阅 Integration Services 容器。
任务
任务在包中执行工作。Integration Services 包含执行多种功能的任务。
- 数据流任务定义并运行提取数据、应用转换和加载数据的数据流。
- 数据准备任务复制文件和目录,下载文件和数据,保存由 Web 方法返回的数据或使用 XML 文档。
- 工作流任务与其他进程通信以运行包或程序,在包之间发送和接收消息,发送电子邮件,读取 Windows Management Instrumentation (WMI) 数据或监视 WMI 事件。
- SQL Server 任务访问、复制、插入、删除或修改 SQL Server 对象和数据。
- Analysis Services 任务创建、修改、删除或处理 Analysis Services 对象。
- 脚本任务通过自定义脚本来扩展包的功能。
- 维护任务执行管理功能,如备份和收缩 SQL Server 数据库、重新生成和重新组织索引以及运行 SQL Server 代理作业。
有关详细信息,请参阅 Integration Services 任务。
优先约束
优先约束将包中的容器和任务连接为已排序控制流。可以控制任务和容器的执行序列,并指定决定任务和容器是否运行的条件。
有关详细信息,请参阅优先约束。