第7章——数据加载(案例二:增量加载)

1.数据准备

建立两张数据表,分别为incremental_source和incremental_target,

在MySQL中输入以下代码:

create table `incremental_source` (
	`id` int (20),
	`name` varchar (60),
	`age` int (20),
	`create_time` datetime 
); 
insert into `incremental_source` (`id`, `name`, `age`, `create_time`) values('1','Isabella','18','2019-08-20 13:14:20');
insert into `incremental_source` (`id`, `name`, `age`, `create_time`) values('2','Jack','20','2019-08-21 13:14:21');
insert into `incremental_source` (`id`, `name`, `age`, `create_time`) values('3','Nicholas','22','2019-08-20 13:14:22');
insert into `incremental_source` (`id`, `name`, `age`, `create_time`) values('4','Jasmine','19','2019-08-20 13:14:23');
insert into `incremental_source` (`id`, `name`, `age`, `create_time`) values('5','Mia','20','2019-08-20 13:14:24');
create table `incremental_target_copy` (
	`id` int (20),
	`name` varchar (60),
	`age` int (20),
	`create_time` datetime 
); 
insert into `incremental_target_copy` (`id`, `name`, `age`, `create_time`) values('1','Isabella','18','2019-08-20 13:14:20');
insert into `incremental_target_copy` (`id`, `name`, `age`, `create_time`) values('2','Jack','20','2019-08-21 13:14:21');
insert into `incremental_target_copy` (`id`, `name`, `age`, `create_time`) values('3','Nicholas','22','2019-08-20 13:14:22');
insert into `incremental_target_copy` (`id`, `name`, `age`, `create_time`) values('4','Jasmine','19','2019-08-20 13:14:23');
insert into `incremental_target_copy` (`id`, `name`, `age`, `create_time`) values('5','Mia','20','2019-08-20 13:14:24');

2.打开Kettle工具,创建转换

3.配置表输入控件

双击“表输入”控件,进入“表输入”配置界面,单击新建按钮,配置数据库连接,配置完成后单击确认按钮。MySQL数据库连接的配置,具体如图所示。

 SQL框中编写查询数据表incremental_sourceSQL语句,然后单击预览按钮,查看数据表incremental_source的数据是否成功从MySQL数据库中抽取到表输入流中,具体如图所示。

 

 4.配置插入/更新控件

单击目标表处的浏览按钮,弹出“数据库浏览器”窗口,选择目标表incremental_target,具体如图所示。单击获取字段按钮,用来指定查询数据所需要的关键字,这里通过比较数据表incremental_target的字段id与输入流里的字段id是否一致为关键条件,更新数据表中的其它字段数据;单击获取和更新字段按钮,用来指定需要更新的字段,具体如图所示。

6.运行转换,成功后结果如下:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值