数据库有几个表。除了一个,所有的都打开得很好。
db = QSqlDatabase("QODBC")
db.setDatabaseName(r"DRIVER={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=C:\Users\...\file.accdb")
db.open(username, password)
model = QSqlTableModel(db=db)
model.setTable("messages")
model.select()
输出False
。
model.lastError().text() 命令输出:
'Unable to find table messages'
虽然 db.tables() 命令输出:
['messages', 'table1', 'table2', ..., 'tableN']
直接通过 MS Access,打开此表
已经尝试通过循环打开。关键字在 db.tables() 中,但 QSqlTableModel 没有具体看到“消息”表。
试图将 MS Access 更改为 2016 版本。我想,突然 MS Access 2019 中的某些类型与旧驱动程序发生冲突。没有帮助。
我想下载一个更新的驱动程序,但我没有找到这个。我试图在注册表中挖掘......我也没有找到任何东西。
请帮忙