Skip to main content

ExecuteSQL

通过配置数据库连接池并指定SQL语句来查询出结果,其输出结果为Avro格式,由于带有数据库表的元数据信息。

示例

此处以Oracle为示例,说明该组件的使用。

Oracle连接信息

  • IP: 172.18.5.13
  • Port: 1521
  • User: orchsym
  • Password: orchsym1234
  • Service Name: dev
  • Driver Jar: ojdbc8.jar
    • JDBC URL: jdbc:oracle:thin:@172.18.5.13:1521:dev

配置

流程只是简单的查询并将记录写入日志。

首先, ExecuteSQL中首先需要创建数据库连接池,然后配置查询SQL语句,其他设置默认:

并配置数据库连接池参数:

其中:

  1. 驱动包的路径必须是有效的存在的路径,且该路径为与产品同机器的绝对路径。
  2. 用户名密码,设置后,被标注为“敏感值设置”,实际上为了安全,是不会显示字面值的,且已经设置上。

配置好数据库连接池保存后,则需要“启用”连接池服务。

最后,由于是测试,最好将ExecuteSQL组件“调度”下的“运行安排”设置大些,比如“1 day”, 要不然会重复查询多次,然后就可以启动组件了。

结果

查询出来的结果为Avro格式:

如果修改查看模式为“格式化”,则可看到每条数据:

说明

针对其他数据库,也类似,提供驱动包和- JDBC URL以及访问用户名密码来创建数据库连接池。

同时需注意连接池用户的权限问题,否则SQL查询时可能报诸如“没有表或试图”的错误。