Я бегу на Windows 7, Python 2.7 и Microsoft Access 2013.Pyodbc Ошибка - Python для MS Access
При попытке запуска:
import pyodbc
conn_string = '''
DRIVER={Microsoft Access Driver (*.mdb, *.accdb)};
UID=admin;
UserCommitSync=Yes;
Threads=3;
SafeTransactions=0;
PageTimeout=5;
MaxScanRows=8;
MaxBufferSize=2048;
FIL=MS Access;
DriverId=25;
DefaultDir=C:\Users\jseinfeld;
DBQ=C:\Users\jseinfeld\Desktop\Databasetest1.accdb;
'''
connection = pyodbc.connect(conn_string)
Я получаю следующее сообщение об ошибке:
Error: ('HY000', "[HY000] [Microsoft][ODBC Microsoft Access Driver]General error Unable to open registry key Temporary (volatile) Ace DSN for process 0x29dc Thread 0x113c DBC 0x8a3ed48
Jet'. (63) (SQLDriverConnect); [HY000] [Microsoft][ODBC Microsoft Access Driver]General error Unable to open registry key Temporary (volatile) Ace DSN for process 0x29dc Thread 0x113c DBC 0x8a3ed48
Jet'. (63); [HY000] [Microsoft][ODBC Microsoft Access Driver] Not a valid file name. (-1044); [HY000] [Microsoft][ODBC Microsoft Access Driver]General error Unable to open registry key Temporary (volatile) Ace DSN for process 0x29dc Thread 0x113c DBC 0x8a3ed48
Jet'. (63); [HY000] [Microsoft][ODBC Microsoft Access Driver]General error Unable to open registry key Temporary (volatile) Ace DSN for process 0x29dc Thread 0x113c DBC 0x8a3ed48
Jet'. (63); [HY000] [Microsoft][ODBC Microsoft Access Driver] Not a valid file name. (-1044)")
Я понимаю, что есть много вопросов относительно доступа к Pyodbc и MS Access. Я уже выполнил следующее:
1) Обеспечен У меня есть 64-битный Python и 64 бита MS Access
2) Учитывая разрешение на доступ к учетной записи в HKEY_LOCAL_MACHINE \ SOFTWARE \ реестра ODBC ключа
https://support.microsoft.com/en-us/kb/295297
Error in opening an Access database in python
"General error Unable to open registry key Temporary (volatile) ..." from Access ODBC
3) Пробовал убедиться, что у меня есть действующая строка подключения https://stackoverflow.com/questions/6469545/python-connecting-to-a-database-with-pyodbc-not-working#=
4) База данных Access не открыта, когда я пытаюсь запустить этот код. Я перезагрузил свой компьютер и до сих пор получаю эту ошибку.
Пожалуйста, дайте мне знать, если есть какие-либо другие действия, которые я могу попробовать.
То, как вы строите строку подключения означает, что она включает в себя встроенный разрывы строк. Вы пробовали это без перерывов? ... начиная с исходной строки примерно так: 'conn_string = r'DRIVER = {Microsoft Access Driver (* .mdb, * .accdb)}; DBQ = C: \ Users \ jseinfeld \ Desktop \ Databasetest1.accdb; ' – HansUp
хороший вызов, но да, я пробовал именно то, что – BeeGee
Те" Недействительное имя файла. " записи указывают, что это может быть опечатка в пути к файлу или, возможно, проблема с правами доступа. Вы пытались скопировать файл в другое место, например «C: \ Users \ Public \ ...» (и дважды проверять имя файла)? –