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

error al generar FK en phpadmin

Estas en el tema de error al generar FK en phpadmin en el foro de Mysql en Foros del Web. buenas a todos a ver si me pueden ayudar con este error #1452 - Cannot add or update a child row: a foreign key constraint ...
  #1 (permalink)  
Antiguo 27/05/2010, 05:35
 
Fecha de Ingreso: mayo-2010
Mensajes: 29
Antigüedad: 10 años, 6 meses
Puntos: 1
Pregunta error al generar FK en phpadmin

buenas a todos a ver si me pueden ayudar con este error

#1452 - Cannot add or update a child row: a foreign key constraint fails (`bd`.`#sql-c64_ef`, CONSTRAINT `#sql-c64_ef_ibfk_1` FOREIGN KEY (`dni_user`) REFERENCES `usuarios` (`dni`))

he comprobado y asegurado que ambos estan dados de alta de igual forma pero no sé que ocurre para que me de error. ¿me pueden orientar sobre que puede estar pasando? ¿como hago para que me deje especificar que el campo "dni_user" de la tabla creadores es FK de "dni" de la tabla usuarios?

Gracias por su ayuda
  #2 (permalink)  
Antiguo 27/05/2010, 05:59
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: error al generar FK en phpadmin

Si el error se produce en un INSERT, sólo se puede dar si en la tabla USUARIOS el valor que intentas poner en el campo DNI no existe previamente.
No hay otra posibilidad. Es el único caso de ese error posible.

Ahora bien, si el problema se produce al querer agregar la restricción (CONSTRAINT) de FK, la cosa es diferente: Puede darse si los tipos de columna no son exactamente iguales.

Así que... ¿qué es lo que está haciendo?
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Etiquetas: constraint, error#1452-cannot, foreignkey, phpadmin
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 11:13.