Dépannage de l'erreur MySQL 1215 : compréhension des contraintes de clé étrangère
Lorsque vous essayez de créer une contrainte de clé étrangère dans MySQL, vous pouvez rencontrer l'erreur " Erreur 1215 : Impossible d'ajouter une contrainte de clé étrangère." Ce problème survient lorsque la relation de clé étrangère n'est pas correctement établie entre la table de référencement et la table parent.
Dans le scénario donné, vous vous êtes assuré que le moteur InnoDB est activé et que les clés primaires sont définies correctement. Cependant, le message d'erreur suggère qu'il peut y avoir une différence dans les types de données des colonnes impliquées dans la relation de clé étrangère.
Vérifiez à nouveau que les types de données des colonnes Clients_Case_Number dans la table Clients, Staff_Emp_ID dans la table Staff, Clients_Case_Number dans la table Clients_has_Staff et Staff_Emp_ID dans la table Clients_has_Staff sont identique. Faites attention à la signature (par exemple, INT vs. INT UNSIGNED). Si ces types de données ne correspondent pas, MySQL n'autorisera pas la création de la contrainte de clé étrangère.
Assurez-vous que les deux tables parentes, Clients et Staff, ont des clés primaires définies sur leurs colonnes de clé primaire (Case_Number et Emp_ID, respectivement ). Les clés primaires des tables parent doivent correspondre aux types de données de leurs colonnes de clé étrangère respectives dans la table de référencement (Clients_has_Staff).
Une fois que vous avez vérifié que les types de données et les clés primaires sont cohérents, essayez de créer le contrainte de clé étrangère à nouveau. Si l'erreur persiste, revérifiez les noms de colonnes et de tables pour vous assurer qu'ils sont correctement orthographiés et que les relations sont définies avec précision.
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!