Saltar al contenido principal

No se puede agregar o actualizar la fila secundaria

❌ Error

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

📍 Contexto

Ocurre al insertar en una tabla con una clave externa que hace referencia a otra tabla (por ejemplo, licencias vinculadas a paneles, almacenes vinculados a propietarios), pero la fila referenciada no existe.

✅ Solución

  • Inserta primero la fila principal (por ejemplo, crea el almacén antes de asignarlo).
  • O desactiva las comprobaciones estrictas si no necesitas la aplicación de la clave externa:
    SET FOREIGN_KEY_CHECKS=0;

ℹ️ Información Adicional

  • No todos los scripts utilizan claves externas; muchos las comentan para evitar problemas.
  • Si las habilitas, siempre respeta el orden de inserción.
  • Para más información sobre claves externas, consulta la documentación de MySQL.