Kettle8.2输出组件之插入更新

本文档介绍了如何使用Kettle8.2的Excel输入和插入更新组件,将Excel文件中的数据更新到MySQL数据库。首先回顾了MySQL的DML操作和Excel输入组件的使用,接着详细讲解了转换的设计与配置,包括Excel输入和更新组件的参数设置。最后,展示了转换的运行结果,分析了更新和插入的过程,以及在数据库中查看的结果。
摘要由CSDN通过智能技术生成

前置知识回顾

  • MySQL表upset语句
  • Excel输入组件的使用

一、需求说明


  • 需求说明: 利用Excel输入组件读取现存的Excel文档中内容,将其更新到MySQL数据库中的某张表中。

  • 插入更新组件说明:
    插入更新就是插入更新就是把数据库已经存在的记录与数据流里面的记录进行比对,如果不同就进行更新。如果记录不存在,则会插入数据!

  • MySQL数据库中用于测试的表的结构及数据如下所示,根据实际情况读者需要将其在你们自己的数据库中执行一下,注意:如表已经存在则不需要再次创建

    DROP TABLE IF EXISTS `t_test_user`;
    CREATE TABLE `t_test_user` (
      `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键',
      `name` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '姓名',
      `age` tinyint(4) NOT NULL COMMENT '年龄',
      PRIMARY KEY (`id`)
    ) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
    
  • Excel文档,其内容如下,仅仅作为参考,大家可以自定修改:
    在这里插入图片描述

  • 期望的结果: 将上述id与表中id一样的记录中的name和age进行更新,如没有记录的话,将数据插入表中!

二、设计转换


在这里插入图片描述

三、转换配置


  • Step1:Excel输入组件配置
    • 双击组件,写上步骤名称
      在这里插入图片描述
      选择字段,获取字段,选择字段类型,如下配置:
      在这里插入图片描述
  • Step2:更新组件配置
    • 双击打开,设置步骤名称

    • 数据库连接,点击新建,然后填写对应的数据库信息,如下
      在这里插入图片描述
      在这里插入图片描述

    • 选择目标表,点击浏览按钮,在弹窗中,选择t_test_user表,如下图所示:
      在这里插入图片描述

    • 进行条件的字段选择和更新字段选择等,具体如下:
      在这里插入图片描述
      上述配置好后,点击确定即可!

    • 保存转换

四、运行转换


在这里插入图片描述

五、结果分析


  • 查看执行结果日志
    在这里插入图片描述

  • Preview data中查看结果如下:
    在这里插入图片描述

  • 在MySQL中中查看表结果如下:
    在这里插入图片描述

注意: 更新了前三条,剩余记录都是新增的!

  • 执行过程:
    E:读取Excel文档中数据,存入Excel输入组件行集中缓存
    L:将行集中缓存的数据通过Hop传递给更新输出组件update和insert到数据库表中
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

若兰幽竹

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值