qt首次連接MYSQL驅(qū)動的各種問題圖文詳解
一、在mySql安裝目錄的lib目錄下,獲取兩個文件
這里MYSQL的安裝地址是:D:\Program Files\MySQL\MySQL Server 5.5\lib
獲取這兩個文件,將它復制到QT安裝目錄下bin文件夾中:
這里的QT安裝目錄在:D:\Qt1\Qt5.12.6\5.12.6\mingw73_64\bin
二、查看QMYSQL驅(qū)動
如果在QT安裝目錄下沒有qsqlmysqld.dll(debug版本用) qsqlmysql.dll(release版本用)這兩個文件。(如果有,可以跳過第三節(jié)的內(nèi)容了)
這里的查看路徑是:D:\Qt1\Qt5.12.6\5.12.6\mingw73_64\plugins\sqldrivers
三、解決qt沒有QMYSQL驅(qū)動問題
3.1 下載64位的MySQL Community Server
下載地址:MySQL :: Download MySQL Community Server
下載完成后解壓(不安裝)
解壓后的內(nèi)容如下圖:
3.2 編輯mysql.pro文件
該文件在當前qt安裝目錄下。
本文mysql.pro路徑為:D:\Qt1\Qt5.12.6\5.12.6\Src\qtbase\src\plugins\sqldrivers\mysql
用QtCreate打開編輯.pro文件
添加修改如下命令:
1、一定要屏蔽QMAKE_USE += mysql,如果不屏蔽會提示mysql庫不存在。
注釋代碼:#QMAKE_USE += mysql
2、添加代碼:INCLUDEPATH += "D:\Qt1\mysql-8.0.26-winx64\include"
該路徑是剛才下載解壓備用的mysql的頭文件路徑
3、添加代碼:LIBS += "D:\Qt1\mysql-8.0.26-winx64\lib\libmysql.lib"
該路徑是剛才下載解壓備用的mysql的庫文件路徑
4、添加代碼:DESTDIR = ../mysql/lib/
為了方便查找將來編譯好的庫文件,添加這個語句用來指明編譯后的結(jié)果輸出的位置
添加完成后,開始編譯構(gòu)建
等待右下方構(gòu)建完畢后,在mysql.pro文件目錄下,會多出一個lib文件夾
將這個文件夾中的所有內(nèi)容復制到QT安裝目錄下的sqldrivers文件夾中
當前文檔路徑是:D:\Qt1\Qt5.12.6\5.12.6\mingw73_64\plugins\sqldrivers
四、測試連接
4.1 輸出可用數(shù)據(jù)庫
qDebug() << "available drivers: "; QStringList drivers = QSqlDatabase::drivers(); foreach (QString driver, drivers) { qDebug() << driver; }
當運行結(jié)果出現(xiàn)QMYSQL時,你就大功告成了!
4.2 連接數(shù)據(jù)庫
//連接數(shù)據(jù)庫 QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL"); db.setHostName("127.0.0.1"); db.setPort(3306); db.setDatabaseName("planedb"); db.setUserName("root"); db.setPassword("123456"); bool ok = db.open(); if(ok) { QMessageBox::information(this, "infor", "success"); } else { QMessageBox::information(this, "infor", "open failed"); qDebug() << "error open database because" << db.lastError().text(); }
編譯運行后,出現(xiàn)success的對話框。
完美收官!
參考鏈接:
QT出現(xiàn)沒有MySQL驅(qū)動,手動編譯步驟
總結(jié)
到此這篇關(guān)于qt首次連接MYSQL驅(qū)動的各種問題的文章就介紹到這了,更多相關(guān)qt首次連接MYSQL驅(qū)動內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
C語言實現(xiàn)通用數(shù)據(jù)結(jié)構(gòu)之通用集合(HashSet)
這篇文章主要為大家詳細介紹了C語言實現(xiàn)通用數(shù)據(jù)結(jié)構(gòu)之通用集合,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-11-11詳解C++模擬實現(xiàn)priority_queue(仿函數(shù))
本文主要介紹了關(guān)于C++中優(yōu)先級隊列的模擬實現(xiàn),以及仿函數(shù)的使用,優(yōu)先級隊列是一種容器適配器,其第一個元素總是最大的,仿函數(shù)本質(zhì)是一個類,重載了operator(),可改變比較邏輯,同時,文中還介紹了如何進行類的比較,如日期類或其指針的比較,以及庫中sort函數(shù)的使用方法2024-10-10C++LeetCode數(shù)據(jù)結(jié)構(gòu)基礎(chǔ)詳解
這篇文章主要介紹了C++實現(xiàn)LeetCode數(shù)據(jù)結(jié)構(gòu),本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下2021-08-08