[Err] 1452-Cannot add or update a child row: a foreign key constraint fails(......)

一.错误信息

今天在学习mybatis框架,使用SQL语句建表时出现了错误。
[Err] 1452-Cannot add or update a child row: a foreign key constraint fails(......)

二.分析问题

通过查看错误信息,我们可以得到,account这张表中有个字段UID,是以user表中的id字段为foreign key(外键),我们插入语句三个值的UID(用户编号)分别为46,45,46。查看user表发现,并没有要求的id为45的数据。
user表数据:
[Err] 1452-Cannot add or update a child row: a foreign key constraint fails(......)
于是在user表中加上一条id为45的数据:
[Err] 1452-Cannot add or update a child row: a foreign key constraint fails(......)
再次执行SQL语句:
[Err] 1452-Cannot add or update a child row: a foreign key constraint fails(......)

总结[Err] 1452-Cannot add or update a child row: a foreign key constraint fails(......)

当一个表中的一个字段,以另一张表的以字段为外键,插入数据时相对应的数值必须存在。