无法添加或更新子行:外键约束失败
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 - 无法添加或更新子行:外键约束失败