#python #ms-access #pyodbc
#python #ms-access #pyodbc
Вопрос:
Я пытаюсь подключиться к базе данных Access следующим образом…
Import pyodbc
driver='Microsoft Access Driver (*.mdb, *.accdb)'
filepath=r'D:DOCS CCAAMAÑOPROGRAMAS PYTHONAccesCons_Fluids.accdb'
conn=pyodbc.connect(driver=driver,DBQ=filepath)
Но я получил эту обратную трассировку:
Traceback (most recent call last):
File "D:DOCS CCAAMAÑOPROGRAMAS PYTHONAccesTest_dbtest_db.py", line 14, in <module>
conn=pyodbc.connect(driver=access_driver,DBQ=filepath)
pyodbc.InterfaceError: ('IM003', '[IM003] No se puede cargar el controlador especificado debido al error del sistema 1114: Error en una rutina de inicialización de biblioteca de vínculos dinámicos (DLL). (Microsoft Access Driver (*.mdb, *.accdb), C:\Program Files\Microsoft Office\root\VFS\ProgramFilesCommonX64\Microsoft Shared\Office16\ACEODBC.DLL). (160) (SQLDriverConnect)')
Я должен сказать, что я работаю с python 3.8 (64-битный) и MS Office 365, где MS Access также 64-битный.
Я уже установил драйвер Access «Microsoft Access database engine 2016».
Кроме того, я ранее запускал этот код и работал хорошо, но теперь я действительно не понимаю, что происходит.
Пожалуйста, помогите мне решить эту проблему.
Комментарии:
1. Звучит как проблема с установкой. Я бы сделал полную переустановку как Office, так и database engine. Это, как правило, происходит, когда кто-то путается с драйверами, что может произойти при использовании версии Office, поставляемой с database engine, а затем установке database Engine, попытке одновременного запуска 64-разрядной и 32-разрядной версий, одновременном использовании нескольких версий Office и в некоторых других условиях.
2. @ErikA, я снова установил драйвер Access и теперь работает хорошо. Я думаю, что это была проблема. Большое спасибо.