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,就放棄這個版本了

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