【开发问题】flink-cdc不用数据库之间的,不同类型的转化

不同的数据库之期间数据类型转化

问题来源与原因

我一开始是flink-cdc,oracle2Mysql,sql

我一开始直接用的oracle【date】类型,mysql【date】类型,sql的校验通过了,但是真正操作数据的时候报错,告诉我oracle的数据格式的日期数据,不可以直接插入到mysql格式的日期数据,说白了就是数据格式不一致导致的

解决过程,思路错误,导致各种错误

错误思路是什么

我想的是既然格式不对,就自己手动把格式转一下,然后变成mysql认可的格式就好了,这之间,报了很多错误,又是方法不对,又是,方法参数类型不对。反正这个路其实是错误的

错误方式1:

错误方式2:

错误方式3:

各种转化错误

正确解决方式,找官网对应的链接器,数据转化

连接器jdbc的地址

MySQL type Oracle type PostgreSQL type SQL Server type Flink SQL type
TINYINT TINYINT TINYINT
SMALLINT TINYINT UNSIGNED SMALLINT INT2 SMALLSERIAL SERIAL2 SMALLINT SMALLINT
INT MEDIUMINT SMALLINT UNSIGNED INTEGER SERIAL INT INT
BIGINT INT UNSIGNED BIGINT INT UNSIGNED BIGINT BIGINT
BIGINT UNSIGNED DECIMAL(20, 0)
BIGINT BIGINT BIGINT
FLOAT BINARY_FLOAT REAL FLOAT4 REAL FLOAT
DOUBLE DOUBLE PRECISION BINARY_DOUBLE FLOAT8 DOUBLE PRECISION FLOAT DOUBLE
NUMERIC(p, s) DECIMAL(p, s) SMALLINT FLOAT(s) DOUBLE PRECISION REAL NUMBER(p, s) NUMERIC(p, s) DECIMAL(p, s) NUMERIC(p, s) DECIMAL(p, s) DECIMAL(p, s)
BOOLEAN TINYINT(1) BOOLEAN BIT BOOLEAN
DATE DATE DATE DATE DATE
TIME § DATE TIME § WITHOUT TIMEZONE TIME(0) TIME § WITHOUT TIMEZONE
DATETIME § TIMESTAMP § WITHOUT TIMEZONE TIMESTAMP § WITHOUT TIMEZONE DATETIME DATETIME2 TIMESTAMP § WITHOUT TIMEZONE
CHAR(n) VARCHAR(n) TEXT CHAR(n) VARCHAR(n) CLOB CHAR(n) CHARACTER(n) VARCHAR(n) CHARACTER VARYING(n) TEXT CHAR(n) NCHAR(n) VARCHAR(n) NVARCHAR(n) TEXT NTEXT STRING
BINARY VARBINARY BLOB RAW(s) BLOB BYTEA BINARY(n) VARBINARY(n) BYTES
ARRAY ARRAY
相关推荐
长不胖的路人甲5 分钟前
Redis 缓存的数据持久化方案讲解
数据库·redis·缓存
Mark0802036 分钟前
不同AI工具在盯盘、财报整理与复盘记录中的适用场景分析
大数据·人工智能
长不胖的路人甲15 分钟前
Redis 单线程为什么速度很快
数据库·redis·缓存
韩楚风20 分钟前
【参天引擎】Cantian 服务端框架全景解析:进程架构、模块组成与交互关系
数据库·mysql·架构·cantian
Listen·Rain29 分钟前
数据库流式查询
java·数据库
大爱一家盟35 分钟前
告别卡点BGM同质化 2026原创卡点音乐素材下载网站 TOP5 推荐
大数据·前端·人工智能
雨辰AI1 小时前
生产级实战:人大金仓 V9 标准化运维手册(日常巡检 + 监控告警 + 应急处置)
java·运维·数据库·后端
深盾科技_Virbox1 小时前
深盾科技·Virbox产品体系全景解读:软件安全如何从加密锁走向全生命周期
java·大数据·算法·安全·软件需求
阿拉斯攀登2 小时前
向量数据库选型:Milvus vs Chroma vs Elasticsearch
数据库·elasticsearch·milvus·知识库·rag·个人知识库