DBAtlas · Atlas de operações de banco de dados

1215: Cannot add foreign key constraint

MySQL

O que significa?

A constraint de foreign key que está sendo definida não pode ser criada; o MySQL não consegue adicionar a constraint.

Por que acontece?

Incompatibilidade de tipo de dado/comprimento/sinal (signed-unsigned) ou de character set/collation entre a coluna filha e a referenciada, ausência de índice/PRIMARY KEY adequado na coluna referenciada, tabelas usando storage engines diferentes (uma é MyISAM) ou a tabela referenciada ainda não existe.

Como resolver

Certifique-se de que os tipos das colunas dos dois lados são EXATAMENTE iguais (por exemplo, ambos INT UNSIGNED). Verifique se a coluna referenciada é suportada por um índice (geralmente PRIMARY KEY ou UNIQUE). Certifique-se de que ambas as tabelas são InnoDB. Use o mesmo charset/collation para chaves string. Para detalhes: SHOW ENGINE INNODB STATUS (LATEST FOREIGN KEY ERROR).

Abrir no DBAtlas →

Mais entradas deste banco