表结构1 :
CREATE TABLE date_test ( whole_date varchar(255) NOT NULL, simple_date int4 NULL, cn_date varchar(255) NULL, year_month varchar(255) NULL, year_week varchar(255) NULL )
表结构2 :
CREATE TABLE date_test ( whole_date date NOT NULL, simple_date int4 NULL, cn_date varchar(255) NULL, year_month varchar(255) NULL, year_week varchar(255) NULL )
问题描述:
以上两个表差异:whole_date 字段类型不同
whole_date 字段类型是:测试环境是:varchar(255) ,生产环境是date, debezium 采集测试环境date_test ,且source 字段类型是 int , 打印输出发现 whole_date 输出是null ,表关联没有数据且代码已经上生产跑过没有问题
原因:
whole_date 已经默认是 date 类型, debezium 会转换为 int 或 bigint 类型, 因为字段类型不匹配转换为 null
解决:pg 表字段类型修改为 date ,且重新采集此表数据,问题解决



