MySQL无法使用FK约束进行INSERT

时间:2012-02-22 17:12:58

标签: php mysql foreign-keys

当我尝试插入一些数据时,我收到以下错误消息:

  

SQLSTATE [23000]:完整性约束违规:1452无法添加或   更新子行:外键约束失败   (database/UserDetails,CONSTRAINT UserDetails_ibfk_6外国人   KEY(HearAboutID)REFERENCES UserDetailsHearAboutID)ON DELETE   CASCADE ON UPDATE CASCADE)

FK关系如下:

enter image description here

我试图输入UserDetails.HearAboutID的数据出现在UserHearAbout.UserHearAboutID中......那为什么不去呢? :(

1 个答案:

答案 0 :(得分:4)

根据您发布的错误

  

FOREIGN KEY(HearAboutID)REFERENCES UserDetails(HearAboutID)ON DELETE CASCADE ON UPDATE CASCADE)

(你实际创建了一个引用同一个表和同一列的约束), 我猜你的FK约束定义是错误的(它应该是

 FOREIGN KEY (HearAboutID) REFERENCES UserHearAbout (UserHearAboutID)
ON DELETE CASCADE ON UPDATE CASCADE)