Hola huesis52,
Ante todo agradezco mucho que comentes y me des ideas sobre el por qué estaría dando ese problema.
Que probè el insert que me recomendaste y se me prensentó el mismo mensaje de error.
Por último cambié la estructura de la tabla secundaria y nuevamente probé pero siempre el mismo mensaje de error de que no puede hacer el insert.
La estructura de la tabla que probé solamente le cambié el tipo de dato al campo de la llave foránea:
Código SQL:
Ver originalCREATE TABLE tb_evals_evaluaciones
(
evals_id serial NOT NULL,
evals_eval_id INTEGER,
evals_fecha DATE,
evals_mat_id BIGINT,
evals_per_id INTEGER,
evals_prog_id INTEGER,
evals_hr_id INTEGER,
created_at TIMESTAMP(0) WITHOUT TIME zone NOT NULL,
updated_at TIMESTAMP(0) WITHOUT TIME zone NOT NULL,
CONSTRAINT tb_evals_evaluaciones_pkey PRIMARY KEY (evals_id),
CONSTRAINT tb_evals_evaluaciones_evals_hr_id_fkey FOREIGN KEY (evals_hr_id)
REFERENCES tb_hr_horario (hr_id) MATCH SIMPLE
ON UPDATE NO ACTION ON DELETE NO ACTION,
CONSTRAINT tb_evals_evaluaciones_evals_mat_id_fkey FOREIGN KEY (evals_mat_id)
REFERENCES tb_mat_materia (mat_id) MATCH SIMPLE
ON UPDATE NO ACTION ON DELETE NO ACTION,
CONSTRAINT tb_evals_evaluaciones_evals_per_id_fkey FOREIGN KEY (evals_per_id)
REFERENCES tb_per_personas (per_id) MATCH SIMPLE
ON UPDATE NO ACTION ON DELETE NO ACTION,
CONSTRAINT tb_evals_evaluaciones_evals_prog_id_fkey FOREIGN KEY (evals_prog_id)
REFERENCES tb_prog_programas (prog_id) MATCH SIMPLE
ON UPDATE NO ACTION ON DELETE NO ACTION
)
WITH (
OIDS=FALSE
);
ALTER TABLE tb_evals_evaluaciones
OWNER TO admin;
Y sí, en efecto el registro 7 existe, ya le di un select a la tabla principal y ahí estan todos.
no sé por dónde vendrá el problema, ni idea porque aparentemente la estructura esta "bien"