kettle庖丁解牛第25篇之插入更新

采得百花成蜜后,为谁辛苦为谁甜。这篇文章主要讲述kettle庖丁解牛第25篇之插入更新相关的知识,希望能为你提供帮助。
引言在上一篇文章中,我们主要讲解的是:更新组件的各种详细设置,最后实战演示了,从excel文件中读取数据,然后通过更新组件,对mysql库表中的数据进行更新操作。
在本篇文章中,我们接着介绍:kettle中的插入更新组件。
转换转换(transaformation)是ETL解决方案中最主要的部分,它处理抽取、转换、加载各种对数据行的操作。
创建转换
我们要做的ETL操作,全是在转换中设计的,所以我们要先创建一个转换。

【kettle庖丁解牛第25篇之插入更新】
保存转换

给你新建的转换,起个名字,并保存



插入\\更新简介
这个组件,利用查询关键字在表中搜索行。如果行没有找到,就插入行。如果能被找到,并且要被更新的字段没有任何改变,就什么也不做。如果有不同,行就会被更新。


选项说明

选项列表

选项
描述。
数据库连接


用来写数据的数据库连接。
目标模式
简单来说:在oracle库中,理解成user。在mysql库中,理解成database。
目标表
要写数据的表名。
提交记录数量
提交之前要改变的行数。
不执行任何更新
不执行更新操作
用来查询的关键字
可以指定字段值或者比较符。可以用以下比较符:=,
< > ,< ,< =,> ,LIKE,BETWEEN,IS NULL,IS NOT NULL。
更新字段
指定你想要更新的字段。
实战演示我们要演示从excel文件中读取数据,然后通过更新组件,使用excel文件中的数据,和mysql库表中的数据进行匹配(通过id列),匹配成功就进行更新操作。如果匹配不成功,就把excel中的数据,插入到mysql的库表中。
a、创建excle文件
我在D盘下,创建一个xlsx文件,命名为bigdata。在sheet1中设计数据,第1行是文件表头,从第2行开始是数据,此文件有3列数据.。

b、mysql库中的表数据

c、创建转换

d、excel输入设置
增加Excel文件做为数据源




指定工作表


指定字段


e、excle数据预览记录



f、插入\\更新组件

使用鼠标左键点击 Excel输入组件,按住shift键,从Excel输入组件拖拽到插入\\更新组件,拖拽后的效果如下图:

g、插入\\更新设置

h、运行转换




i、验证结果表

可以看到,通过id进行关联成功后,mysql库中的test表中的name和age列的值,已经被修改成excel文件中的数据了。excel中有2条记录和mysql的库表中关联不上的,这2条记录就insert到mysql的库表中了。
结束语本篇文章主要讲解了:插入\\更新组件的各种详细设置,最后实战演示了,从excel文件中读取数据,然后通过插入\\更新组件,把excel中的数据和mysql库表中的数据通过指定进行关联,能关联上的,就update操作。关联不上的,就insert操作。
兄弟们,其实想和作是有一段距离的,你想着想着就没有了,可是你做着做着,它就落地了。
啥都别说了,兄弟们后面跟着我干就完了,我们依然掰开揉碎的方式去说。后续的内容更精彩,敬请期待,感谢兄弟们的关注!!!

    推荐阅读