Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

ON DELETE CASCADE não funciona no MySQL


O mecanismo de armazenamento MyISAM não oferece suporte a restrições de chave estrangeira. A restrição é analisada, mas ignorada silenciosamente.

Para corrigir seu problema, use o mecanismo InnoDB (para ambas as tabelas).
CREATE TABLE ( ... ) ENGINE = InnoDB ... ;

Em vez de descartar suas tabelas e recriá-las, você também pode alterar o mecanismo de armazenamento:
ALTER TABLE myDB.app_info ENGINE = InnoDB;
ALTER TABLE myDB.tab_info ENGINE = InnoDB;

Depois de alterar o mecanismo, você precisará adicionar a restrição de chave estrangeira novamente.