sql >> Base de Datos >  >> RDS >> Mysql

Código de error:1215. No se puede agregar una restricción de clave externa (claves externas)

El problema más probable es esta línea:

FOREIGN KEY (classLeader) REFERENCES student(studentID),

El tipo de datos de classLeader es VARCHAR(255). Tiene que coincidir con el tipo de datos de la columna referenciada... student.studentID . Y por supuesto, el student la tabla tiene que existir, y el studentID la columna tiene que existir, y el studentID la columna debe ser la CLAVE PRINCIPAL de la tabla de estudiantes (aunque creo que MySQL permite que sea una CLAVE ÚNICA, en lugar de una CLAVE PRINCIPAL, o incluso que solo tenga un índice).

En cualquier caso, lo que falta aquí es el resultado de SHOW CREATE TABLE student;

Hay una discrepancia en el tipo de datos.

El classLeader VARCHAR(255) la columna no puede ser una referencia de clave externa a studentID INT .

Los tipos de datos de las dos columnas deben coincidir.