Re: Funcion retorna SETOF RECORD

From: "Raul Andres Duque" <ra_duque(at)yahoo(dot)com(dot)mx>
To: <lennin(dot)caro(at)yahoo(dot)com>, "Hector R(dot) De los Santos \(Consultor TI\)" <zahory(at)gmail(dot)com>
Cc: <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: Funcion retorna SETOF RECORD
Date: 2008-08-12 16:27:03
Message-ID: 00ba01c8fc98$415028a0$5800a8c0@amadeus.net.co
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

>
>----- Original Message -----
>From: "Lennin Caro" <lennin(dot)caro(at)yahoo(dot)com>
>To: "Hector R. De los Santos (Consultor TI)" <zahory(at)gmail(dot)com>; "Raul
>Andres Duque" <ra_duque(at)yahoo(dot)com(dot)mx>
>Cc: <pgsql-es-ayuda(at)postgresql(dot)org>
>Sent: Tuesday, August 12, 2008 10:40 AM
>Subject: Re: [pgsql-es-ayuda] Funcion retorna SETOF RECORD>
>

>si estamos hablando de esta funcion ...
>
>CREATE OR REPLACE FUNCTION p5()
>RETURNS record AS
>$BODY$DECLARE
>algo RECORD;
>BEGIN
>
>SELECT INTO algo * FROM prestadora;
>
>return algo;
>END;$BODY$
>LANGUAGE 'plpgsql'
>

Envio ejemplo:

CREATE OR REPLACE FUNCTION csp_SaldoInicial(fecha date, filtro character
varying)
RETURNS SETOF RECORD AS
$BODY$
DECLARE
registros RECORD;
strQuery VARCHAR := '';
BEGIN
RETURN QUERY SELECT id_parte::int AS id_parte FROM def_salinvmes;
RETURN;
END;
$BODY$
LANGUAGE 'plpgsql' VOLATILE

select * from csp_SaldoInicial(now()::date, '1=1');

ERROR: a column definition list is required for functions returning
"record"

********** Error **********

ERROR: a column definition list is required for functions returning "record"
SQL state: 42601

>
>retorna un tipo RECORD que se llena con la informacion del objeto
>prestadora
>
--- On Tue, 8/12/08, Raul Andres Duque <ra_duque(at)yahoo(dot)com(dot)mx> wrote:

> From: Raul Andres Duque <ra_duque(at)yahoo(dot)com(dot)mx>
> Subject: Re: [pgsql-es-ayuda] Funcion retorna SETOF RECORD
> To: lennin(dot)caro(at)yahoo(dot)com, "Hector R. De los Santos (Consultor TI)"
> <zahory(at)gmail(dot)com>
> Cc: pgsql-es-ayuda(at)postgresql(dot)org
> Date: Tuesday, August 12, 2008, 3:22 PM
> >
> >----- Original Message -----
> >From: "Lennin Caro"
> <lennin(dot)caro(at)yahoo(dot)com>
> >To: "Hector R. De los Santos (Consultor TI)"
> <zahory(at)gmail(dot)com>; "Raul
> >Andres Duque" <ra_duque(at)yahoo(dot)com(dot)mx>
> >Cc: <pgsql-es-ayuda(at)postgresql(dot)org>
> >Sent: Tuesday, August 12, 2008 9:12 AM
> >Subject: Re: [pgsql-es-ayuda] Funcion retorna SETOF
> RECORD
> >
>
> >Referente al hilo, Prestadora es una tabla que existe
> la funcion retorna un
> >tipo RECORD y al usar select * from p5 retorna todos
> los registros
> > >guardados en la variable de tipo RECORD
> >
>
> Hasta donde tengo entendido cuando dices "RETURNS
> SETOF prestadora", se esta
> haciendo referencia al TIPO "prestadora" y no a
> la tabla "prestadora". Lo
> que pasa es que postgresql crea automáticamente el tipo
> correspondiente )con
> el mismo nombre) para cada tabla en la DB.
>
> Atentamente,
>
> RAUL DUQUE
> Bogotá, Colombia
>
> >
> >--- On Tue, 8/12/08, Raul Andres Duque
> <ra_duque(at)yahoo(dot)com(dot)mx> wrote:
> >
> > From: Raul Andres Duque <ra_duque(at)yahoo(dot)com(dot)mx>
> > Subject: Re: [pgsql-es-ayuda] Funcion retorna SETOF
> RECORD
> > To: "Hector R. De los Santos (Consultor TI)"
> <zahory(at)gmail(dot)com>
> > Cc: pgsql-es-ayuda(at)postgresql(dot)org
> > Date: Tuesday, August 12, 2008, 2:00 PM
> > >
> > >----- Original Message -----
> > >From: Hector R. De los Santos (Consultor TI)
> > >To: Raúl Andrés Duque Murillo
> > >Sent: Tuesday, August 12, 2008 7:27 AM
> > >Subject: Re: [pgsql-es-ayuda] Funcion retorna
> SETOF
> > RECORD
> > >
> > >
> > >Leete este hilo
> > >
> >
> >http://archives.postgresql.org/pgsql-es-ayuda/2008-08/msg00029.php
> >
> > Gracias Hector pero lo que quisiera es un ejemplo sin
> usar
> > un tipo (usando tipo RECORD ... si es posible). El
> ejemplo
> > que se ve en el hilo utiliza el tipo
> "prestadora"
> > ... adicional a esto tengo el problema de devolver
> VARIOS
> > REGISTROS provenientes de un SQL DINAMICO de forma
> óptima
> > (sin iterar por cada uno haciendo un RETURN NEXT).
> >
> > Atentamente,
> >
> > RAUL DUQUE
> > Bogotá, Colombia

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Jaime Casanova 2008-08-12 16:56:07 Re: Funcion retorna SETOF RECORD
Previous Message Jaime Casanova 2008-08-12 16:19:28 Re: Funcion retorna SETOF RECORD