QT5 操作mysql 提示QMYSQL driver not loaded

    在使用QT5.8.0操作遠程MYSQL數據庫時,總是打開失敗,提示MYSQL驅動沒有被加載,如下爲部分示例代碼:

#include <QSqlDatabase>
#include <QSqlQuery>
#include <QSqlError>
#include <QDebug>

QString hostName = "localhost"; // MYSQL主機名
int portNum = 3306;             //服務器端口號
dbName = "test";                //數據庫名稱
userName = "root";              // 用戶名
password = "your_password";          // 密碼

QSqlDatabase dbconn = QSqlDatabase::addDatabase("QMYSQL");
dbconn.setHostName(hostName);
dbconn.setPort(portNum);
dbconn.setDatabaseName(dbName);
dbconn.setUserName(userName);
dbconn.setPassword(password);

qDebug("database open status: %d\n", dbconn.open());

QSqlError error = dbconn.lastError();
qDebug() << error.text();

dbconn.close();

運行結果提示信息如下:

 

在網上查詢資料,說是要安裝mysql,然後把dll庫拷到QT安裝目錄下去,就能解決。

但是從網上下了許多版本、試了許多遍都不能使用,並且32位、64位庫還傻傻分不清楚。

最終我是通過助手工具,安裝了正確的mysql解決的,

由於QT5.8安裝自帶的mingw53_32 爲 32位編譯,所以需要安裝32位的mysql驅動(dll文件),步驟如下:

1. 下載mysql安裝助手工具: https://dev.mysql.com/downloads/installer/

(使用該方式安裝,需要確保電腦能夠上網。若使用網線訪問太慢,可嘗試連接手機wifi熱點訪問該網站,親測速度會快很多)

2. 運行MySQL Installer, 使用它能夠方便快捷的安裝、刪除、更新MYSQL相關產品。

3. 點擊Add.. ,注意我們需要安裝的是MySQL Connectors中的 MySQLConnector/C 6.1.11 - x86,而不是安裝MYSQL Servers

4. 安裝完成後,找到安裝路徑。

5. 將安裝路徑下的lib目錄下的 libmysql.dll 文件拷貝至QT編譯器安裝目錄。

拷貝到---> 

 

6. 再次運行程序,數據庫成功打開,如下圖所示:

 

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