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

Problemas con llaves

Estas en el tema de Problemas con llaves en el foro de Bases de Datos General en Foros del Web. Buenas a todos estoy trabajando con php y con phpmyadmin y me sale el siguiente error, si alguien sabe a que se debe me gustaria ...
  #1 (permalink)  
Antiguo 17/09/2008, 20:52
 
Fecha de Ingreso: agosto-2008
Mensajes: 64
Antigüedad: 16 años, 3 meses
Puntos: 0
Mensaje Problemas con llaves

Buenas a todos estoy trabajando con php y con phpmyadmin y me sale el siguiente error, si alguien sabe a que se debe me gustaria una explicacion o que puedo leer para enmendarlo, ok bye gracias.

#1452 - Cannot add or update a child row: a foreign key constraint fails (`envios/#sql-d8c_40`, CONSTRAINT `#sql-d8c_40_ibfk_1` FOREIGN KEY (`id_cliente`) REFERENCES `pedidos` (`id_cliente`))
  #2 (permalink)  
Antiguo 18/09/2008, 05:31
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: Problemas con llaves

Estás usando InnoDB y tablas con claves foráneas (FK).
Esto implica que el valor de un campo en una tabla depende de que ese valor exista en un campo clave en otra. El error se produce simplemente porque estás intentando ingresar un regisro en una tabla y el valor que estás colocando en ese campo NO EXISTE aún en la tabla referenciada.
Las tablas con claves primarias (tablas base o primarias) que son referenciadas por otra tabla deben ser cargadas primero, antes que las secundarias, para evitar que el motor de base de datos detecte una falla de integridad referencial.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
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 14:40.