
第1部分:

联合查询/更新步骤是将输入流中的行集数据与数据库中的数据通过关联字段查询出来后,再对“代理关键字”中的值进行相应更新,再输出至流中。
第2部分:

源代码中有误的点:
1.数据库查询

类型要设置为String
2.数据库连接2--->数据库查询4,数据库连接2--->分组

应该是复制形式,不应该是分发形式

3.所以导致源代码最终的运行结果不对:
源代码中的结果是:

正确的最终运行结果:

跟表film_actor中的数量是一致的:

书中有误的点:
P360页:图8-168

SQL语句有误:应改为:
select actor_id
from film_actor
where film_id = ?
其他:
NVL(E1, E2)的功能为:如果E1为NULL,则函数返回E2,否则返回E1本身
帮助文档:
本文探讨了数据库联合查询/更新过程中出现的问题,包括数据库查询类型设置错误、数据流复制形式不当等,导致的运行结果不正确。书中图8-168的SQL语句也存在错误,应修正为:select actor_id from film_actor where film_id=?。NVL函数的解释是如果E1为空,则返回E2,否则返回E1。提供了CKettle的联合查询/更新操作帮助文档链接以供参考。
1328

被折叠的 条评论
为什么被折叠?



