2009/10/9 Rudinei Dias <[email protected]>:
> 2009/10/9 Osvaldo Kussama <[email protected]>
>>
>> 2009/10/9 Matheus Ricardo Espanhol <[email protected]>:
>> >
>> >        update teste set nome = 'texto';
>> >        get diagnostics linhas:=row_count;
>> >        return linhas;
>>
>> Apenas uma observação: no caso de UPDATE ou DELETE você obter
>> row_count = 0 não necessariamente significa uma situação de erro,
>> depende da aplicação.
>>
>> Osvaldo
>
> Até aí tudo bem. Cada caso é um caso.
> Porém, especulando, um bloco de exception para capturar um erro da DML
> ficaria assim?
>
>    update tabela ser campo='xxxx' where x=5;
>
>    -- bloco ce exception ? (capturar se houve erro na exec do sql)
>    EXCEPTION
>       RAISE EXCEPTION 'erro dml';
>
>    -- bloco de controle ? (obter o numero de linhas afetadas)
>
>    get diagnostics linhas:=row_count;
>
>    -- resto da lógica....
>


Dê uma olhada em:
http://www.postgresql.org/docs/current/interactive/plpgsql-errors-and-messages.html
e também em:
http://www.postgresql.org/docs/current/interactive/errcodes-appendix.html

Não entendi bem o que você deseja com a captura: você quer dar um
tratamento específico para cada possível erro?

Osvaldo
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a