一、数据表字段合并后插入到新表
1.先建一个personal数据库:SQL语句为 create database personal;
2.再建两张表,分别是personal_a和personal_b,然后将数据插到personal_a里。SQL语句为
create table `personal_a` (
`id` varchar (60),
`surname` varchar (60),
`name` varchar (60),
`age` int (10),
`sex` varchar (60));
create table `personal_b` (
`id` varchar (60),
`username` varchar (60),
`age` int (10),
`sex` varchar (60));
insert into `personal_a` (`id`, `surname`, `name`, `age`, `sex`) values('p001','张','三','18','male');
insert into `personal_a` (`id`, `surname`, `name`, `age`, `sex`) values('p002','李','四','19','female');
insert into `personal_a` (`id`, `surname`, `name`, `age`, `sex`) values('p003','王','五','18','female');
insert into `personal_a` (`id`, `surname`, `name`, `age`, `sex`) values('p004','赵','六','20','female');
insert into `personal_a` (`id`, `surname`, `name`, `age`, `sex`) values('p005','孙','七','19','male');
insert into `personal_a` (`id`, `surname`, `name`, `age`, `sex`) values('p006','周','八','21','female');
insert into `personal_a` (`id`, `surname`, `name`, `age`, `sex`) values('p007','吴','九','20','male');
3.数据预览
4.打开kettle新建一个转换
5.按照下述用跳连接转换步骤
6.双击表输入,然后点击新建,按照下图进行配置
7.然后点击测试看数据库是否连接成功
8.数据库连接成功之后点击确定,在获取SQL查询语句框里面输入查询语句点击预览看数据是否抽取进来
9.双击javascript代码填入以下代码,在字段中添加如下信息
10.双击插入/更新后,点目标表右边的浏览选择表personal_b
然后在表字段中按照下述写入,在更新字段中点获取和更新字段
最后点击编辑映射,选择相同的源字段和目标字段之后点击Add
11.完成之后点击上面的三角形符号运行这个转换
12.查看目标表是否将字段合并
二、发送邮件
1.先新建一个作业
2.添加以下作业项并用作业跳连接起来
3.双击Start进行以下配置
4.双击发送邮件进行配置
在地址栏里面填上发件人地址和收件人地址,这里以QQ邮箱为例
然后点击服务器进行邮件服务器配置和用户验证,密码填写的不是QQ登录密码,而是开启QQ邮箱smtp时候的授权码。
获取授权码时登录邮箱点设置,进去之后点账户找到下面的POP3/SMTP服务点开启,验证完之后会给一个授权码
然后点击邮件消息进行设置,勾选带日期和使用HTML邮件格式,填写主题和注释
5.运行成功时如下所示
6.查看结果
三、总结
kettle是一个强大的ETL工具,功能丰富。Kettle工具的执行分为两个层次,即转换和作业。转换是ETL解决方案中重要的组成部分之一,它主要用于数据的抽取、转换以及加载等操作,其本质是一组图形化的数据转换配置的逻辑结构。作业包含一个或者多个作业项,并且这些作业项都是以某种顺序来进行执行的。作业执行的顺序由作业项之间的跳(Job Hop)和每个作业项的执行结果来决定。