Qt5.13.1的QMYSQL driver not loaded問題解決。
關於Qt5.13.1的QMYSQL driver not loaded問題解決。推薦參考這兩篇文章:
https://blog.csdn.net/gufengys/article/details/61430419
https://blog.csdn.net/jin761153454/article/details/100760807
問題起因:程序需要連接到數據庫Mysql,在學習用Qt操作數據庫的時候,我查看了下5.13.1內置了哪些關於數據庫的驅動。
// 在包含<QSqlDatabase>和<QDebug>這兩個頭文件下,構造函數裏面加入這條語句可以查看有哪些關於哪些數據庫驅動
qDebug()<<QSqlDatabase::drivers();
我的版本結果是這樣的:
可以看到沒有QMYSQL,所以沒有mysql的驅動。其實我可以從Qt的安裝路徑裏面的文件就可以看到,在我的電腦這個路徑是:D:\Software\QT\5.13.2\mingw73_64\plugins\sqldrivers
解決過程可以看到並沒有關於mysql的,推薦文章的博主舉了兩種方法,我用的源代碼編譯方法。生成與下載好的mysql版本匹配的驅動。
在我的電腦我打開的是這個路徑:D:\Software\QT\5.13.2\Src\qtbase\src\plugins\sqldrivers\mysql
雙擊.pro文件,並修改.pro文件如下,然後編譯。注意QMAKE_USE += mysql要註釋掉(我也不知道爲什麼)(這裏借用下人家的圖)
我最後生成的就是這樣了(不知道爲什麼,我把它刪除後重新生成就不行了)
把這兩個dll文件拷貝到剛剛看驅動的路徑下,也就是D:\Software\QT\5.13.2\mingw73_64\plugins\sqldrivers
這時候在執行查看驅動的那條語句qDebug()<<QSqlDatabase::drivers();。
然後再把數據庫bin目錄下的libmysql.lib複製到D:\Software\QT\5.13.2\mingw73_64\bin這個路徑下
然後重新打開Qt看看是不是能連接上了。我的是可以了