查看“输入输出”的源代码
←
输入输出
跳到导航
跳到搜索
因为以下原因,您没有权限编辑本页:
您请求的操作仅限属于该用户组的用户执行:
用户
您可以查看和复制此页面的源代码。
插入更新 插入更新,顾名思义,包括插入和更新两种情况。 我们需要先设置一个条件,符合条件时,进行更新操作;否则,进行插入操作。常见的条件就是判断表中的 ID 和流(上一个步骤的结果,可以理解为内存)中的 ID 是否相等,相等则更新;不等则插入。 我们再来回顾下上一篇文章中的例子。 整体流程为: 表输入的设置及预览: 插入更新的设置: 运行结果(user_copy 表数据): 运行后,user 表的数据被同步到 user_copy 表中,并且不管运行多少次,数据始终是那么多。 这就是插入更新的特点,ID 一样时,只会进行更新,不会再次插入。 表输出 表输出,就是单纯地将数据输出到另一个表。 我们来看这个例子。 整体流程为: 表输入和上面的例子一致。 表输出的设置: 运行结果(user_copy 表数据): 我们可以看到,运行结果和插入更新的一致。但是当我们第二次运行后,kettle 就会报错,说主键已经存在。 这就表示表输出只能输出一次,如果目标表中已经存在相应的主键,则不会进行更新,会报错。 如果我们修改下表输出的设置,我们来指定下输出字段: 运行结果(user_copy 表数据): 我们可以看到,运行后 ID 由数据库自动生成,并且可以运行多次不报错,数据库也会重复插入数据。 因此表输出只是单纯的输出操作。 执行 SQL 脚本 执行 SQL 脚本,就是可以自定义一条 SQL 来执行。 我们来看这个例子。 整体流程为: 表输入和上面的例子一致。 执行 SQL 脚本的设置: 运行结果(user_copy 表数据): 我们可以看到,每取出一条数据,就执行了一次 SQL ,将数据插入目标表。运行多次后,就会插入多次数据。 执行 SQL 脚本比较灵活,我们可以用来处理较为复杂的 SQL 。 总结 插入更新、表输出、执行 SQL 脚本是比较常见的输出方式。 插入更新由于可以更新数据,用的比较多。 表输出,容易插入重复数据,请慎用。 执行 SQL 脚本则比较灵活,比如我们可以用它来保存日志、错误信息等。
返回至“
输入输出
”。
导航菜单
个人工具
登录
名字空间
页面
讨论
变体
视图
阅读
查看源代码
查看历史
更多
搜索
导航
-==扬==-
-==帆==-
-==起==-
-==航==-
最近更改
随机页面
MediaWiki帮助
工具
链入页面
相关更改
特殊页面
页面信息