开发者社区 > 大数据与机器学习 > 实时计算 Flink > 正文

Flink CDC如果有外键关联,主键还是自定义的,和另一张表有关联,那张表是不是也得要开启cdc?

Flink CDC如果有外键关联,主键还是自定义的,和另一张表有关联,那张表是不是也得要开启cdc?Caused by: java.lang.IllegalArgumentException: The column "AdminCode" is referenced as PRIMARY KEY, but a matching column is not defined in table "tx.dbo.MS_tkBa"!还有其他可能吗,大佬们,如果可以的话,请指教

展开
收起
真的很搞笑 2023-12-20 08:26:00 42 0
2 条回答
写回答
取消 提交回答
  • 关于 Flink CDC 中的外键关联问题,如果你的主键是自定义的并且与其他表有关联,那么通常需要确保相关表也开启了 CDC。这是因为 Flink CDC 在处理数据变更时需要维护数据的一致性和完整性,包括外键约束。如果你遇到 "The column 'AdminCode' is referenced as PRIMARY KEY, but a matching column is not defined in table 'tx.dbo.MS_tkBa'!" 这样的错误,这可能是因为你的主键引用了另一个表中的列(如 'AdminCode'),但是该列在目标表 'tx.dbo.MS_tkBa' 中不存在或者定义不正确。为了解决这个问题,你可以尝试以下方法:

    • 检查你的表结构和外键定义,确保它们在源和目标表中都是一致的。
    • 确保相关的表都已经开启了 CDC,并且 Flink CDC 配置正确地包含了这些表的变更数据。
    2023-12-20 16:32:02
    赞同 展开评论 打赏
  • 下游没必要搞外键,删掉外键重建表,可能是其他同步表的外键,去掉,自己下游建立,去掉就好了 ,此回答整理自钉群“Flink CDC 社区”

    2023-12-20 09:40:56
    赞同 展开评论 打赏

实时计算Flink版是阿里云提供的全托管Serverless Flink云服务,基于 Apache Flink 构建的企业级、高性能实时大数据处理系统。提供全托管版 Flink 集群和引擎,提高作业开发运维效率。

相关产品

  • 实时计算 Flink版
  • 相关电子书

    更多
    Flink CDC Meetup PPT - 龚中强 立即下载
    Flink CDC Meetup PPT - 王赫 立即下载
    Flink CDC Meetup PPT - 覃立辉 立即下载