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 <alvhe...@alvh.no-ip.org>
-
Enviado a la lista de correo pgsql-es-ayuda (pgsql-es-ayuda@postgresql.org)
Para cambiar tu suscripci�n:
http://www.postgresql.org/mailpref/pgsql-es-ayuda

Responder a