MySQL - problema llaves foraneas

 
Vista:
Imágen de perfil de enrique
Val: 23
Ha aumentado su posición en 3 puestos en MySQL (en relación al último mes)
Gráfica de MySQL

problema llaves foraneas

Publicado por enrique (10 intervenciones) el 20/10/2016 16:56:19
Buenos dias amigos

tengo un problema con una tabla de una base de datos que es alimentada por un sistema
quise hacer un insert en la tabla para ver si funcionaba bien y me arrojo este error

ERROR 1452 (23000): Cannot add or update a child row: a foreign key constraint f
ails (`sce_16`.`calificacion`, CONSTRAINT `calificacion_ibfk_3` FOREIGN KEY (`an
tecedentes_nivel_idnivel`) REFERENCES `antecedentes` (`nivel_idnivel`))

y este es el insert

1
insert into calificacion values(1,1,10.0,12,1,1,1);

y la tabla

1
2
3
4
5
6
7
8
9
10
11
12
CREATE TABLE IF NOT EXISTS `calificacion` (
  `idcalificacion` INT NOT NULL AUTO_INCREMENT,
  `momento_ca` INT NULL,
  `grado` INT NULL,
  `calificacion` DECIMAL NULL,
    `materia_idmateria` INT NOT NULL,
  `antecedentes_idantecedentes` INT NOT NULL,
  PRIMARY KEY (`idcalificacion`));
    Alter table calificacion add  FOREIGN KEY (`materia_idmateria`)
    REFERENCES `materia` (`idmateria`);
   Alter table calificacion add  FOREIGN KEY (`antecedentes_idantecedentes`)
    REFERENCES `antecedentes` (`idantecedentes`);
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Leonardo Daniel A.
Val: 88
Ha mantenido su posición en MySQL (en relación al último mes)
Gráfica de MySQL

problema llaves foraneas

Publicado por Leonardo Daniel A. (34 intervenciones) el 20/10/2016 17:12:03
Hola porque calificacion es una tabla detalle relacionada a una maestra como es materias y antecedentes

por lo tanto no puedes insertar directo a calificaciones, si no existe ese id de materia en la tabla materias... y ademas, la tabla "calificacion" tiene 6 campos y tu estas insertando 7 valores
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar