connAccessStr =r'Driver={Microsoft Access Driver (*.mdb)};FIL={MS Access};DBQ=D:\test.mdb;'
db = QSqlDatabase.addDatabase("QODBC")
db.setDatabaseName(connAccessStr)
if not db.open():
    print(db.lastError().text())

结果提示:

[Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序 QODBC3: Unable to connect

查看ODBC:

 

代码中用的DRIVER={Microsoft Access Driver (*.mdb)},而系统的数据源配置驱动为:Microsoft Access Driver (*.mdb, *.accdb),

尝试加上*.accdb。 没有提示错误了!

备注:  pypyodbc 中 用 DRIVER={Microsoft Access Driver (*.mdb)} 是没报错的,

pypyodbc.win_connect_mdb(connAccessStr)

QtSql 的odbc要 

Driver={Microsoft Access Driver (*.mdb, *.accdb)}
Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐