Skip to main content

抽取数据库数据

访问路径:数据功能 -> 抽取数据库数据

功能简述

该模块提供同步关系型数据库数据到任务运行时创建的工作库中工作表的能力,支持类型如下,并包括兼容的数据库版本

  • MS SQL Server
  • Oracle
  • PostgreSQL
  • MySQL

预定义工作表

设计同步任务前,需要先按接收数据的结构来预定义工作表,工作表定义可以参考:定义工作表

定义同步任务

通过设计工具栏中的数据功能 - 抽取数据库数据功能创建一个新的同步任务。

basic

  • 数据源:为需要采集的源数据库地址。
  • 目标表:为预定义的工作表,数据将存储在该表中

query

任务执行时,将在数据源数据库中执行该脚本,并提取返回结果。该脚本支持自定义变量,可以通过变量来动态的修改查询条件,脚本语法按数据源数据库的类型来确定。例如下例,通过LastMonth自定义变量值来动态提取上一个月的销售数据:

select * from sales_orders where to_char(offer_date,'YYYY-MM')='<var:LastMonth/>'

Mapping

  • 通过勾选在同步数据前,先清空目标表功能,可以确保任务每次运行前,用于保存数据的工作表为空。需要根据实际任务执行场景来确认是否需要清空,如果该表为多个任务写入数据时,可以在第一个写入任务中勾选,其它任务则不勾选
  • 来源字段:来自数据源查询结果。如果不需要提取的字段,可以保留为空

其它任务选项

当前任务中的前置脚本,善后脚本,分别在当前数据同步前、后执行,用于对同步数据进行预处理,和同步后的再清理计算等用途。可以根据场景需求采用。