长期以来,一直因为MySQL外键不起作用而被困扰。这主要是MySQL的引擎导致的。下来我就把详细的解决方法分享一下:
默认情况下,我们的MySQL都是引擎都是MyISAM,这个引擎是不支持的外键的,我们要把引擎改成InnoDB才可以正常使用外键。
步骤:
1.开启MySQL的InnoDB引擎,要不然当你使用“alter table 表名 type=InnoDB”时会提示错误。
修改MySQL的配置文件my.ini:
#default-storage-engine=INNODB ----去掉前面的“#”
skip-innodb -----注释掉这句话,在前面加“#”
2.修改表的type属性,如果你的表不是InnoDB引擎的话。
alert table 表名 type=InnoDB
3.如果外键还是没起作用,请开启外键检测。
set foreign_key_checks=1;