kettle从入门到精通 第六十四课 ETL之kettle kettle中执行SQL脚本步骤,使用需当心
1.kettle从入门到精通 第五十一课 ETL之kettle Avro input2.kettle从入门到精通 第五十二课 ETL之kettle Avro output3.kettle从入门到精通 第五十三课 ETL之kettle MQTT/RabbitMQ producer 实战4.kettle从入门到精通 第五十三课 ETL之kettle MQTT/RabbitMQ consumer实战5.Kettle调优教程(推荐收藏)6.kettle从入门到精通 第五十五课 ETL之kettle Excel输入7.kettle从入门到精通 第五十六课 ETL之kettle Microsoft Excel Output8.kettle从入门到精通 第五十八课 ETL之kettle HTTP post使用教程9.kettle从入门到精通 第五十九课 ETL之kettle 邮件发送多个附件,使用正则轻松解决10.kettle从入门到精通 第六十课 ETL之kettle for循环处理每条数据,so easy!11.kettle从入门到精通 第六十三课 ETL之kettle kettle调用python脚本的两种方法
12.kettle从入门到精通 第六十四课 ETL之kettle kettle中执行SQL脚本步骤,使用需当心
13.kettle从入门到精通 第六十五课 ETL之kettle 执行动态SQL语句,轻松实现全量&增量数据同步14.kettle从入门到精通 第六十六课 ETL之kettle kettle阻塞教程,轻松获取最后一行数据,so easy15.kettle从入门到精通 第六十七课 ETL之kettle 再谈kettle阻塞,阻塞多个分支的多个步骤16.kettle从入门到精通 第六十八课 ETL之kettle kettle随机数生成的一些方案17.kettle从入门到精通 第六十九课 ETL之kettle kettle cdc mysql,轻松实现实时增量同步18.kettle从入门到精通 第七十课 ETL之kettle kettle数据校验,脏数据清洗轻松拿捏19.kettle从入门到精通 第七十一课 ETL之kettle 再谈http post,轻松掌握body中传递json参数20.kettle从入门到精通 第七十二课 ETL之kettle 三谈http post(含文件上传),彻底掌握参数传递21.kettle从入门到精通 第七十三课 ETL之kettle kettle调用http分页接口教程22.kettle从入门到精通 第七十四课 ETL之kettle kettle调用https接口教程,忽略SSL校验23.kettle从入门到精通 第七十五课 ETL之kettle血缘,数据血缘24.kettle从入门到精通 第七十六课 ETL之kettle kettle连接hive教程25.kettle从入门到精通 第七十七课 ETL之kettle kettle执行存储过程,接收数据集26.kettle从入门到精通 第七十八课 ETL之kettle kettle将文件写入数据库BLOB字段27.kettle从入门到精通 第七十九课 ETL之kettle kettle读取数据库BLOB字段转换为文件28.kettle从入门到精通 第八十课 ETL之kettle kettle中的json对象字段写入postgresql中的json字段29.kettle从入门到精通 第八十一课 ETL之kettle kettle中的json对象字段写入postgresql中的json字段正确姿势30.kettle从入门到精通 第八十二课 ETL之kettle kettle中的【阻塞数据直到步骤都完成】使用教程31.kettle从入门到精通 第八十三课 ETL之kettle kettle调用python且接收返回值32.kettle从入门到精通 第八十四课 ETL之kettle kettle中Get data from XML使用实战教程33.kettle从入门到精通 第八十五课 ETL之kettle kettle中javascript步骤调用外部javascript/js文件34.kettle从入门到精通 第八十六课 ETL之kettle kettle调用https接口忽略SSL校验35.kettle从入门到精通 第八十七课 ETL之kettle kettle文件上传36.kettle从入门到精通 第八十八课 ETL之kettle kettle连接sqlserver彻底搞明白37.kettle从入门到精通 第八十九课 ETL之kettle kettle jms activemq使用教程38.ETL之kettle 医疗行业高级陪伴群 第一课39.ETL之kettle 专业陪伴群,1元开启kettle精进之旅40.ETL之kettle版本安装包免费下载地址41.kettle从入门到精通 第九十二课 ETL之kettle 使用Kettle的Carte对外发布读写接口42.kettle调度管理系统XXK-PDI,kettle调度好帮手43.kettle插件-自定义函数-数据脱敏44.kettle插件-git/svn版本管理插件45.kettle插件-高性能插入更新插件Upsert1、群里有不定时会有同学反馈执行SQL脚本步骤使用有问题,那么咱们今天一起来学习下该步骤。trans中的执行SQL脚本有两方面功能,使用时需小心,不然很容易踩坑。
官方定义:
翻译:
您可以使用此步骤执行 SQL 脚本,可以选择在转换的初始化阶段执行一次,或者针对步骤接收的每一行输入执行一次。第二个选项可用于在 SQL 脚本中使用参数。
2、执行 SQL 脚本的默认功能是只在转换的初始化阶段执行一次,这一点非常容易忽视。示例如下图所示:
1)生成记录步骤生成两条数据。
2)写日志-one记录日志。
3)执行SQL脚本执行简单的查询语句:select now() from dual;
4)写日志two记录日志。
3、执行SQL脚本中的执行每一行不进行勾选,表示此步骤只在初始化阶段执行一次。如下图所示:
根据上图日志可以清楚的看到写日志two步骤只执行了一次,因为它的前置步骤执行SQL脚本也只执行了一次。
另外如果在写日志two中添加前置步骤字段name,流程会出现错误无法正常运行。这是因为执行SQL脚本步骤只在初始化时执行一次,此时流中没有字段name导致的。
看过源码的应该了解执行SQL脚本步骤肯定是根据是否执行每一行参数来决定是在init还是在processRow方法中执行。
4、执行SQL脚本中的执行每一行勾选,表示对步骤接收的每一行输入执行一次。如下图所示:
上图可以清晰的看到写日志two可执行了两次,那是因为执行SQL脚本也执行了两次,同时前置步骤的中的name字段也可以正常打印了。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?