Error 1215 de MySQL: "No se puede agregar una restricción de clave externa"
Al intentar crear una restricción de clave externa en MySQL, es crucial asegúrese de que tanto el campo referenciado como el campo de clave externa cumplan con requisitos específicos. A continuación se explica cómo diagnosticar y resolver este error:
Consistencia del motor
Tipo de datos y longitud
Intercalación
Singularidad
Manejo de nulos
Síntomas adicionales
Si el error persiste, ejecute el comando SHOW ENGINE INNODB STATUS; para revelar detalles más específicos.
Declaración incorrecta
La declaración SQL proporcionada crea una tabla llamada "curso" con una restricción de clave externa que hace referencia a la tabla "departamento" en la campo "nombre_depto". Sin embargo, esta afirmación es incorrecta porque carece de la especificación del tipo de datos para el campo "dept_name". Para rectificar esto, la declaración debe modificarse de la siguiente manera:
create table course (
course_id varchar(7),
title varchar(50),
dept_name varchar(20),
credits numeric(2,0),
primary key(course_id),
foreign key (dept_name) references department(dept_name)
);
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3