SSIS之Foreach循环容器用法

原文: SSIS之Foreach循环容器用法

要实现的业务:A数据库服务器上某库的T_GOODS_DECL的状态字段“Is_Delete”标记为“1”的时候删除B数据库服务器上对应库的T_GOODS_DECL表中的记录,二者的主键为“DECL_NO”。

总体设计图,实现原理:上一步骤将结果集传递到循环容器中,容器逐行取数据来执行容器里面的SQL任务。

SSIS之Foreach循环容器用法_第1张图片

第一步:建立“获取标记为已删除的DECL_NO”执行SQL任务

SSIS之Foreach循环容器用法_第2张图片

选择正确的数据连接器。

SSIS之Foreach循环容器用法_第3张图片

填写查询SQL语句。

SSIS之Foreach循环容器用法_第4张图片

结果集选项一定要选择“完整结果集”。

SSIS之Foreach循环容器用法_第5张图片

结果集对应中结果名称必须设为“0”,并新建对应的变量名。

SSIS之Foreach循环容器用法_第6张图片

新建的变量为object类型。

第二步:建立Foreach循环容器。

SSIS之Foreach循环容器用法_第7张图片

选择Foreach ADO 枚举器。

SSIS之Foreach循环容器用法_第8张图片

对象源变量选择之前定义的DeclNOs。

SSIS之Foreach循环容器用法_第9张图片

变量映射中,定义变量对应结果集中第一列数据,即索引0处。

SSIS之Foreach循环容器用法_第10张图片

变量定义为String类型即可。

第三步:建立“按照DECL_NO删除数据”执行SQL任务。

SSIS之Foreach循环容器用法_第11张图片

选择正确的数据连接器。

SSIS之Foreach循环容器用法_第12张图片

填写删除动作的SQL语句,“?”表示变量。

SSIS之Foreach循环容器用法_第13张图片

参数映射中选择正确的变量名,使“?”接收正确的值。

SSIS之Foreach循环容器用法_第14张图片

所有设置完成以后,点击“执行包”,即可成功。

你可能感兴趣的:(foreach)