MySQL 关闭外键约束

嘛,开发总有手贱的时辰,比如 MySQL 有外键时,直接在数据库将值改成外键对应的表不存在的值,就会报以下的错:

1
Cannot add or update a child row: a foreign key constraint fails (`xxx`.`table-one`, CONSTRAINT `FK_Reference_1` FOREIGN KEY (`table-one-field`) REFERENCES `table-two` (`table-two-field`))

别问为什么这么做,谁晓得呢,总有犯神经的时候,如果此时一定要这么干,可以关闭 MySQL 的外键约束:

关闭

1
SET FOREIGN_KEY_CHECKS = 0;

开启

1
SET FOREIGN_KEY_CHECKS = 1;