##kettle转换里面的sql脚本执行顺序
- 1:书上说sql里面的选项如果勾选了执行每一行,会按连线顺序执行。
- 2:但是勾选了“执行每一行”,前面的流里有多少条数据,sql就会执行多少次
测试图片
- 如果没勾选执行每一行,会先执行一次sql脚本,把数据库里面的 id变为0,导致第一个表输入查不到数据。
- 图片中执行结果不代表实际执行顺序。(从实际结果来看,不是按图中顺序来执行的)
- 勾选了“执行每一行”,虽然会按顺序执行,先是表输入,然后是表输出,最后是执行sql脚本。但是sql脚本会执行n(流里的记录数)次
- 如果流里面的记录数大,最好把sql脚本写在外面,避免sql脚本执行多次。
输出表设置了“提交记录数”,出错后之前提交的数据,只要设置了事物会回滚
###设置变量
前一个设置的变量会一直作用于后面的过程,知道遇到下一个设置同样的变量位置。(前提是变量的作用范围是“在根作业中有效”)
图片
之前使用的MD文件编辑器,有时候图片不正常显示,如果显示不出来,点击这里查看上述图片