clase conexion

Luis Medel Cáceres luis en luismedel.com
Vie Jul 4 16:35:23 CEST 2008


On Fri, Jul 4, 2008 at 4:06 PM,  <inf200468 en ucf.edu.cu> wrote:
>
>
> Hola
> estoy tratando de hacer una clase que se conecte a una bd en postgre, en el
> __init__ de mi clase, inicialice
> self.host
> self.user....etc, cada uno con
> valores y luego escribi una funcion
> def conex():
> ���  conn
> = psycopg2.connect("dbname=self.dbname user=self.user
> host=self.host��  password=self.password");
> pero no se conecta
> de esta forma, y si le pongo los valores directos dentro de connect si se conecta, como
> puedo arreglarlo.
> gracias
>
>
> --------------------------------
> Servicio del Grupo de Redes
> Universidad de Cienfuegos
> Contacto: adminred en ucf.edu.cu
>
> _______________________________________________
> Lista de correo Python-es
> http://listas.aditel.org/listinfo/python-es
> FAQ: http://listas.aditel.org/faqpyes
>

Por algún motivo no veo bien el texto del correo pero creo que hay dos cosas...

1. Has entrecomillado los parámetros en la llamada a connect () y no
estás pasando los valores de las variables, sino sus nombres. Nunca he
usado psycopg2 pero, ¿puede ser así?:

psycopg2.connect(dbname=self.dbname, user=self.user, host=self.host,
password=self.password")

En el caso de ser correcto lo que pones, yo interpolaría los valores

psycopg2.connect("dbname=%s, user=%s, host=%s, password=%s" %
(self.dbname, self.user, self.host, self.password))

...y 2. La llamada a connect () termina en ";". ¿No te da ningún error
de sintaxis?

Un saludo.

--
Luis Medel
http://luismedel.com
------------ próxima parte ------------
_______________________________________________
Lista de correo Python-es 
http://listas.aditel.org/listinfo/python-es
FAQ: http://listas.aditel.org/faqpyes


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