Skip site navigation (1) Skip section navigation (2)

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 (view raw or flat)
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

pgsql-es-ayuda by date

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

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group