Re: insert into plpython

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
*****************************************

In response to

Responses

Browse pgsql-es-ayuda by date

  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++