我试图连接到远程SQL Server数据库。当我尝试添加“QODBC”作为我的QSqlDatabase时,我在运行时遇到以下错误:
我的代码段:
QStringList drivers = QSqlDatabase::drivers();
qDebug()<<"drivers list: "<<drivers;
QSqlDatabase db = QSqlDatabase::addDatabase("QODBC");
错误:
drivers list: ("QODBC3", "QODBC")
Cannot mix incompatible Qt library (version 0x40804) with this library (version 0x40803)
正如您所看到的,我的驱动程序列表的输出显示我有可用的驱动程序。 .pro文件有“QT + = sql”,我按照QT支持博客上的说明构建了odbc驱动程序,并将它们作为“sqldrivers”子文件夹添加到我的应用程序文件夹中。我似乎无法找到如何解决版本不兼容错误。感谢您解决此问题的任何帮助。
答案 0 :(得分:0)
您的QODBC库与您的Qt库不兼容,也许您应该使用qt版本构建QODBC库。有一个指南:http://qt-project.org/doc/qt-4.8/sql-driver.html
答案 1 :(得分:0)
解决:问题是QtCore&amp;我的应用程序发布文件夹中的QtGui dll是较旧的qt 4.8.3,将其更改为当前的qt 4.8.4。