Re: manejo de errores y consulta entre DBs

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

In response to

Responses

Browse pgsql-es-ayuda by date

  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