QSqlDatabase: QMYSQL driver not loaded问题解决方法

1.错误描述:

有QMYSQL driver,但driver无法被加载
这里写图片描述
原环境:
Qt Creator:5.8.0 for windows 64-bit(VS 2013)
MySQL:wampserver集成 MySQL5.5.20 32bit

2.解决方法:
因为 Qt Creator与MySQL位数不统一,所以新下了一个 Qt 5.8.0 for Windows 32-bit(MinGw 5.3.0)版本
这里写图片描述
安装后将wampserver中MySQL的lib目录下libmysql.dll拷贝到mingw49_32的bin目录下即可

目录结构如下:

这里写图片描述

拷贝到

这里写图片描述

3.如何查看MySQL位数:
打开MySQL控制台
输入show variables like '%version_%';即可
这里写图片描述
发现是x86即是32位

4.测试代码:

main.cpp中

#include "mainwindow.h"
#include <QApplication>
#include <QtSql/QSqlDatabase>
#include <iostream>
using namespace std;

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    MainWindow w;
    w.show();

    QSqlDatabase db=QSqlDatabase::addDatabase("QMYSQL");
    db.setHostName("localhost");   //主机名称,如localhost
    db.setDatabaseName("test");    //数据库名称
    db.setPort(3306);              //数据库端口号
    db.setUserName("root");        //用户名称
    db.setPassword("123456");      //用户密码
    db.open();
    if(db.isOpen())cout<<"true"<<endl;
    else cout<<"false"<<endl;

    return a.exec();
}

.pro文件:

QT       += core gui sql

5.后记:
本来下了32 bit(VS2013)版本,但是新建一个项目就出了各种bug,就放弃这个版本了

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章