Maison >base de données >tutoriel mysql >Pourquoi est-ce que j'obtiens l'erreur MySQL 1215 : impossible d'ajouter une contrainte de clé étrangère ?

Pourquoi est-ce que j'obtiens l'erreur MySQL 1215 : impossible d'ajouter une contrainte de clé étrangère ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-12-28 04:37:10200parcourir

Why Am I Getting MySQL Error 1215: Cannot Add Foreign Key Constraint?

Impossible d'ajouter une clé étrangère : erreur MySQL 1215

Lors d'une tentative de conception d'un nouveau schéma de base de données, un utilisateur a rencontré l'erreur MySQL "Erreur 1215 : impossible d'ajouter une clé étrangère contrainte clé." Ils ont déjà configuré le moteur de base de données sur InnoDB et vérifié que les clés désignées comme clés étrangères sont des clés primaires dans leurs tables respectives.

Le problème peut provenir d'une différence de types de données entre les colonnes de clé étrangère dans Clients_has_Staff et les colonnes de clé primaire correspondantes dans les tables parentes (Clients et Personnel).

Possible Solution :

L'utilisateur doit vérifier si les colonnes suivantes ont le même type de données dans les trois tableaux :

  • Clients_has_Staff.Clients_Case_Number
  • Clients.Case_ Numéro
  • Clients_has_Staff.Staff_Emp_ID
  • Staff.Emp_ID

Pour Par exemple, si les colonnes de la table parent sont INT UNSIGNED, les colonnes de clé étrangère dans Clients_has_Staff doivent également être INT UNSIGNED. Si les types de données ne correspondent pas, la contrainte de clé étrangère ne pourra pas être ajoutée avec succès.

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