"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Erro MySQL 150 e 1005: Por que não consigo criar relacionamentos de chave estrangeira?

Erro MySQL 150 e 1005: Por que não consigo criar relacionamentos de chave estrangeira?

Publicado em 2024-12-21
Navegar:159

MySQL Error 150 & 1005: Why Can\'t I Create Foreign Key Relationships?

MySql Foreign Key Error 150: A Puzzling Enigma

Ao tentar criar as tabelas "foo" e "bar" com relações de chave estrangeira , você encontra o erro 1005 (HY000) com referência ao erro 150. Esse erro pode ser frustrante, deixando você perplexo quanto à raiz causa.

De acordo com a documentação do MySQL sobre FOREIGN KEY Constraints, o problema surge ao recriar uma tabela eliminada que possui referências de chave estrangeira. A tabela deve estar em conformidade com as restrições de chave estrangeira, tendo nomes e tipos de colunas correspondentes, bem como índices nas chaves referenciadas. Se essas condições não forem atendidas, o MySQL retornará o erro 1005, com um erro subjacente 150.

É provável que seu erro seja devido ao fato de que a tabela "foo" não está definida como uma tabela InnoDB. A documentação do MySQL afirma explicitamente que ambas as tabelas devem ser tabelas InnoDB e não temporárias.

Modificando a consulta de criação de tabela "foo" para especificar o mecanismo InnoDB:

mysql> CREATE TABLE foo(id INT PRIMARY KEY) ENGINE=InnoDB;

Você deve ser capaz de criar com sucesso a tabela "bar" com a restrição de chave estrangeira, resolvendo o erro 150.

Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3