MySQL添加外键失败ERROR 1452的解决

今天在学习数据库添加外键的时候,遇到了问题
我先创建了两个表  orders 和 order_items  ,存储引擎都是InnoDB,
且都有orderid这个属性(类型完全一样),
但是我使用命令
 
[sql]
alter table order_items   
add foreign key (orderid) references orders (orderid); 

添加外键的时候 出现了错误
[sql]
ERROR 1452 : Cannot add or update a child row: a foreign key constraint fails  
 
最后才发现,原来是我的order_items表中已经存在了数据,且orderid这个属性和orders中的不对应,因此如果添加外键,就会导致错误
此时解决的办法不外乎两个:
 
1.删除数据,再添加外键
2.在orders中添加对应的项,再添加外键.

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/24742969/viewspace-2120667/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/24742969/viewspace-2120667/

你可能感兴趣的:(MySQL添加外键失败ERROR 1452的解决)