无法添加或更新子行:外键约束失败

Posted

技术标签:

【中文标题】无法添加或更新子行:外键约束失败【英文标题】:Cannot add or update a child row: a foreign key constraint fail 【发布时间】:2020-10-04 19:39:48 【问题描述】:

请帮助我在 *** 和 Internet 上的其他网站上尝试了所有解决方案。

我创建了 2 个表 (categories) 和 (items) 并将这一行插入到类别中:

INSERT INTO categories (Name, Description, Ordering, Visibility, Allow_Comments, Allow_Ads)
VALUES ('Wheel', 'Custom', 1, 0, 0, 0)

成功插入。

然后创建外键:

ALTER TABLE items
ADD CONSTRAINT Cat_1
FOREIGN KEY(Cat_ID)
REFERENCES categories(ID)
ON UPDATE CASCADE
ON DELETE CASCADE;

成功创建。

问题是当我尝试将行插入项目时收到错误消息。

INSERT INTO items (Name, Description, Type, Color, Certified, Quantity, Date, Price)
VALUES ('Test', 'Test', 'Wheel', 'Test', 'Test', 1, NOW(), 100);

1452

尝试添加图片,但没有成功。 我已经仔细检查了这些值。

【问题讨论】:

因为你没有给它添加外键 什么意思,我已经做到了。 在你的插入查询中,你没有添加Wheel的外键 这能回答你的问题吗? Cannot add or update a child row: a foreign key constraint fails @Baracuda078 感谢您的回答,但是如何在插入查询时添加外键?我已经在子表中创建了一个自定义列。 【参考方案1】:

我发现问题可能对某人有帮助,我正在使用插件“可编辑选择”替换选择表单,并将名称插入数据库而不是值,并且由于该列是整数,因此不会将文本发布到其中.

【讨论】:

无论在什么系统中工作,都不是问题。 (它应该是。)而且这实际上是难以理解的。使用足够的单词和句子来清楚,不要将所有内容都塞进一个单词或句子中。

以上是关于无法添加或更新子行:外键约束失败的主要内容,如果未能解决你的问题,请参考以下文章

MySql 重启后:#1452 - 无法添加或更新子行:外键约束失败

无法添加或更新子行:外键约束失败

无法添加或更新子行:外键约束失败

SQLSTATE[23000]:完整性约束违规 1452 无法添加或更新子行:外键约束失败

Django“无法添加或更新子行:外键约束失败”

完整性约束违规:1452 无法添加或更新子行:外键约束失败