本文介绍如何使用 SSIS 集成服务中的执行 SQL 任务,并通过一个示例来演示如何使用 Foreach 循环文件枚举器来运行多个查询文件。
为了演示这一点,我们使用了下面显示的 SQL 文件;我们的任务是运行所有这些文件。

SSIS 执行 SQL 任务运行多个查询文件
将 Foreach 循环容器 拖放到 SSIS 的控制流区域。接下来,我们创建了两个变量,FileName(文件名)和 FolderPath(文件夹路径),数据类型为字符串,用于存储文件名和文件夹路径。

双击它将打开编辑器。首先,将枚举器类型更改为 Foreach 文件枚举器。然后,单击表达式旁边的浏览按钮。
在“属性表达式编辑器”窗口中选择“目录”作为属性,然后单击“表达式”。接着,将 User::FolderPath 拖到“表达式生成器”中的“表达式”,然后单击“确定”。
单击“确定”关闭“属性表达式编辑器”窗口。有关更多数据加载选项 >> 单击此处。

在此示例中,我们想要加载所有 SQL 文件。因此,使用 *.sql 并选择“名称和扩展名”选项以获取包含扩展名的名称。

在“变量映射”选项卡下,选择 User::FileName 变量。它会将所有 SQL 文件名分配给此 User::FileName 变量。

将 SSIS 执行 SQL 任务添加到 Foreach 循环容器中以运行多个查询文件。

双击打开执行 SQL 任务编辑器。在这里,我们选择了现有的连接,但您也可以创建一个新的连接。接下来,将 SQL 源类型更改为文件连接,然后单击“<新建连接…>”按钮打开文件连接管理器编辑器。使用浏览按钮从本地硬盘驱动器选择任何一个 SQL 文件。

单击“确定”关闭 执行 SQL 任务 编辑器。

选择“创建表”文件连接管理器,然后转到“属性”窗口。接下来,单击表达式旁边的浏览按钮。
选择“连接字符串”作为属性。单击表达式并编写表达式。在这里,我们通过组合或连接 FolderPath 和 FileName 变量来构建文件路径。 单击“确定”关闭“属性表达式编辑器”窗口。

使用执行 SQL 任务和 Foreach 循环枚举器包运行多个查询文件。

打开 Management Studio 来检查 SQL 表结果。
