> Olá pessoal!
> Estava eu tentando passar grande parte do código php para SQL, porém,
> me deparei com um problema.
> Um mero exemplo:
>
> BEGIN
>
>        SELECT INTO Fstatus_id stat_id
>        FROM ctle_doc.status_documento
>        WHERE stat_descricao =
> Pstatus_desc;
>        IF(Fstatus_id IS NULL) THEN
>
>        SELECT INTO Fstatus_id
> NEXTVAL('ctle_doc.sequence_stat_id');       INSERT INTO 
> ctle_doc.status_documento(stat_id, stat_descricao)
>               VALUES(Fstatus_id, Pstatus_desc);
>
>        .................
>
> Como voces podem ver, eu estou validando se o registro ja existe para
> não gravar dois dados iguais, mas poderá ocorrer algum erro em alguma
> coisa como o:
>
>        INSERT INTO
> ctle_doc.status_documento(stat_id, stat_descricao)
>         VALUES(Fstatus_id,
> Pstatus_desc);
> Como eu poderia filtrar este erro? Pois assim o usuario não
> veria o
> RAISE e eu poderia retornar uma mensagem amigavel conforme o erro..
>
>
> Obrigado, se alguem souber por favor opine, eu já tentei
> EXECUTE() mas
> sem sucesso, não sei se a sintaxe que estava errada ou o comando que
> não é apropriado.

Dê uma olhada em:

http://www.postgresql.org/docs/8.1/interactive/plpgsql-control-structures.html#PLPGSQL-ERROR-TRAPPING
http://www.postgresql.org/docs/8.1/interactive/errcodes-appendix.html

Cordialmente,

--
Fabrízio de Royes Mello
ViSul Tecnologia
_______________________________________________
Grupo de Usuários do PostgreSQL no Brasil
Antes de perguntar consulte o manual
http://pgdocptbr.sourceforge.net/

Para editar suas opções ou sair da lista acesse a página da lista em:
http://pgfoundry.org/mailman/listinfo/brasil-usuarios

Responder a