目的:将下面两张原始表(需提前建好)中的数据循环的导入目标表(需提前建好)中
原始表1:school。字段:id、school。======> 目标表:school_kettle
原始表2:school1。字段:id、school。======> 目标表:school1_kettle
准备素材:
Excel中的内容(指定了原始表、目标表的映射关系,以及需要的字段):
1、loop1_step1转换流程:
详细配置如下:
(1)“从结果获取记录”组件
“字段名称
”需要手动填写
(2)“设置变量”组件:
只有在点击“获取字段
”时,变量名
才会是大写的。“变量活动类型
”选择“Valid in the root job
”
2、loop1_step2转换流程:
详细配置如下:
(1)“表输入”组件:
记录数量限制: 限制要查询的数据记录数,0表示没有限制。
(2)“表输出”组件
3、loop1_job1作业流程:
详细配置如下:
(1)“转换”1组件:
(2)“转换”2组件:
4、loop1_step3转换流程:
详细配置如下:
(1)“Excel输入”组件:
指定Excel中的字段
(2)“复制记录到结果”组件
5、loop1_job2作业流程:
详细配置如下:
(1)“转换”组件:
(2)“作业”组件:
必须勾选“执行每一个输入行
”,否则,只会给第一条映射关系的表里导入字段
总结:
1、关于“设置变量
”
“设置变量
”这个组件很特殊,只有将他与需要用到的 组件
分别放到不同的 转换
里面,然后将这两个转换放到一个 job
里面,才会实现所谓的循环读取“ 设置变量
”这个组件里的内容(逐行读取)。类似于 loop1_step1
转换流程中“ 设置变量
”之后,在loop1_step2
转换流程中的“ 表输入
”使用了“ 设置变量
”里面的内容。最后将这两个组件一起放到一个 job
里面,才会循环的迁移表数据。
2、关于“占位符
”
${变量}
这种占位符只能与“ 设置变量
” 搭配使用(可以与“ 设置变量
” 这个组件搭配使用。也可以与具体的转换里面“ ①转换属性/作业属性
”—“ 命名参数
”搭配使用),但是这种搭配无法实现循环。而“ ?
” 占位符可以随意使用。比如在“ 执行sql脚本
”中的 SQL
语句中,就可以使用
①双击具体的转换或者作业空白处,就可以调出“ 转换属性/作业属性
”