From: | Alvaro Herrera <alvherre(at)dcc(dot)uchile(dot)cl> |
---|---|
To: | Carlos Roberto Chamorro Mostacilla <carlosrchamorro(at)yahoo(dot)com> |
Cc: | pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Re: Ayda con Postgres |
Date: | 2004-07-14 16:21:24 |
Message-ID: | 20040714162124.GB2207@dcc.uchile.cl |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
On Tue, Jul 13, 2004 at 06:55:51PM -0500, Carlos Roberto Chamorro Mostacilla wrote:
Carlos,
> Resulta que necesito crear funciones en postgres que
> retornes registro o ROWTYPE y de igual manera lo
> reciban y lo manipule, he consultado en muchas artes
> pero no obtve mucha ayuda;
[misma pregunta que antes sobre rowtypes]
En general no es mucho lo que puedes hacer con un rowtype directamente.
Los rowtypes no son tipos "de primera clase" en Postgres, tienen
bastantes limitaciones, por lo que dudo que puedas hacer lo que quieres
hacer. Me temo que tendrias que descomponer los registros en sus campos
componentes y procesarlos uno por uno. Esto es muy doloroso sobre todo
cuando la cantidad de campos del rowtype es mayor a la cantidad de
parametros que puedes pasar a una funcion :-(
... en versiones existentes de Postgres. En la version en desarrollo
(que sera 7.5, o quizas 8.0) se trabajo' en esto, y aunque no lo he
probado personalmente se supone que puedes hacer toda clase de
operaciones con rowtypes (incluyendo usarlos como tipos en la definicion
de una tabla, pasarlos como parametros a funciones, etc). Si te
interesa, pruebalo y reporta las limitaciones que encuentres, porque la
funcionalidad aun no ha sida "escrita en piedra" y puede que necesite
afinarse un poco dependiendo de lo que digan los usuarios.
PD: mando copia de esto a pgsql-es-ayuda, porque lo habias publicado ahi
originalmente, y porque le puede ser de utilidad a alguien mas.
--
Alvaro Herrera (<alvherre[a]dcc.uchile.cl>)
"Vivir y dejar de vivir son soluciones imaginarias.
La existencia está en otra parte" (Andre Breton)
From | Date | Subject | |
---|---|---|---|
Next Message | Alvaro Herrera | 2004-07-14 16:47:41 | Re: Como crear una base! |
Previous Message | GUSTAVO MARTIN OCAMPO | 2004-07-14 11:51:00 | Re: Como crear una base! |