2013/6/24 Alexsander Rosa <alexsander.r...@gmail.com> > Estou colocando COMMENTS nas constraints com mensagens de erro mais claras. > Quero poder converter isto: > ERROR: new row for relation "produto" violates check constraint > "chk_produto_precomin" > Nisto: > O preço de tabela do produto não pode estar abaixo do preço mínimo. > > Gostaria de uma maneira de descobrir o SQLSTATE e o ID da constraint que > deu erro. > Em último caso vou procurar tudo que está entre aspas no catálogo. >
Seria isto?? CREATE table foo(id int primary key); CREATE TABLE bar(id int references foo(id)); COMMENT ON CONSTRAINT bar_id_fkey ON TABLE bar IS 'Falha na chave estrangeira'; DO $$ BEGIN INSERT INTO bar VALUES(2); EXCEPTION WHEN integrity_constraint_violation THEN RAISE NOTICE '%', obj_description(49354); -- Claro que num trigger vc poderia colocar TG_RELNAME e TG_RELID nos parametros -- desta função END $$; Abraço! -Leo -- Leonardo Cezar http://www.postgreslogia <http://postgreslogia.wordpress.com>.com
_______________________________________________ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral