MySql导入.sql文件时外键报错
通过Navicat for MySQL或者SQLyog等数据库操作工具导出.sql文件时,会发现再次导入的时候会报错:
Error Code: 1217 - Cannot delete or update a parent row: a foreign key constraint fails
Error Code: 1215 - Cannot add foreign key constraint
诸如此类与外键相关的错误,这个错误不是导入的原因,而是导出数据发生的错误,导出数据如果涉及表内涉及外键关系的表,会使Mysql进行关系检查,如果导入子表检查外键如果检查不到,就会报错。
解决此问题,需要关闭关系检查 FOREIGN_KEY_CHECKS=0 ,在导入的sql文件开头加上
/*!40014 SET @[email protected]@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
或者在导出数据表的时候勾选此项,也可以解决。