我使用 phpMyAdmin 导出数据,但是当我导入数据时出现此错误:
#1452 - 无法添加或更新子行:外键约束失败
我可以相应地设置数据,然后我没有收到错误。但是有没有更好的方法来做到这一点?比如禁用 phpMyAdmin 中的某些选项或向 SQL 添加一些查询?
我使用 phpMyAdmin 导出数据,但是当我导入数据时出现此错误:
#1452 - 无法添加或更新子行:外键约束失败
我可以相应地设置数据,然后我没有收到错误。但是有没有更好的方法来做到这一点?比如禁用 phpMyAdmin 中的某些选项或向 SQL 添加一些查询?
问题是 pma 不关心插入行的顺序。所以它发生了一个表行插入了一个 FK,其中 FK 行尚未导入。
要解决此问题,请Disable Foreign Key Checks
在从 PhpMyadmin 导出时使用该复选框。或者自己设置:
SET FOREIGN_KEY_CHECKS=0;
最后:
SET FOREIGN_KEY_CHECKS=1;
MySQL FK DocCannot add or update a child row: a foreign key constraint fails
中引用了该错误 ( )
要在 2 个表之间添加引用,条件必须适合现有数据。
这意味着如果你说then的table1.id = table2.id
所有 id必须匹配在一起。table1
table2
要解决这个问题,您必须消除或修复那些不匹配的行。
例子:
table1.id | table2.fk
1 | 1 ok
2 | null error
3 | 4 error if id 4 is not in table1