mysql1452错误
Posted Sanding
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql1452错误相关的知识,希望对你有一定的参考价值。
admin表中有字段admin_name和admin_realname。notice表中有字段admin_name。之前,notice表中admin_name的外键是admin表的admin_name,现在想改成admin_realname,数据类型和字段长度都一样,但却提示1452错误,如下图所示。
然后百度了一下,得到了一个靠谱的答案:
这是因为表设置了外键约束,而你试图插入一条外键字段所在表纪录不存在的一个值,就会报1452错。
比如a、b两表,a表外键id值来自b表的ID。当你在a表中插入一条纪录时,id字段用了不在b表ID值范围内的值,就会报此错。
然后我恍然大悟,因为notice表里面有两条记录,改了外键,但表里面已有记录的值不在admin_realname的取值范围内,所以就报错了。我更改了记录内容,再修改外键就成功了。
Sanding原创,转载请标注,thank you~
以上是关于mysql1452错误的主要内容,如果未能解决你的问题,请参考以下文章
MySQL 中的外键约束错误 1452 - Magento 导入
MySQL 外键约束 - 错误 1452 - 无法添加或更新子行