Mysql
 sql >> Base de données >  >> RDS >> Mysql

Code d'erreur :1215. Impossible d'ajouter une contrainte de clé étrangère (clés étrangères)

Le problème le plus probable est cette ligne :

FOREIGN KEY (classLeader) REFERENCES student(studentID),

Le type de données de classLeader est VARCHAR(255). Cela doit correspondre au type de données de la colonne référencée... student.studentID . Et bien sûr, l'student table doit exister, et le studentID la colonne doit exister et le studentID la colonne doit être la CLÉ PRIMAIRE de la table des étudiants (bien que je pense que MySQL permet qu'il s'agisse d'une CLÉ UNIQUE, plutôt que d'une CLÉ PRIMAIRE, ou même d'avoir simplement un index dessus.)

Dans tous les cas, ce qui manque ici est la sortie de SHOW CREATE TABLE student;

Il y a une incompatibilité de type de données.

Le classLeader VARCHAR(255) la colonne ne peut pas être une référence de clé étrangère à studentID INT .

Les types de données des deux colonnes doivent correspondre.