在Win7 X64上使用Qt访问MS Access数据库

时间:2014-05-27 13:28:52

标签: c++ windows qt ms-access

我曾经使用以下代码连接到MS Access数据库(名为JSpo2014.accbd)的Qt应用程序:

QSqlDatabase db = QSqlDatabase::addDatabase("QODBC");
db.setDatabaseName("Driver={Microsoft Access Driver (*.mdb, *.accdb)};FIL={MS Access};DSN='';DBQ=C:\\2014\\bd\\JSpo2014.accdb");
db.open();

我的Qt应用程序是使用Qt Creator开发的,使用Qt5.3.0进行MinGW x86。

它曾经在这些配置上正常工作:

  • 安装了Office 2010x86的WinXP
  • 安装了Office 2010x86的Win7x86
  • 安装了Office 2013x86的Win7x86

但是正在处理任何这些配置:

  • 使用Office 2010x86的Win7x64
  • 使用Office 2013x86的Win7x64
  • 使用Office 2013x64的Win7x64

我得到以下错误消息:

"[Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified"

"QODBC3: Unable to connect"

如何在安装了Office的Win7x64上运行它?

1 个答案:

答案 0 :(得分:0)

您似乎需要一个64位驱动程序,因为您显示在32位环境中运行的Windows上的一切正常,但是当您尝试在64位环境中运行时,您无法连接。有32位的办公室不会解决这个问题,因为Windows仍然在64位环境中运行。您可以假设它应该能够在64位环境中运行任何32位,但情况并非总是如此,并且从未尝试在32位环境中运行64位。如果可能的话,我会考虑尝试获得64个版本。这应该会否定你的问题。