Re: mi cursor no encuentra fin de archivo...

From: Alvaro Herrera <alvherre(at)commandprompt(dot)com>
To: mario vargas careaga <mario(dot)vargas(dot)careaga(at)gmail(dot)com>
Cc: pgsql-es-ayuda <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: mi cursor no encuentra fin de archivo...
Date: 2007-06-01 12:59:40
Message-ID: 20070601125940.GB4503@alvh.no-ip.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

mario vargas careaga escribió:
> CREATE OR REPLACE FUNCTION pasocursor(CPRE CHAR(37),out valor1 int,out
> valor2 int,out valor3 int)
> AS $$
> declare
> paso CURSOR FOR
> SELECT ene,sueldo1,aporte1,
> feb,sueldo2,aporte2,mar,sueldo3,aporte3,organo,distrito1,relridu,cod_per,ci1
> FROM paso2006 begin;

Tu codigo no tiene mucho sentido. Para que abres un cursor y tratas de
hacer FETCH en cada paso en un WHILE? Es mucho mas simple hacer algo
como

FOR SELECT ... FROM paso2006 LOOP
INSERT INTO prestaciones ...
END LOOP

y te ahorras todo el resto de la basura.

Pero en realidad tampoco necesitas un bucle; me parece que puedes hacer
todo con una sola sentencia del estilo

INSERT INTO prestaciones SELECT ...

--
Alvaro Herrera Valdivia, Chile ICBM: S 39º 49' 18.1", W 73º 13' 56.4"
Renaming ReiserFS to NinaFS is such an amazingly stupid suggestion, in so many
ways, that it ought to qualify for some kind of award. Or perhaps we should
name an award after it: the "NinaFS award" for outstanding crassness.
(edmundo, http://lwn.net/Articles/203846/)

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Ricardo Martin Gomez 2007-06-01 13:02:56 RE: mi cursor no encuentra fin de archivo...
Previous Message Gabriel Hermes Colina Zambra 2007-06-01 03:30:18 Re: datos de excel a potsgres