Yo devolvería un void en la función y devolvería un cursor dependiendo de los datos. Esto me permitiría manejar diferentes resultados a lo largo de la función y manejar el problema de las columnas borradas. Más info, ver: http://sourceforge.net/projects/genfuncpostgres/?source=directory
>________________________________ > De: Lazaro Rubén García Martinez <lgarc...@vnz.uci.cu> >Para: Alvaro Herrera <alvhe...@alvh.no-ip.org> >CC: Ayuda <pgsql-es-ayuda@postgresql.org> >Enviado: Martes 7 de febrero de 2012 13:52 >Asunto: RE: [pgsql-es-ayuda] Diferencia entre RETURNS SETOF y RETURNS TABLE > >Alvaro muchas gracias por tu respuesta. >Saludos. > >-----Mensaje original----- >De: Alvaro Herrera [mailto:alvhe...@alvh.no-ip.org] >Enviado el: martes, 07 de febrero de 2012 01:44:PM >Para: Lazaro Rub茅n Garc铆a Martinez >CC: Ayuda >Asunto: Re: [pgsql-es-ayuda] Diferencia entre RETURNS SETOF y RETURNS TABLE > > >Excerpts from Lazaro Rub茅n Garc铆a Martinez's message of mar feb 07 13:45:14 >-0300 2012: >> Hola a todos en la lista. Les escribo porque tengo un par de dudas respecto >> a los tipos de retornos en las funciones. >> >> >> 1. Existe alguna diferencia en cuanto a rendimiento entre los tipos de >> retorno RETURNS SETOF y RETURNS TABLE? >> >> >> 2. Igualmente existe alguna diferencia entre utilizar RETURN QUERY >> respecto a crear un bucle Loop y dentro de este ejecutar un RETURN NEXT? > >Me parece que actualmente no hay ninguna diferencia. Sin embargo yo >siempre usar铆a la forma que sea "m谩s declarativa" porque es posible que >en el futuro se incluyan optimizaciones; aunque nunca he o铆do decir a >nadie que est茅 trabajando en optimizaciones en esta 谩rea, ni siquiera >que sean posibles. > >En estos dos casos que planteas, lo m谩s importante que debes testear es >c贸mo se comportan si tienes tablas con columnas borradas: es decir, >creas una tabla con una columna extra en la mitad, luego borras la >columna, luego creas la funci贸n. Eso debe comportarse igual que si >creas la tabla sin la columna; o bien si creas la funci贸n antes de >borrar la columna. Creo que cualquiera de esos que se comporte de modos >raros es un bug a reportar. > >-- >脕lvaro Herrera <alvhe...@alvh.no-ip.org> >- >Enviado a la lista de correo pgsql-es-ayuda (pgsql-es-ayuda@postgresql.org) >Para cambiar tu suscripci髇: >http://www.postgresql.org/mailpref/pgsql-es-ayuda > > >