Cita: La DB esta con motor de almacenamiento MyISAM pero cada tabla esta como InnoDB, no se si eso también pueda estar afectando.
Si las tablas son InnoDB luego la bbdd es InnoDB...
Si en la tabla principal tienes solo un registro, y este tiene PK=1 para poder insertar algo en la secundaria debes ponerle ese 1 en el campo que referencia a la PK.....o nulo si no esta relacionado, lo que no puedes hacer es poner un valor que NO este en la principal.
Es lo que estas haciendo?