我们通常导入数据脚本的时候会遇到如下错误:
1451 -Cannot delete or update a parent row: a foreign key constraint fails (...)
这是因为MySQL中设置了foreign key关联,造成无法更新插入或删除数据。可以通过设置FOREIGN_KEY_CHECKS变量来避免这种情况。
首先登录mysql,禁用外键约束.
mysql> SET FOREIGN_KEY_CHECKS=0;
然后执行sql;
执行完sql操作之后,再启用外键约束。
mysql> SET FOREIGN_KEY_CHECKS=1;
搞定。
如果要查看当前外键约束状态,可以执行如下命令
SELECT @@FOREIGN_KEY_CHECKS;