尝试使用pyodbc将python连接到Access数据库时出错

2024-05-19 10:23:38 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图使用pythonspyodbc连接到我的电脑上本地存储的microsoft access数据库,但我一直收到一个很长的错误。这是我的密码

conn = pyodbc.connect(r'Driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=C:\Users\James\Documents\Database1.accdb;')
cursor = conn.cursor()
cursor.execute('select * my_table')

以下是错误或部分错误:

Error: ('HY000', "[HY000] [Microsoft][ODBC Microsoft Access Driver]General error Unable to open registry key Temporary (volatile) Ace DSN for process 0x2cd0 Thread 0x268c DBC 0x7f37e34                                                              Jet'. (63) (SQLDriverConnect); [HY000] [Microsoft][ODBC Microsoft Access Driver]General error Unable to open registry key Temporary (volatile) Ace DSN for process 0x2cd0 Thread 0x268c DBC 0x7f37e34                                                              Jet'. (63); [HY000] [Microsoft][ODBC Microsoft Access Driver] The database you are trying to open requires a newer version of Microsoft Access. (-1073); [HY000] [Microsoft][ODBC Microsoft Access Driver]General error Unable to open registry key Temporary (volatile) Ace DSN for process 0x2cd0 Thread 0x268c DBC 0x7f37e34                                                              Jet'. (63); [HY000] [Microsoft][ODBC Microsoft Access Driver]General error Unable to open registry key Temporary (volatile) Ace DSN for process 0x2cd0 Thread 0x268c DBC 0x7f37e34                                                              Jet'. (63); [HY000] [Microsoft][ODBC Microsoft Access Driver] The database you are trying to open requires a newer version of Microsoft Access. (-1073)")

使用pyodbc.drivers(),返回

enter image description here

所以我的理解是驱动程序Driver={Microsoft Access Driver (*.mdb, *.accdb存在于我的机器上

我下载并安装了Microsofts Access数据库引擎,但没有用。。 我还将连接字符串更改为

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\James\Documents;DBQ=C:\Users\James\Documents\Database1.accdb

错误消息保持不变

有什么建议吗


Tags: tokeyaccessdriver错误erroropenmicrosoft
1条回答
网友
1楼 · 发布于 2024-05-19 10:23:38

不确定具体情况,但可能不是编程错误,而是安装/环境错误。我有一个标准的64位office安装,并从64位Python连接到它。这适用于您提供的代码

您可能希望检查您是否正在尝试使用64位Python的32位驱动程序,或者以其他方式使用,但是给出了错误消息,这似乎不太可能

如果这不能解决问题,建议您在另一台计算机/用户帐户上尝试相同的代码,看看如果代码在那里有效,您是否可以识别差异

相关问题 更多 >

    热门问题