Kettle循环导出整库数据

Kettle导出整库数据存入CSV文本中(导出其他文件格式同理)

一、流程图

在这里插入图片描述

二、执行流程

在这里插入图片描述

三、结果图

  1. 程序执行完后Excel文件存在配置的目录下,名字以数据库表名命名。
    在这里插入图片描述
  2. 下图是 aa 模型表数据和 aa csv数据。
    在这里插入图片描述
  3. 下图是 dddd 模型表数据和 dddd csv数据。
    在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

可以看出数据以想要的格式导出,后续我们来依次介绍每个组件。

四、各个组件解析

一、主作业:将获取表明和子作业的路径配置(并在子作业高级选项中选择对红框内容勾选✔)

在这里插入图片描述
在这里插入图片描述

二、获取表名:通过表输入将需要导出至CSV文件的表查询出来,连接组件至 “复制记录到结果” 上。
# 通过MySQL的系统表进行查询该数据库的表名称;
SELECT TABLE_NAME FROM information_schema.TABLES WHERE TABLE_NAME IN ('aa','dddd')

在这里插入图片描述

三、子作业:将设置变量和写入到CSV组件的路径配置完成

在这里插入图片描述

四、设置变量:接收“第二步骤”的表名并设置为JAVA变量

在这里插入图片描述

五、写入到csv

在这里插入图片描述

  1. 表输入:连接数据库。
    表名用 ${变量名} 来替代。
    勾选红框中 替换SQL语句里的变量
    在这里插入图片描述
  2. 文本文件输出 组件配置:
    1. 选择路径并将文件名称以变量 ${变量名}.csv 的方式存储。
    2. 浏览路径的时候保存类型应选择 “逗号分割值的文件”
    3. 内容中分隔符选择为 (英文逗号);若需要压缩成zip文件则在 压缩选择即可。
    4. 由于数据库中每张表的字段不同,所以导出 csv文件 的时候不需要获取字段。

在这里插入图片描述在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

相关内容

Kettle实现循环功能!!!
https://blog.csdn.net/weixin_43932609/article/details/119608497
ETL工具kettle的计算方式
https://blog.csdn.net/weixin_43932609/article/details/110371110
Kettle工具中Rest client组件的用法!!
https://blog.csdn.net/weixin_43932609/article/details/109988783
ETL工具kettle的Excel合并操作
https://blog.csdn.net/weixin_43932609/article/details/109326043
ETL工具kettle的插入更新操作
https://blog.csdn.net/weixin_43932609/article/details/109065366
ETL工具Kettle的发送邮件功能:
https://blog.csdn.net/weixin_43932609/article/details/108766325
ETL工具Kettle的列转行组件:
https://blog.csdn.net/weixin_43932609/article/details/108795244
ETL工具Kettle性能优化:
https://blog.csdn.net/weixin_43932609/article/details/108749304

=========================================================

人生得意须尽欢,莫使金樽空对月!
__一个热爱说唱的程序员。
今日份推荐音乐:王以太《三思而后行》

=========================================================

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 4
    评论
Kettle循环抽取表数据的步骤如下: 1. 首先,你需要创建原始表和目标表。原始表可以是school和school1,目标表可以是school_kettle和school1_kettle。这些表需要在Kettle中提前建好。 2. 第二步是使用分页行号节点来获取分页的数值。你可以使用以下SQL语句来实现这一步骤: ``` SELECT a.rownum FROM (SELECT @rownum:= @rownum + 1 AS rownum, m.* FROM (SELECT @rownum := 0) t,`palm_clinic_payment_bill` m) a WHERE a.rownum <= ? ``` 这个SQL语句会返回分页的行号。 3. 如果你获取不到字段或者字段比较多,可以使用一个小技巧。将上一步的分页查询的SQL中的变量替换成数字1,表示查询第一页。这样你可以直接运行这个SQL语句,然后在表输出的时候获取全部的字段。这样就不用一个个选择字段了。在填写数据库字段、表字段和流字段时,记得将上一步的SQL还原。 这样,你就可以在Kettle循环抽取表数据了。希望对你有帮助!\[1\]\[2\]\[3\] #### 引用[.reference_title] - *1* [使用Kettle循环处理数据(方式一)](https://blog.csdn.net/qq_45083975/article/details/121848746)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v12^insert_chatgpt"}} ] [.reference_item] - *2* *3* [Kettle分页循环抽取全量数据,三步搞定](https://blog.csdn.net/GordoHu/article/details/129703977)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v12^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

像豆芽一样优秀

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

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

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

打赏作者

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

抵扣说明:

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

余额充值