El día 21 de mayo de 2009 11:04, Luis A. Zevallos Cárdenas
<lzeval...@lobosistemas.com> escribió:
> Hola a todos tengo un problema con una funcion alguien podria ayudarme:
>
> FUNCION
> ****************************************************************************************************************
>  CREATE OR REPLACE FUNCTION sch_desarrollo.fn_size_tables()
>  RETURNS record AS
>  $BODY$DECLARE
>  reg RECORD;
>  BEGIN
>
> --Tamaño de los objetos en megabytes
> select into reg * from (SELECT relname, round(((relpages*8)::double
> precision/1024::double precision)::numeric,2) as MB
> FROM pg_class
> ORDER BY relpages DESC) as foo;
>
>  return reg;
>  END;$BODY$
>  LANGUAGE 'plpgsql'
> ****************************************************************************************************************
>  select *  FROM sch_desarrollo.fn_size_tables() --- CONSULTA
>
> ERROR
> *****************************************************************************************************************
> ERROR:  se requiere una lista de definición de columnas para funciones que
> retornan «record»
>
> ********** Error **********
>
> ERROR: se requiere una lista de definición de columnas para funciones que
> retornan «record»
> Estado SQL:42601
> *****************************************************************************************************************
>
> Gracias
>

Esa consulta esta tratando de retornar un SET OF no un record.
Inclusive podrías retornar directamente la consulta en vez de utilizar un into.

-- 
      Emanuel Calvo Franco
        Sumate al ARPUG !
        ( www.arpug.com.ar)
    ArPUG / AOSUG Member
--
TIP 9: visita nuestro canal de IRC #postgresql-es en irc.freenode.net

Reply via email to