MS AccessにはPythonやPython 2.7およびMicrosoft Access 2013Pyodbcエラー - 私は、Windows 7上で実行しています
私が実行してみてください。
:私は次のエラーメッセージが表示さ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に関する多くの質問があることを認識しています。 Iすでに次のことを実行しています
1)私は64ビットのPythonと64ビットのMS Access
2を持って確保)
https://support.microsoft.com/en-us/kb/295297キーHKEY_LOCAL_MACHINE \ SOFTWAREの\のODBCレジストリへのアカウントのアクセス許可を与えられました
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 \ ..."のような場所にファイルをコピーしようとしましたか(そしてファイル名をダブルチェックしていますか?) –