hola, al devolver un record se debe indicar tmb los campos exactos q
recibiran el record.. la otra forma es q tu definas un tipo record con los
campos que necesitas y lo uses. La otra forma es que uses un cursor y lo
retornes.
Slds
----- Original Message -----
From: "Hector R. De los Santos (Consultor TI)" <[email protected]>
To: <[email protected]>; <[email protected]>
Sent: Friday, May 15, 2009 2:32 PM
Subject: [pgsql-es-ayuda] Setof function problemas...
Creo que esto se ha respondido varias veces en la lista, el problema
esta en el modo de invocar la funcion, debe ser:
Select * from sch_desarrollo.reg_paises()
El día 15 de mayo de 2009 15:04, Luis A. Zevallos Cárdenas
<[email protected]> escribió:
Hola a todos
Una consulta que no entiendo porque me da este error cuando hago una
function utilizando setof
CREATE OR REPLACE FUNCTION sch_desarrollo.reg_paises() RETURNS SETOF
sch_desarrollo.tbl_paises_tmp AS
$BODY$
DECLARE
reg RECORD;
BEGIN
for reg in SELECT * FROM sch_desarrollo.tbl_paises_tmp loop
return next reg;
end loop;
return;
END;
$BODY$
LANGUAGE 'plpgsql';
Esto crea la function normal sin errores
Pero cuando la ejecuto
select sch_desarrollo.reg_paises()
Da este error;
************************ERROR****************************
ERROR: se llamó una función que retorna un conjunto en un contexto que
no
puede aceptarlo
CONTEXT: PL/pgSQL function "reg_paises" line 5 at RETURN NEXT
********** Error **********
ERROR: se llamó una función que retorna un conjunto en un contexto que
no
puede aceptarlo
Estado SQL:0A000
Contexto:PL/pgSQL function "reg_paises" line 5 at RETURN NEXT
*********************************************************
Gracias si es que me pueden ayudar
--
Luis Zevallos
DBA Administrador de DB & SRVR
Lobo Sistemas S.A.C
tel: +5154958310833
http://www.lobosistemas.com
--
:: HDS Consultores TI
Servidores | Redes | Programacion | GNU/Linux
--
:: HDS Consultores TI
Servidores | Redes | Programacion | GNU/Linux
--
TIP 5: ¿Has leído nuestro extenso FAQ?
http://www.postgresql.org/docs/faqs.FAQ.html
--
TIP 9: visita nuestro canal de IRC #postgresql-es en irc.freenode.net