kettle 多表全删全插同步数据 两种方案 (3)

获取表名:
本质是一个转换,所以,点击“文件”,点击“新建”,点击“转换”
然后进行下列操作:

image


image


image


然后三者之间建立流程关系:

image


配置转换的数据库配置,因为这个转换的主要目的是获取哪些数据库表要进行数据同步,又因为我来源库与目标库数据库结构都一样,所以这个地方配置哪个库是都可以的,各位如果有自己需求的话,自己根据实际情况选择。

image


双击表输入,进行编辑:

image


双击字段选择,进行编辑:

image


复制记录到结果,这个不用编辑。
然后保存这个转换文件,改一下转换名,方便记

第二步:

数据抽取:
建立一个转换,点击“文件”,点击“新建”,选择“转换”
配置数据库

image


建立逻辑:

image


image


双击表输入:

image


双击表输出:

image


两个流程之间,建立流程关系,从表输入到表输出。
保存此转换文件,命名自定义,方便即可。

第三步:

开始整合,建立一个作业,点击“文件”,点击“新建”,点击“作业”:
然后,把作业的开头建立

image


双击START,进行编辑:

image


获取表名:
建立转换,编辑转换,建立流程控制

image


image


image


设置变量:
建立脚本,编辑脚本,建立流程控制
var prevRow=previous_result.getRows();
if (prevRow == null &&(prevRow.size()=0)){
false;
}else{
parent_job.setVariable("tables", prevRow);
parent_job.setVariable("size", prevRow.size());
parent_job.setVariable("i", 0);
parent_job.setVariable("TABLENAME", prevRow.get(0).getString("tablename",""));
true;
}

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zgfxjf.html