From: | Jenaro Centeno Gomez <jcenteno(at)aldia(dot)com(dot)mx> |
---|---|
To: | marcelo Cortez <jmdc_marcelo(at)yahoo(dot)com(dot)ar> |
Cc: | pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Re: confucion con pgsql functions |
Date: | 2007-12-18 21:20:39 |
Message-ID: | 476839A7.30205@aldia.com.mx |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Sólo para no pasarlo por alto, si instalaste el lenguaje plpgsql?
Ahora, tu función está utilizando tres variables b_1 b_2 y b_3, pero no
las veo como parámetros para tomar un valor, que valores tienen?
Según yo, cargué la función y si la carga y la compila sin problemas,
pero dudo mucho que algún día funcione para hacer algo.
Sinceramente como que no hace mucho sentido una función para insertar
simplemente un registro, al menos yo no le veo el caso si no tiene algo
asi como desencadenadores y otro tipo de acciones tales como insertar
registros en bitácoras, tomar parámetros de la BDD y cosas por el estilo.
Por que no mejor nos cuentas que quieres hacer y a lo mejor alguien se
anima y te ayuda con la función.
Con respecto a lo de la documentación, como dicen por acá, el que busca,
encuentra.
marcelo Cortez escribió:
> hola a todos
>
>
> Estoy escribiendo varias funciones o podria decir
> store procedures??,ok el tema es que ya de arranque
> la documentacion es un poco escasa.. googling un poco
> y con prueba y error la mayoria de las dudas fueron
> superadas,
> ahora al parecer no se puede poner código "SQL
> standard" en las funciones/store procedures un
> ejemplo.
>
> cosas como:
>
> CREATE OR REPLACE FUNCTION loadall2()
> RETURNS void AS
> $BODY$
> DECLARE b_1 character varying(60) ;
> declare b_2 character(200) ;
> declare b_3 boolean;
> BEGIN
> insert into t1( c1,c2,c3) values( b_1,b_2,b_3) ;
> END;
> $BODY$
> LANGUAGE 'plpgsql' VOLATILE
>
> parecen no funcionar ( no me compila)
>
> en vez de esto tengo que hacer algo asi ..
>
> CREATE OR REPLACE FUNCTION loadall2()
> RETURNS void AS
> $BODY$
> DECLARE b_1 character varying(60) ;
> declare b_2 character(200) ;
> declare b_3 boolean;
> BEGIN
> execute 'insert into t1( c1,c2,c3) values(' ||
> quote_literal(b_1)||',' || quote_literal(b_2) ||
> ','||quote_literal(b_3)||')';
> END;
> $BODY$
> LANGUAGE 'plpgsql' VOLATILE
>
> esta stringificacion funciona , tal vez este haciendo
> algo mal, por favor haganmelo saber :)
> perdon por el correo largo, pero es por los ejemplos.
> La docmentacion no es tan buena y clara con respecto a
> los ejemplos.. gracias.
>
> Marcelo
>
>
> Tarjeta de crédito Yahoo! de Banco Supervielle.
> Solicitá tu nueva Tarjeta de crédito. De tu PC directo a tu casa. www.tuprimeratarjeta.com.ar
> --
> TIP 5: ¿Has leído nuestro extenso FAQ?
> http://www.postgresql.org/docs/faqs.FAQ.html
>
>
>
--
L.A. Jenaro Centeno Gómez
Coordinador de Tecnologías de la Información
Alimentos La Concordia, S.A. de C.V.
Ext. 9280
www.aldia.com.mx
Attachment | Content-Type | Size |
---|---|---|
jcenteno.vcf | text/x-vcard | 485 bytes |
From | Date | Subject | |
---|---|---|---|
Next Message | Teofilo Oviedo | 2007-12-18 21:35:26 | Hallar franja horaria |
Previous Message | Henry | 2007-12-18 19:10:21 | RE: confucion con pgsql functions |