Flink CDC 中Oracle cdc 字段值为null全量阶段抽取的数据中,不显示为null?[阿里云实时计算 Flink版]

Flink CDC 中Oracle cdc 字段值为null全量阶段抽取的数据中,不显示为null的字段,需要怎么处理?

「点点赞赏,手留余香」

    还没有人赞赏,快来当第一个赞赏的人吧!
=====这是一个广告位,招租中,联系qq 78315851====
2 条回复 A 作者 M 管理员
  1. 在 Flink CDC 中,如果 Oracle CDC 字段值为 NULL,在全量阶段抽取的数据中,该字段的值会显示为 null,而不是空字符串或其他默认值。因此,如果你在全量阶段抽取 Oracle CDC 数据时,看到某些字段的值为 null,那么这就是该字段的实际值。

    需要注意的是,在 Oracle 中,NULL 值表示未知或未定义的值,它与空字符串或其他默认值是不同的。如果你在 Oracle 数据库中查询一个字段为 NULL 的记录,它的返回值应该是 NULL,而不是空字符串或其他默认值。

    在 Flink CDC 中,如果 Oracle CDC 字段值为 NULL,在增量阶段抽取的数据中,该字段的值也会显示为 NULL。因此,在使用 Flink CDC 进行数据同步时,需要注意区分 NULL 值和空字符串或其他默认值。

  2. 如果在Flink CDC Oracle cdc 字段值为null全量阶段抽取的数据中,不显示为null的字段,需要对数据进行预处理。可以使用 Flink SQL 中的 COALESCE 函数将 null 替换为其他值,例如空字符串。试试看