【问题标题】:What does the HsqlException "integrity constraint violation: foreign key no parent" mean?HsqlException“完整性约束违规:外键无父”是什么意思?
【发布时间】:2018-12-28 21:35:29
【问题描述】:

我的 HSQLDB 中出现此错误:

原因:org.hsqldb.HsqlException:完整性约束违规: 外键无父; FK9GHQNBKBDJIGL1LN1V9DVN06O 表:REVINFO

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

我假设它正在尝试添加引用表中尚不存在的值,我想这是有道理的。但是,异常并没有告诉我我要插入的实际值。

【问题讨论】:

    标签: hsqldb


    【解决方案1】:

    更新:您试图在引用列中插入具有值的行,但在 referenced 列中没有具有匹配值的行。我检查了源代码,虽然实际值已添加到要报告的项目列表中,但在构造错误字符串时将其省略。因此,您需要依靠您的代码在您捕获 SQLException 时报告该值,直到 HSQLDB 版本 2.4.2 增强了报告功能。

    【讨论】:

    • FK9GHQNBKBDJIGL1LN1V9DVN06O 是对另一个表的列 FK 约束。所以您是说我正在尝试将实际字符串“FK9GHQNBKBDJIGL1LN1V9DVN06O”插入列中?这是一个非常奇怪的错误!
    • 所以因为该列是 NULLABLE 和一个 FK,这意味着 NULL 没有被传入,而是一个与引用列不匹配的实际值?
    猜你喜欢
    • 1970-01-01
    • 2014-03-17
    • 2018-06-28
    • 1970-01-01
    • 2014-11-09
    • 2016-04-24
    • 2022-09-23
    • 2020-04-22
    • 1970-01-01
    相关资源
    最近更新 更多