kettle spoon使用变量与使用sql脚本运行组件

本文档介绍了如何在Kettle Spoon中新建转换,特别是如何使用变量和SQL脚本来操作数据库。通过实例展示了在转换过程中,如何在表输入组件中设置变量,以及如何在插入/更新组件和SQL语句运行组件中使用这些变量。同时强调了阻塞组件在控制步骤执行顺序中的重要性。
摘要由CSDN通过智能技术生成

1.新建转换

a.最终效果

新建转换
使用的数据库表 test_table 表创建语句:

CREATE TABLE `test_db`.`test_table`  (
  `varchar1` varchar(255) CHARACTER SET armscii8 COLLATE armscii8_bin NULL DEFAULT NULL,
  `varchar2` varchar(255) CHARACTER SET armscii8 COLLATE armscii8_bin NULL DEFAULT NULL,
  `varchar3` varchar(255) CHARACTER SET armscii8 COLLATE armscii8_bin NULL DEFAULT NULL,
  `varchar4` varchar(255) CHARACTER SET armscii8 COLLATE armscii8_bin NULL DEFAULT NULL,
  `datetime1` datetime NULL DEFAULT NULL,
  `datetime2` datetime NULL DEFAULT NULL,
  `date1` date NULL DEFAULT NULL,
  `date2` date NULL DEFAULT NULL,
  `import_time` datetime NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
) ENGINE = InnoDB CHARACTER SET = armscii8 COLLATE = armscii8_bin ROW_FORMAT = Dynamic;

数据库表结构

b. 空白处鼠标右键输入参数,参数名、默认值可随意命名但需符合规范
新建参数
c.各组件内容如下
表输入:
表输入
注:需勾选替换sql语句中的变量,否则不会将转换中步骤b中定义的变量转换成对应的值
插入 / 更新 2:
插入与更新
阻塞组件:
阻塞
**注:**使用阻塞组件的目的是让前面所有的步骤执行完毕再运行sql运行组件中需要运行的语句,如果不使用该组件的话,步骤的执行顺序无法控制。
sql 语句运行组件:
sql语句运行
注:需勾选执行每一行

2. 转换文件下载

新建转换,拷贝复制以下语句

<?xml version="1.0" encoding="UTF-8"?>
<transformation-steps>
<steps>
  <step>
    <name>Block this step until steps finish</name>
    <type>BlockUntilStepsFinish</type>
    <description/>
    <distribute>Y</distribute>
    <custom_distribution/>
    <copies>1</copies>
    <partitioning>
      <method>none</method>
      <schema_name/>
    </partitioning>
    <steps>
      <step>
        <name>表输入</name>
        <CopyNr>0</CopyNr>
        </step
  • 7
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

In cerca di

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

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

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

打赏作者

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

抵扣说明:

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

余额充值