From: | fernando villarroel <bbddlinux(at)yahoo(dot)es> |
---|---|
To: | Oswaldo Hernández <listas(at)soft-com(dot)es> |
Cc: | pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Re: insert into plpython |
Date: | 2006-03-23 19:42:12 |
Message-ID: | 20060323194212.3330.qmail@web26007.mail.ukl.yahoo.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Hola si probe entrecomillar, pero se cae
create or replace function ingreso(varchar) returns
text as '
query="insert into cliente (nombre) values ('%s')"
% (args[0])
plpy.execute(query)
return query
' LANGUAGE 'plpythonu';
sigven=# \i FunIngreso.sql
psql:FunIngreso.sql:5: ERROR: syntax error en o cerca
de "%" at character 111
sigven=#
si a la query le borro las comillas simples crea la
funcion pero luego dice que la columna no existe (que
es el dato que recibe la funcion)
Agradecere su ayuda, ahora como me mencino Oswaldo si
quiero obviar las comillas debiera usar prepare, me
podrias postear un ejemplo.
Atte.
Fernando Villarroel N.
--- Oswaldo Hernández <listas(at)soft-com(dot)es> escribió:
> fernando villarroel escribió:
> > Hola estoy tratando de insertar un registro
> utilizando
> > una funcion plpython, pero no funciona:
> >
> > create or replace function ingreso(varchar)
> returns
> > text as
> > '
> > query="insert into cliente (nombre) values
> (%s)" %
> > (args[0])
>
> Si miras el resultado de esto veras que es:
>
> insert into cliente (nombre) values (fernando)
>
> donde 'fernando' esta sin entrecomillar.
>
> Si vas a utilizar esta forma de sustitución de
> parámetros debes incluir las comillas donde
> correspondan.
>
> Para no preocuparte de poner comillas debes utilizar
> plpy.prepare(...)
>
> > plpy.execute(query)
> > return query
> >
> > ' LANGUAGE 'PLPYTHONU'
> >
> > sigven=# select ingreso('fernando');
> >
> > Me tira los siguientes errores:
> >
> > WARNING: plpython: in function ingreso:
> > DETAIL: plpy.SPIError: Unknown error in
> > PLy_spi_execute_query
> > ERROR: no existe la columna "fernando"
> >
> > Agradere sus comentarios o sugerencias para
> entender
> > la mecanica ya que a diferencia de pl/pgsql con
> > plpython hay poca documentacion en google.
>
> Esto es cierto. Aparte de varlena donde si hay
> algunas cosas no hay casi nada mas.
>
> Saludos,
>
> *****************************************
> Oswaldo Hernández
> oswaldo(at)soft-com(dot)es
> *****************************************
>
______________________________________________
LLama Gratis a cualquier PC del Mundo.
Llamadas a fijos y móviles desde 1 céntimo por minuto.
http://es.voice.yahoo.com
From | Date | Subject | |
---|---|---|---|
Next Message | Julio Rivero | 2006-03-23 19:43:17 | Re: Access97 a Postgresql |
Previous Message | Mario Gonzalez | 2006-03-23 19:37:07 | Re: Access97 a Postgresql |