按照论坛中《 Qt4 OpenSource for mingw中编译MySQL驱动》的方法,成功地在C:\Qt\4.5.2\plugins\sqldrivers下编译出Mysql驱动文件(libqsqlmysql4.a、qsqlmysql4.dll、libqsqlmysqld4.a、qsqlmysqld4.dll)。
接下来写了测试代码,如下所示:
#include <QApplication>
#include <QMessageBox>
#include <QtSql>
bool createConnection()
{
QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL");
db.setHostName("127.0.0.1");
db.setDatabaseName("book");
db.setUserName("root");
db.setPassword("root");
if (!db.open())
{
QMessageBox::critical(0, QObject::tr("Database Error"), db.lastError().text());
return false;
}
return true;
}
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
if (!createConnection())
return 1;
return a.exec();
}
项目文件内容如下:
TEMPLATE = app
TARGET =
DEPENDPATH += .
INCLUDEPATH += .
QT +=sql
# Input
SOURCES += main.cpp
编译成功,但执行时却提示:Diver not loaded Driver not loaded,请教高手帮我分析一下出错的原因及解决办法,谢谢!