From: | Oswaldo Hernández <listas(at)soft-com(dot)es> |
---|---|
To: | fernando villarroel <bbddlinux(at)yahoo(dot)es> |
Cc: | pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Re: insert into plpython |
Date: | 2006-03-23 17:11:29 |
Message-ID: | 4422D6C1.7030204@soft-com.es |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
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
*****************************************
From | Date | Subject | |
---|---|---|---|
Next Message | manuel lamas | 2006-03-23 17:23:17 | Re: Postgres - C++ |
Previous Message | Mario Gonzalez | 2006-03-23 17:08:27 | Re: Postgres - C++ |