Kettle使用_9 存储过程与设置变量

                       Kettle使用_9 存储过程与设置变量

需求: 通过传递给kettle位置参数的方式执行存储过程。其中存储过程的需求是往tb_user(字段user_id, name)里插入一条记录(覆盖式,即有则删除;参数是用户id和用户名)。

解决方法:结合设置变量(设置参数名)和DB存储过程(指定数据库连接和参数)组件解决。

Step1:新建一个转换。

Step2: 拖动一个表输入或者自定义常量组件到转换里,该组件位于转换的输入分类下。

Step3: 配置表输入组件,自定义常量较为简单,这里用的是表输入。其中SQL编辑器区域可以写从某个表读取参数值,这里写的固定值。即user_id=3000,name=300$。

Step4:拖个设置变量组件,并将表输入通过SHIFT连接。

Step5:配置设置变量。

Step6:在数据库里编写存储过程(这里以Mysql为例)

DROP PROCEDURE IF EXISTS kettlexp.sp_adduser_v2;
CREATE PROCEDURE kettlexp.`sp_adduser_v2`( IN userid int,v_name varchar(100))
BEGIN
  DELETE FROM tb_user WHERE id = userid AND name = v_name;
  INSERT INTO tb_user(id,name) VALUES(userid,v_name);
  commit;
END;

Step7:拖并配置DB存储过程组件。

Step8:SHIFT连接组件设置变量DB存储过程

Step9:点击运行该转换

Step10:数据库查看结果

完整流程示意:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

ShenLiang2025

您的鼓励是我创作的最大动力

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

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

打赏作者

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

抵扣说明:

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

余额充值