Když se zobrazí tato vágní chybová zpráva, můžete zjistit konkrétnější chybu spuštěním
SHOW ENGINE INNODB STATUS;
Nejčastějšími důvody jsou, že při vytváření cizího klíče se musí pole s odkazem i pole cizího klíče shodovat:
- Motor by měl být stejný např. InnoDB
- Datový typ by měly být stejné a se stejnou délkou.
např. VARCHAR(20) nebo INT(10) UNSIGNED - Řazení by mělo být stejné. např. utf8
- Unikátní - Cizí klíč by měl odkazovat na pole, které je jedinečné (obvykle soukromé) v referenční tabulce.
Další příčinou této chyby je:
Definovali jste podmínku SET NULL, ačkoli některé sloupce jsou definovány jako NOT NULL.