Re: Problema para construir una funcion dinamicamente

From: Leonel Fuentes Marrero <lfmarrero(at)uci(dot)cu>
To: Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>
Cc: Ayuda <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: Problema para construir una funcion dinamicamente
Date: 2012-02-14 20:45:32
Message-ID: 908900cc-9fe5-4c81-9e2e-aa2a48bdf4f1@ucimail1.uci.cu
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Gracias alvaro, lo puse así porque me dío error y pense tenía que ver con eso...

Saludos

----- Mensaje original -----
De: "Alvaro Herrera" <alvherre(at)alvh(dot)no-ip(dot)org>
Para: "Leonel Fuentes Marrero" <lfmarrero(at)uci(dot)cu>
CC: "Ayuda" <pgsql-es-ayuda(at)postgresql(dot)org>
Enviados: Miércoles, 8 de Febrero 2012 15:24:38
Asunto: Re: [pgsql-es-ayuda] Problema para construir una funcion dinamicamente

Excerpts from Leonel Fuentes Marrero's message of mié feb 08 16:45:14 -0300 2012:
> Vale, gracias a todos por la ayuda y saludos para los que conosco y me conocen, terminé haciendolo de una forma que no se si será la más optima pero funciona y aquí va...

Saludos :-)

> CREATE OR REPLACE FUNCTION check_table_schema(_schema text)
> RETURNS void AS
> $BODY$
> begin
> ------------------------------------------------------------------------
> execute 'CREATE OR REPLACE FUNCTION provisional(_schema text)
> RETURNS void AS ' || '$' || 'BODY' || '$' || '
> declare
> -- variables
> begin
> -- ....
> end;
> ' || '$' || 'BODY' || '$' || '

No entiendo para qué haces esto. La gracia de los delimitadores de $ es
que puedes usar cualquiera para no tener que enredarte con las comillas
y concatenación. Si usaste $BODY$ en la función check_table_schema,
puedes usar cualquier otra cosa para la función provisional; por ej. las
tres líneas de arriba pueden quedar así:

execute 'CREATE OR REPLACE FUNCTION provisional(_schema text)
RETURNS void AS $provisional$
declare

Eso te ahora comillas y por lo tanto es mucho más legible.

Por ejemplo mira esta función:
http://alvherre.livejournal.com/4404.html
Si te fijas, estoy usando delimitadores $f$ y $ff$ además de la comilla '

--
Álvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>

Fin a la injusticia, LIBERTAD AHORA A NUESTROS CINCO COMPATRIOTAS QUE SE ENCUENTRAN INJUSTAMENTE EN PRISIONES DE LOS EEUU!
http://www.antiterroristas.cu
http://justiciaparaloscinco.wordpress.com

--
Ing. Leonel Fuentes Marrero

Fin a la injusticia, LIBERTAD AHORA A NUESTROS CINCO COMPATRIOTAS QUE SE ENCUENTRAN INJUSTAMENTE EN PRISIONES DE LOS EEUU!
http://www.antiterroristas.cu
http://justiciaparaloscinco.wordpress.com

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Edwin Quijada 2012-02-14 22:27:15 RE: hosting con postgresql + apache + php
Previous Message Alejandro Carrillo 2012-02-14 20:35:57 Re: hosting con postgresql + apache + php