1 概述
1.1 版本
最早支持版本:V2.3
1.2 功能介绍
从常见的关系型数据库表中读取数据。例如:MySQL、SQLServer、Oracle、PostgreSql等
1.3 应用场景
同步数据库表数据到其他数据源。例如:简道云
1.4 消息格式
输入格式:无
输出格式:KVP
1.5 配置项说明
1.5.1 基本属性
配置项名称 | 描述 |
---|---|
数据连接 | 指定读取的数据源,需要先在 定义数据连接 模块中配置数据连接。 |
SQL来源于字段 | 如果勾选了该选项,那么查询SQL将从上一个组件的输出字段中获取 |
SQL字段 | 只有当 SQL来源于字段 选项勾选时才会生效,选取SQL来源于哪一个字段 |
SQL语句 | 手动输入的查询SQL |
全量抽取 | 该选项勾选时将读取所有SQL查询的结果集 |
最大取数 | 当 全量抽取 选项未勾选时可以配置一个最大取数限制SQL查询的结果集,默认是10000,超出的记录将被抛弃。 |
1.5.2 使用查询参数
SQL语句可以使用输入流字段或者全局参数:
使用 ${{xxx}} 引入全局参数
使用 $.xxx 引入输入流字段参数
示例:select * from table_name where id > ${{id}} and name = $.name
注意:参数只能用于sql查询参数值,不能用在其他地方,比如下面的sql就是非法的:
错误的参数使用方式:
select * from $.table_name
select * from table_name where $.id > 1
1.5.3 字段转换
在字段转换配置项中可以配置需要读取的字段,以及字段名称的映射。如下图所示:
我们把name这个字段的输出名称改成了name1,那么最终输出的消息字段将是【id,name1,age】。
2 示例
3 注意事项
1、字段转换一定要配置,否则读取到的记录都是空消息(没有字段)
2、如果数据连接定义里没有配置具体的数据库,那么在写SQL的时候就需要把数据库名带上,以MySQL为例:
上面的SQL应该写成:select * from demo.demo_person
其中的demo为数据库名,demo_person为表名