From: | Alvaro Herrera <alvherre(at)commandprompt(dot)com> |
---|---|
To: | Milton Galo Patricio <minoztro(at)gmail(dot)com> |
Cc: | postgresql <pgsql-es-ayuda(at)postgresql(dot)org> |
Subject: | Re: rescatar exceptions de plpgsql |
Date: | 2006-07-24 23:30:28 |
Message-ID: | 20060724233028.GB11023@surnet.cl |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Milton Galo Patricio escribió:
> exacto!!, había visto la clausula exception, pero en los ejemplos sólo he
> visto cuando ponen divisiones por cero o algo asi nunca con sentencias
> sql?
Eso es solo porque la division por cero es lo mas facil de escribir.
Pero puedes usar cualquier excepcion, tal como dice en
http://www.postgresql.org/docs/8.1/static/plpgsql-control-structures.html#PLPGSQL-ERROR-TRAPPING
The condition names can be any of those shown in Appendix A.
Es decir, segun el listado que hay en el apendice,
http://www.postgresql.org/docs/8.1/static/errcodes-appendix.html
un listado de las que te podrian interesar podria ser
Class 23 Integrity Constraint Violation
23000 INTEGRITY CONSTRAINT VIOLATION integrity_constraint_violation
23001 RESTRICT VIOLATION restrict_violation
23502 NOT NULL VIOLATION not_null_violation
23503 FOREIGN KEY VIOLATION foreign_key_violation
23505 UNIQUE VIOLATION unique_violation
23514 CHECK VIOLATION check_violation
> ...mi pregunta es como se manejan??...los log's quiero utilizarlos para
> despues poder mostrarlos al usuario y asi no utilizar los log's que me da
> por ejemplo python o php (aunque creo son los mismo), pero los quiero poder
> capturar en la funcion de plpgsql.
No uses los logs. Usa el mensaje de error. Puedes usar la variable
SQLERRM dentro de un bloque EXCEPTION. O bien construir uno tu mismo,
teniendo en cuenta SQLSTATE.
Por favor usa la documentacion. No la escribimos solo como pasatiempo.
--
Alvaro Herrera http://www.CommandPrompt.com/
PostgreSQL Replication, Consulting, Custom Development, 24x7 support
From | Date | Subject | |
---|---|---|---|
Next Message | Milton Galo Patricio | 2006-07-25 00:03:59 | Re: rescatar exceptions de plpgsql |
Previous Message | Milton Galo Patricio | 2006-07-24 23:10:21 | Re: rescatar exceptions de plpgsql |