如果系统是64位(win10)而office是32位,在链接如下代码时候,会出现错误,需要安装64位的驱动程序
import pypyodbc
def mdb_conn(db_name, password = ""):
str = 'Driver={Microsoft Access Driver (*.mdb)};PWD' + password + ";DBQ=" + db_name
conn = pypyodbc.win_connect_mdb(str)
return conn
mdb_conn(r"C:\Users\josephxie\Documents\VBA互学互传\练习\test.mdb")
这时候就需要从官网下载64位驱动程序
AccessDatabaseEngine_X64.exe
安装时候会提示不能安装64位,因为32位已经安装过了,解决办法如下:
- 运行cmd,然后一路cd到存放AccessDatabaseEngine_X64.exe的文件夹,然后运行 AccessDatabaseEngine_X64.exe /passive
- regedit打开注册表,找到HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\14.0\Common\FilesPaths,然后删除mso.dll
如果不执行这一步会提示重新安装office
另外附pyodbc的代码
import pyodbc
DBfile = r"C:\Users\josephxie\Documents\VBA互学互传\练习\test.mdb"
conn = pyodbc.connect(r"Driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=" + DBfile + ";Uid=;Pwd=;charset='utf-8';")
网友评论