Gracias justo acabo de percatarme de eso tambien


El 15 de mayo de 2009 14:09, Luis A. Zevallos Cárdenas <
[email protected]> escribió:

> Me olvide la ddl de la tabla
>
> CREATE TABLE tbl_paises_tmp
> (
>   id integer NOT NULL DEFAULT 0,
>   pais character varying(30) NOT NULL,
>   CONSTRAINT paises_pkey PRIMARY KEY (id) USING INDEX TABLESPACE
> ts_clinica_idx
> )
>
> ---------- Mensaje reenviado ----------
> De: Luis A. Zevallos Cárdenas <[email protected]>
> Fecha: 15 de mayo de 2009 14:04
> Asunto: Setof function problemas...
> Para: posgres <[email protected]>
>
>
>
> 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
>
>
>
> --
> Luis Zevallos
> DBA Administrador de  DB & SRVR
> Lobo Sistemas S.A.C
> tel: +5154958310833
> http://www.lobosistemas.com
>



-- 
Luis Zevallos
DBA Administrador de  DB & SRVR
Lobo Sistemas S.A.C
tel: +5154958310833
http://www.lobosistemas.com

Responder a