Maison >base de données >tutoriel mysql >Pourquoi est-ce que j'obtiens l'erreur de clé étrangère MySQL 1005 (errno 150) ?

Pourquoi est-ce que j'obtiens l'erreur de clé étrangère MySQL 1005 (errno 150) ?

Patricia Arquette
Patricia Arquetteoriginal
2024-12-07 10:01:20516parcourir

Why Am I Getting MySQL Foreign Key Error 1005 (errno 150)?

Comprendre l'erreur de clé étrangère MySQL 1005

Lors de la création d'une contrainte de clé étrangère, MySQL rencontre une erreur 1005 accompagnée d'un message "errno 150" . Cette erreur se produit généralement lorsque la table référencée ne dispose pas d'un index utilisable qui s'aligne sur les colonnes référencées.

Réponse à vos questions :

  1. Une instance principale peut-elle La clé sert également de clé étrangère ?
    Non, une clé primaire ne peut pas servir de clé étrangère pour la même table, car cela entraînerait en référencement circulaire.
  2. Résolution de l'erreur MySQL :
    Le message d'erreur suggère qu'il manque un index sur les colonnes référencées dans la table "dbimmmobiliCondoni". Pour résoudre ce problème, vous devez créer l'index suivant sur la table "dbimmmobiliImmobile":
CREATE INDEX idx_immobile ON dbimmobili.Immobile (ComuneImmobile, ViaImmobile, CivicoImmobile, InternoImmobile);

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn