Re: plpsql: bucle for con cursor

From: Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>
To: Oswaldo Hernández <listas(at)soft-com(dot)es>
Cc: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: plpsql: bucle for con cursor
Date: 2008-10-08 15:43:07
Message-ID: 20081008154307.GC4164@alvh.no-ip.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Oswaldo Hernández escribió:

> El problema se presenta en una funcion que elimina una serie de
> registros, pero, despues de eliminarlos aún necesito algunos datos de
> esos registro que he borrado. Al ya están eliminados no puedo hacer un
> select sobre ellos, y tampoco puedo procesar los datos antes de eliminar
> los registros puesto que entre la eliminacion y el procesado de los datos
> hay otra serie de operaciones que necesitan que estén en ese estado.
>
> Para solucionarlo habia pensado dos opciones: 1.- Guardar los datos que
> necesito en una tabla temporal y despues hacer un for..loop sobre la
> tabla temporal, y 2.- Cargarlos en un cursor y leer posteriormente los
> datos del cursor.

No entiendo eso de cargar en un cursor. Ayer escribí un artículo en la
lista sobre los cursores, échale un vistazo. Un cursor no es una
especie de tabla temporal al que puedas pasarle tuplas y después leerlas
de vuelta. Las tuplas necesitan estar almacenadas en alguna parte; el
cursor no tiene almacenamiento propio.

Supongo que debes usar una tabla temporal, aunque quizás sea posible
hacer lo que quieres usando DELETE ... RETURNING.

--
Alvaro Herrera http://www.amazon.com/gp/registry/CTMLCN8V17R4
"Escucha y olvidarás; ve y recordarás; haz y entenderás" (Confucio)

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Javier Chávez B. 2008-10-08 15:43:55 Re: plpsql: bucle for con cursor
Previous Message Oswaldo Hernández 2008-10-08 15:34:24 Re: plpsql: bucle for con cursor