Consulta Postgre

Ernesto Revilla erny en sicem.biz
Mie Ago 3 11:51:31 CEST 2005


Hola,

Chema Cortes wrote:

> Quoting Ernesto Revilla <erny en sicem.biz>:
>
>> Respecto a lo que dices, puedes usar una consulta parametrizada también,
>> pero parece que pyPgSQL no lo soporta.
>
>
> A mi me funcionan las consultas con parámetros en pyPgSQL. Por lo que 
> veo en tu
> código no pasas los parámetros como una tupla. Mira a ver si es por éso.
> Tampoco haría falta convertir previamente los enteros a strings.
>
El adaptador postgres pyPgSQL no usa consultas con parámetros, es decir, 
que se pueden obtener con la setencia PREPARE. PREPARE compila la 
consulta (i.e. crea el plan de consulta). En algún correo leí que si 
quieres usar consultas parámetrizadas con pyPgSQL tienes que usar 
PREPARE. (Si miras el código fuente de execute, verás que hace una 
sustitución tipo %s.)

>
>> Estos días he estado revisando la interfaz python de programación en
>> servidor (SPI), y realmente tiene una pinta estupenda. Viene
>> incluído/compilado en Debian Sarge (Postgresql 7.4.x) y Windows. Para
>> Fedora Core 3 hay paquete instalable. Es bastante probable que esté
>> incluido o que existe como paquete de binarios para la distribución que
>> uséis.
>
>
> Mesorprende que en Sarge hayan hecho que depensa postgres del python. 
> Lo que no he visto es que la versión de windows permita usar python. 
> ¿Estás utilizando un
> postgresql 8.0 para windows?

No dependede de python. Creo que define como un plugin. Es decir, puedes 
compilar el postgresql con soporte de python, pero sin instalar el 
python. Eso es porque plpython es una librería dinámica. Si ejecutas 
"createlang template1 plpythonu" desde la shell y te da error, no está 
instalado. De todos modos, esas librerías son minúsculas.

La versión de Windows (8.0.3 bajado de postgresql.org) va de momento en 
pruebas, pero se comporta muy bien. Puedes agregar el lenguaje python 
igual que en linux con el comando binario externo "createlang" que lo 
encontrarás en c:\Archivos de programa\Postgresql\8.0\bin.

Erny

>
>
>> Cosas interesantes:
>
>
> Para añadir a la lista:
>
> Crear en postgresql un secuenciador en python:
> http://www.pythonhispano.org/node/1009
>
> Utilización en postgresql de generadores python:
> http://www.pythonhispano.org/node/1010
>
> En éste último ejemplo se puede ver que el diccionario SD se pueden 
> almacenar
> cualquier objeto python, en este caso un "generador".
>
>
> _______________________________________________
> Python-es mailing list
> Python-es en aditel.org
> http://listas.aditel.org/listinfo/python-es
>




Más información sobre la lista de distribución Python-es