Acceso a base de datos access 97 desde linux

damufo damufo en gmail.com
Mar Abr 22 08:46:54 CEST 2008


Chema Cortes escribiu:
> El 2008/4/21 damufo <damufo en gmail.com> escribió:
> 
>>  Por fin he probado la solución indicada pero no he sido capaz de
>> conseguirlo.
>>  He instalado unixODBC, mbdtools tambien otro paquete para tener el
>> /usr/lib/libmdbodbc.so, despues he configurado el unixodbc aunque no se si
>> lo he hecho bien. Mi codigo es este junto al error. Gracias.
>>
>>
>>  import adodb
>>  conn = adodb.NewADOConnection('access') # mxodbc required
>>  dsn = "Driver={Microsoft Access Driver
>> (*.mdb)};DBQ=//home//damufo//prueba.MDB"
>>  conn.connect(dsn)
>>
>>
>>  Traceback (most recent call last):
>>   File "proba.py", line 6, in <module>
>>     conn.connect(dsn)
>>  AttributeError: 'NoneType' object has no attribute 'connect'
>>
>>  tambien he probado
>>  #dsn = ("DRIVER={/usr/lib/libmdbodbc.so};DBQ=//home//damufo//prueba.MDB");
> 
> Creo que este artículo se centra más en php que a python. El DSN que
> pone está pillado de la documentación del adodb-python, que es un
> ejemplo para ODBC windows, no para unixODBC. Además de ésto, hay que
> decir que el módulo adodb-python requiere mxODBC, un módulo comercial
> que, supongo yo, no has comprado (para php no es necesario).

si, si que lo tengo instalado (el mxodbc) lo tengo en 
\usr\lib\python2.5\site-packages\mx\ODBC (no recuerdo de donde lo descargué)
> 
> Si quieres una alternativa que sea libre y gratuita te aconsejo que
> pruebes con hk_classes (http://hk-classes.sourceforge.net) que incluye
> API para python. Funciona con varios drivers, entre los que se incluye
> mdbtools y unixodbc, siendo sólo necesario el primero para acceder a
> los ficheros de access. Un ejemplo rápido:
> 
> import hk_classes
> 
> dr=hk_classes.hk_drivermanager()
> con=dr.new_connection("mdb")
> con.connect()
> 
> db=con.new_database("/ruta/al/fichero.mdb")
> print db.tablelist()
> 
> tab=db.new_table("tabla")
> tab.enable()
> 
> print tab.show_currentrow()
> 
> 
> La pega es que la documentación deja mucho qué desear; lo bueno es que
> puedes combinar el paquete hk_classes con el interface de knoda
> scriptándolo todo con python.

Probaré esto ultimo que tiene muy buena pinta. Muchas gracias
Contaré que tal me ha ido en esta lista.

> _______________________________________________
> Lista de correo Python-es 
> http://listas.aditel.org/listinfo/python-es
> FAQ: http://listas.aditel.org/faqpyes
> 
_______________________________________________
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