【问题标题】:ERROR #1452: Cannot add or update a child row: a foreign key constraint fails [duplicate]错误 #1452:无法添加或更新子行:外键约束失败 [重复]
【发布时间】:2014-01-06 04:12:09
【问题描述】:

我正在尝试为在线购物网页设置一个简单的数据库。但是我的数据库有问题。

因此,在我的 ERD 图中,我已将类别表链接到我的 main_course 表,因为每个主菜都有一个类别,例如日本料理或意大利料理等。

我已经将我的 sql 从此 ERD 导出到我的数据库,但是当我插入一条记录时,它会显示:

#1452 - 无法添加或更新子行:外键约束失败 (fyp.main_course, CONSTRAINT fk_main_course_category1 FOREIGN KEY (category_id) REFERENCES category (category_id ) ON DELETE NO ACTION ON UPDATE NO ACTION)

我似乎无法弄清楚。有人帮忙吗?

【问题讨论】:

    标签: mysql sql mysql-error-1452


    【解决方案1】:

    您尝试在main_course 中插入一条记录,但您尝试插入的category_idcategory 中不存在。您需要先将其插入其中。

    【讨论】:

      【解决方案2】:

      在您的数据库中创建此父子表时,child create table 语句引用父表字段category_id 来建立约束。而且,就像在将数据插入父表之前一样,您尝试将数据插入到子表中,DBMS 限制您插入。先向父表插入数据,再向子表插入数据。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2014-10-23
        • 2017-03-06
        • 2014-05-10
        • 2015-02-04
        • 2013-06-11
        • 2019-03-29
        • 2018-05-14
        • 2013-05-11
        相关资源
        最近更新 更多