“No se encontró el nombre de la fuente de datos y no se especificó un controlador predeterminado” con Access ODBC

Mis softwares:

  • Python 3.4 -64 bit
  • PyODBC 64 bit
  • Paquete de oficina de MS instalado (32 bits)

Problema:

Ahora, trato de acceder a MS Access 2010 instalado en mi computadora usando PYODBC. No funciona independientemente de lo que intente. Mi error es siempre este:

pyodbc.Error: ('IM002', '[IM002] [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified (0) (SQLDriverConnect)') 

Ya miré:

Error de conexión de pyodbc y ms access 2010

No se puede conectar a Access DB usando pyodbc

Se sugiere que es un problema de 32-64 bits, que estoy seguro de que es. ¿Se puede hacer alguna modificación para que funcione sin instalar python de 32 bits y pyodbc de 32 bits? Revisé este sitio web. Uso de ODBC (32 bits y 64 bits) en Windows de 64 bits que explica cómo acceder al panel de control para modificar la conexión y / o los controladores ODBC. Sin embargo, no sé mucho acerca de las conexiones internas de la base de datos de Windows para comenzar algunos cambios.

¿Hay algo que pueda hacer para que funcione?

¿Se puede hacer alguna modificación para que funcione sin instalar python de 32 bits y pyodbc de 32 bits?

Realmente no. Si tiene Office de 32 bits instalado, entonces tiene la versión de 32 bits del motor de base de datos de Access (también conocido como “ACE”) y solo las aplicaciones de 32 bits pueden usarlo.

El instalador de la versión de 64 bits del motor de base de datos de Access se cancelará si detecta componentes de Office de 32 bits. Hay una manera de forzar al instalador a continuar, pero no se recomienda porque aparentemente puede romper Office.

Conclusión: el “bitness” de su aplicación debe coincidir con el “bitness” del Access Database Engine instalado. Así que, prácticamente hablando, tus opciones son

  1. Utilice Python y pyodbc de 32 bits, o
  2. Reemplace su Office de 32 bits con la versión de 64 bits.