From: | "Ariel Santana (MDHyT)" <carlos_s(at)mdhyt(dot)gba(dot)gov(dot)ar> |
---|---|
To: | pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Re: manejo de errores y consulta entre DBs |
Date: | 2004-05-03 15:31:03 |
Message-ID: | 409665B7.6050806@mdhyt.gba.gov.ar |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Alvaro Herrera wrote:
>On Thu, Apr 29, 2004 at 11:07:30AM -0400, Mauricio E. Pastorini Torres wrote:
>
>
>
>>>1) Nos surge una duda con la forma de manejar los errores. Por ejemplo,
>>>si insertamos un registro y ya existe uno con esa clave (clave
>>>duplicada) la forma que encontramos de resolverlo es preguntando antes
>>>del insert si existe la clave (IF FOUND). Este método no nos gusta
>>>mucho, existe algo parecido al manejo del sql-server?
>>>
>>>
>
>
>
>>Hola Ariel, revisa esta dirección...
>>http://www.postgresql.org/docs/7.4/interactive/plpgsql-statements.html
>>
>>en el capítulo 37.6.5 se indica como recuperar el estado de la ejecución
>>de un comando... en particular despues de ejecutar "insert" puedes
>>preguntar por RESULT_OID...
>>
>>
>
>Ojo, si haces un INSERT y el id (que es UNIQUE) ya existe, la
>transaccion se aborta automaticamente y tienes que empezar de nuevo.
>No vas a poder hacer nada mas en el PL/pgSQL.
>
>
Claro, es exactamente ese el problema, poder capturar el error de clave
duplicada y levantar la excepción.
Así que vamos a seguir con el "IF FOUND" antes de insertar.
Gracias a todos por las respuestas.
--
Ariel Santana
From | Date | Subject | |
---|---|---|---|
Next Message | Dimas Ayala | 2004-05-03 16:01:18 | PostgresQL con CYGWIN |
Previous Message | Ariel Santana (MDHyT) | 2004-05-03 15:28:06 | Re: manejo de errores y consulta entre DBs |