.
Cara, pelo que eu vi no seu código, eu acho não tenho certeza, o que ta errado é na criação das tabelas, vo postar o código ai vc testa, qualquer coisa avisa ai…
TABELA ESPECIE
CREATE TABLE especie
(
esp_codigo serial NOT NULL,
esp_nome character varying(100),
CONSTRAINT especie_pk PRIMARY KEY (esp_codigo)
)
WITH (
OIDS=FALSE
);
ALTER TABLE especie OWNER TO postgres;
TABELA RAÇA
CREATE TABLE raca
(
rac_codigo serial NOT NULL,
rac_nome character varying(100),
rac_foto character varying(100),
esp_codigo integer NOT NULL,
CONSTRAINT raca_pk PRIMARY KEY (rac_codigo),
CONSTRAINT especie_raca_fk FOREIGN KEY (esp_codigo)// DIFERENÇA TA AQUI.....
REFERENCES especie (esp_codigo) MATCH SIMPLE
ON UPDATE NO ACTION ON DELETE NO ACTION
)
WITH (
OIDS=FALSE
);
ALTER TABLE raca OWNER TO postgres;