Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Cannot add or update a child row: a foreign key constraint fails

Estas en el tema de Cannot add or update a child row: a foreign key constraint fails en el foro de Mysql en Foros del Web. Hola amigos, al insertar un registro que hace referencia a un valor de una clave foránea, tengo el siguiente mensaje de error Cannot add or ...
  #1 (permalink)  
Antiguo 07/10/2011, 11:02
Avatar de ManDam  
Fecha de Ingreso: marzo-2007
Mensajes: 118
Antigüedad: 13 años, 8 meses
Puntos: 1
Cannot add or update a child row: a foreign key constraint fails

Hola amigos, al insertar un registro que hace referencia a un valor de una clave foránea, tengo el siguiente mensaje de error

Cannot add or update a child row: a foreign key constraint fails

Mi problema es que si existe el valor al que se referencia en la otra tabla. Además, en un principio cuando cree la base de datos y empecé a insertar datos de prueba no tenía ningún problema, pero ahora si que los tengo. No se que hacer porque en "teoría" todo está como debe (porque en un principio si que funcionaba) y no se por donde mirar. Ojala alguien me pueda ayudar

Muchísimas gracias.
  #2 (permalink)  
Antiguo 07/10/2011, 11:49
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 13 años
Puntos: 2656
Respuesta: Cannot add or update a child row: a foreign key constraint fails

MySQL no comete errores en este nivel, por lo que si te está diciendo eso es porque efectivamente hay alguna FK que no se está respetando.
En cualquier casos lo mejor es que postees el CREATE TABLE de todas las tablas involucradas, porque puede haber situaciones que no se vean a simple vita, como las restricciones circulares, que son un caso de error de diseño bastante común.
Nota: No postees la descripción, sino el CREATE TABLE de cada uno (SHOW CREATE TABLE tablaX te permite recuperarlo).
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 07/10/2011, 11:57
Avatar de ManDam  
Fecha de Ingreso: marzo-2007
Mensajes: 118
Antigüedad: 13 años, 8 meses
Puntos: 1
Respuesta: Cannot add or update a child row: a foreign key constraint fails

Creo que he dado con la solución. Buscando por la red, he visto otro post en el que precisamente contestabas tú bastante bien explicado.

El error que cometo es (creo) que tengo una relación (1:1). En una de las tablas, tengo como PK la foránea de la otra. Entonces al hacer referencia a valores de otras tablas me da el error, estoy probando porque le he añadido como PK un autoincrement y le he quitado como PK la foránea para ponerla como UNIQUE.

Espero tener suerte... Muchísimas gracias.

Etiquetas: add, child, constraint, key, row, tabla, update, foreignkey
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:19.