代码之家  ›  专栏  ›  技术社区  ›  Oliver Watkins

hsqlException“完整性约束冲突:外键无父级”是什么意思?

  •  1
  • Oliver Watkins  · 技术社区  · 6 年前

    我的hsqldb中出现此错误:

    由:org.hsqldb.hsqlException:integrity约束冲突导致: 外键无父项;FK9GHQNBKBDJIGL1LN1V9DVN06O表:REVINFO

    我最初认为这意味着我在向列中添加了一个空值,但是键引用了一个可以为空的列(editorid),因此可以插入空值。

    我假设它试图添加一个在引用表中还不存在的值,我想这是有意义的。但是,这个异常并不能告诉我我要插入的实际值是什么。

    1 回复  |  直到 6 年前
        1
  •  2
  •   fredt    6 年前

    更新:您试图插入引用列中有值的行,但在中没有具有匹配值的行。 参考 列。我检查了源代码,虽然实际值被添加到要报告的项列表中,但是在构造错误字符串时它被省略。因此,当捕获sqlException时,需要依赖代码来报告该值,直到hsqldb的2.4.2版本增强了报告。