Qt5.5連接mysql數據庫提示QMYSQL driver not loaded

Qt5.5.1編譯mysql zip數據庫驅動

轉載自:http://blog.sina.com.cn/s/blog_032253000102v1m0.html

本文針對5.5.1版本更新了下文件版本,和原文方法沒區別


本機環境:

    Win7x64

    Qt5.5.1源碼        (編譯mysql)

    mysql-5.7.10 zip源碼    (32位)

    Qtcreator 3.4.2     (集成開發環境)

 

1.  第一次用數據庫mysql時估計都出現這種問題,QMYSQL driver not loaded,查看

Qt creator安裝目錄D:\Qt5.5.0\5.5\mingw492_32\plugins\sqldrivers得知,qt 5.5.0是自帶mysql驅動的,但是還有問題。只能自己重新編譯。

 

2.  軟件工具:

1) Qt5.5.1源碼:qt-everywhere-enterprise-src-5.5.1.zip

地址:https://account.qt.io/downloads需要註冊下載

2) mysql-5.7.10:  mysql-5.7.10-win32.zip(32

mysql官網提供兩種形式,msi和zip,一定下載32位的zip!

(本人使用mysql- 5.7.10.msi選擇full安裝生成的include和lib文件進行mysql驅動編譯會報錯,提示不存在binary_log_types.h,將32位zip中的此文件複製到相同目錄,重新編譯還會出現其他很多奇怪錯誤,不推薦。)

 

3) Qtcreator:

qt-opensource-windows-x86-mingw492-5.5.0.exe(集成qt 5.5.0和mingw32)

 

3.  解壓到自定義目錄

本機解壓qt-everywhere-enterprise-src-5.1.1.zip到 D:\qt-everywhere-enterprise-src-5.5.1

解壓mysql-5.7.10-win32.zip到D:\ MySQL-Win32(不用配置mysql就行)

 

4.  切換到qt源碼目錄,打開如圖所示的mingw32命令提示符,

                          


 執行

cd D:\qt-everywhere-enterprise-src-5.5.1\base\src\plugins\sqldrivers\mysql

 

執行

qmake "INCLUDEPATH+=D:\MySQL-Win32\include" “LIBS+=D:\MySQL-Win32\lib\libmysql.lib" mysql.pro

(原文有用-o Makefile,如果加上“-o Makefile”,插件只能在以release 模式編譯程序時才能使用,所以沒加)

 

執行mingw32-make

 

編譯成功後將會在D: \qt-everywhere-enterprise-src-5.5.1\qtbase\plugins\sqldrivers生成mysql的驅動文件.

                       


複製qsqlmysql.dll和qsqlmysqld.dll到

D:\ Qt5.5.0\5.5\mingw492_32\plugins\sqldrivers(Qt creator的安裝目錄)替換原來的文件。

再把D:\mysql-5.7.10-win32\lib\libmysql.dll複製到C:\Windows目錄下。

這樣Qt就可以連接MySQL數據庫了。


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