案例介绍
通过Kettle工具的转换来实现将一张数据表中的两个字段进行拼接,然后插入到另一张数据表中。即将数据表personal_a中的字段surname和name进行拼接,然后插入到数据表personal_b。
案例实现
1.数据准备
创建一个数据库personal,并在该数据库中创建两张数据表,即数据表personal_a和数据表personal_b,两张数据表的内容如图所示。
2.创建转换
通过使用Kettle工具,创建一个转换field_switching,并添加表输入控件、JavaScript代码控件、插入/更新控件以及跳连接线,具体如图所示。
3.配置“表输入”控件
首先双击“表输入”控件,进入“表输入”界面,单击“新建”按钮,配置数据库连接,配置完成后单击测试,配置成功后显示如下界面,完成后单击“确认”按钮。
单击“获取SQL查询语句”按钮,获取数据表personal_a中的数据
“表输入”界面最终配置的效果如下图:
4.配置JavaScript代码控件
双击“JavaScript代码”控件,进入“JavaScript代码”界面
在Java script窗口中,编写Java script脚本代码;单击“获取变量”按钮,在字段窗口的“改名为”字段处添加新的字段名称username,如下图所示:
单击“确定”,完成“JavaScript代码”控件的配置。
5.配置“插入/更新”控件
双击“插入/更新”控件,进入“插入/更新”界面
单击“浏览”按钮,获取目标表personal_b,如下图:
单击“获取字段”按钮,指定查询数据所需要的关键字,即数据表personal_b中的id_b字段和输入流中的id字段
单击“编辑映射”按钮,配置映射匹配窗口,选中“源字段”和“目标字段”选项框中的字段,然后单击Add选项,将映射字段添加至“映射”选项框,然后单击“确定”按钮。
“插入/更新”控件的配置结果如下图所示:
单击转换工作区顶部的按钮,运行创建的field_switching转换,结果如下:
通过SQLyog工具,查看数据表personal_b是否已成功插入7条数据,查看结果如下图所示 :