1. 程式人生 > >Qt5.4下連線Mysql,QSqlDatabase: QMYSQL driver not loaded but available

Qt5.4下連線Mysql,QSqlDatabase: QMYSQL driver not loaded but available

首先來自這位國外大神的幫助  http://seppemagiels.com/blog/create-mysql-driver-qt5-windows,  同時我最希望我的這篇部落格能夠幫助一些朋友解決這個問題,我也是糾結了好久,搞得好煩,非常能理解那種心情。。。。網上的教程都是很老的版本,沒有正確的教程,還是谷歌好,在國外找到了,還好該部落格的英文不是很複雜啊。。。。我這篇主要寫Windows, Linux下比較容易,大同小異,網上的教程也挺多。

Qt5.4是自帶Mysql驅動的, 

QSqlDatabase: QMYSQL driver not loaded

QSqlDatabase: available drivers: QSQLITE QMYSQL QMYSQL QMYSQL3 QODBC 等等,說明Qt是自帶的。但是為什麼又出現 not load 呢,是因為該驅動所滿足的依賴性,不滿足,故要重新編譯


工具:Qt5.4(Mingw491_32)以及原始碼, Mysql5.5.30-win32.mis

Qt5.4(Mingw491_32)離線安裝包下載地址,Qt5.4(Mingw491_32)原始碼下載地址

Mysql5.5.30-win32.mis 下載地址(百度網盤)

不建議使用Mysql5.5以上版本,目前5.5以上只有5.6, 因為5.6版本不能自定義  MysqlServer 的安裝位置, 而安裝位置必須是沒有空格的.雖然5.6能夠自定義資料夾,但資料夾下面的資料夾是有空格的,5.5可以完全自定義

1. 安裝Mysql 和 Qt

安裝無需先後,先安裝那個都可以,                      Mysql安裝方法, 要選擇自定義, 即 Custom, 之後選擇資料夾,本人建議是C:\MySQL\MySQLServer5.5

\, , 必須沒有空格喲, 因為在命令列下面空格就代表這一段命令結束,  之後就是  一直 next  就行了,

Qt沒有要求,一直Next就行了,我的QT路徑是C:\Qt,   順便 把原始碼解壓出來吧,, 我的解壓路徑是C:\qt-everywhere-opensource-src-5.4.0

2.重新編譯Mysql驅動

新增環境變數   完全沒有必要 開啟 Qt 的命令列終端,點選開始選單,Q5.4.0t,見下圖

輸入 cd C:\qt-everywhere-opensource-src-5.4.0\qtbase\src\plugins\sqldrivers\mysql\進到這個資料夾裡面
qmake "INCLUDEPATH+=C:\MySQL\MySQLServer5.5\include" "LIBS+=C:\MySQL\MySQLServer5.5\lib\libmysql.lib" -o Makefile mysql.pro mingw32-make OK ,編譯好了,如果你出現了一系列錯誤,比如 找不到#include <mysql.h>等等了,這就是你的qmake 後面的路徑包含空格了,在好好檢查一下吧

3.重新配置MySQL驅動

將 C:\qt-everywhere-opensource-src-5.4.0\qtbase\plugins\sqldrivers  資料夾下面的  qsqlmysql.dll  和 qsqlmysqld.dll 複製到C:\Qt\Qt5.4.0\5.4\mingw491_32\plugins\sqldrivers.  好多教程到這一步就完了,其實這樣做是還是不行的,還差一步

4.最關鍵的最後一步

將C:\MySQL\MySQLServer5.5\lib\libmysql.dll  複製到 C:\Windows 一切大功告成,開始你的Qt之旅吧 至於Linux下,也是一樣的,qmake ***** , make, 複製過去,只不過沒有第4步而已,也是沒有空格,否則就會出現各種標頭檔案或者檔案找不到 注:   轉載請說明出處,http://blog.csdn.net/tenlee/article/details/43614241 謝謝

相關推薦

Qt5.4連線Mysql,QSqlDatabase: QMYSQL driver not loaded but available

首先來自這位國外大神的幫助  http://seppemagiels.com/blog/create-mysql-driver-qt5-windows,  同時我最希望我的這篇部落格能夠幫助一些朋友解決這個問題,我也是糾結了好久,搞得好煩,非常能理解那種心情。。。。網上的

Qt5.3.1 ubuntu14.0464bit QSqlDatabase: QMYSQL driver not loaded的解決方案 real solution

1.現象 在連線資料庫的時候出現 ./hello-pc QSqlDatabase: QMYSQL driver not loaded QSqlDatabase: available drivers: QSQLITE QMYSQL QMYSQL3 QPS

qt連線mysql提示QMYSQL driver not loaded

1、下載 mysql-5.6.24-win32 2、在qt原始碼路徑Src\qtbase\src\plugins\sqldrivers\mysql中找到MySQL.pro工程檔案,新增外部庫,即第一步中libmysql.lib的目錄,編譯生成的檔案在src/qtbase/p

Qt連線mysql時出現 QSqlDatabase: QMYSQL driver not loaded的解決方法

用Qt5.41連線mysql時出現  QSqlDatabase: QMYSQL driver not loaded QSqlDatabase: available drivers: QSQLITE QMYSQL QMYSQL3 QODBC QODBC3 QPSQL QPSQL7解決方法:

Qt連線MySQL提示“QSqlDatabase: QMYSQL driver not loaded”的解決辦法

QSqlDatabase: QMYSQL driver not loaded QSqlDatabase: available drivers: QSQLITE QMYSQL QMYSQL3 QODBC QODBC3 QPSQL QPSQL7 首先在MySQL官網h

QT5 解決QSqlDatabase: QMYSQL driver not loaded 問題

QT5 解決QSqlDatabase: QMYSQL driver not loaded 問題 在windows下開發QT連線資料庫時遇到這個問題,之前解決過一次但是換了臺機子又忘記了,這次碼下來。 下載mysql的支援包 地址:https://dev.mysql.com/dow

QSqlDatabase: QMYSQL driver not loaded的解決方法

1、環境 系統:win x64 QT版本:5.7.0 mysql版本:5.7.22解壓縮版 2、現象 QT執行訪問mysql資料庫,出現QSqlDatabase: QMYSQL drive

QT----DAtABASE QMYSL驅動 QSqlDatabase: QMYSQL driver not loaded

HEADERS+=\Widget01.h\Widget02.h\Widget03.h\Widget04.h\Contact.h\Widget05.hSOURCES+=\Widget01.cpp\main.cpp\Widget02.cpp\Widget03.cpp\Widget04.cpp\Contact.cp

PyQt5連線MYSQL時顯示Driver not loaded解決方案

在第一次用PyQt5的 QSqlDatabase.addDatabase 連線mysql的時候,可能會出現Driver not loaded的情況,如下: from PyQt5.QtSql import QSqlQuery, QSqlDatabase from

Qt5.9連線MySql5.7.17錯誤解決辦法(錯誤提示:QMYSQL driver not loaded)

我用Qt5.9新建一個Console控制檯程式,用Qt5.9Console控制檯測試連線MySql5.7.17資料庫時,出現MySql資料庫驅動不可用,具體的程式碼和錯誤如下所示:1.1程式碼如下:(記得在.pro問價裡面新增QT+=sql)#include<QCore

fedora 18~20 中Qt 5.2.1 解決連線mysql資料庫出現QMYSQL driver not loaded的問題

QT += sql //在.pro檔案里加入這一句 //包含標頭檔案 #include <QDebug> #include <QSqlQuery> #include <QSqlDatabase> //連線資料庫 Q

qt5.8 鏈接mysql錯誤:driver not load

bsp logs ibm targe 轉載 解決方案 解決 target .dll 轉載請註明出處:http://www.cnblogs.com/dachen408/p/7155858.html 問題:qt5.8 鏈接mysql錯誤:driver not load。 解決

windowsQMYSQL driver not loaded的解決方案

環境:win7 64 位系統,qt5.4 32位 因為qt5.4已經編譯好QMysql驅動了,具體可以檢視D:\Qt\Qt5.4.1\5.4\mingw491_32\plugins\sqldrivers資料夾下有沒有 qsqlmysql.dll和qsqlmysqld.dll

Qt連結資料庫出現“QMYSQL driver not loaded”的解決辦法

VS2012+QT5.2.1+MySQL 5.1.51 Win32資料庫編寫程式執行: void QtUser::getData(void){ QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL");    db.setH

Qt QMYSQL driver not loaded 解決辦法

在做開發的時候用到了mysql, 用以下程式碼測試是否可以用 mysql      qDebug()<< QSqlDatabase::drivers();     qDebug()<< QCoreApplication::libraryPaths

QMYSQL driver not loaded 的原理和解決辦法

最近使用Qt連線Mysql遇到了"QMYSQL driver not loaded"的問題.遇到這個問題的人很多,網上找到的資料也是眾說紛紜.但大部分都沒法根本解決問題.希望看到我這片文章的人不要在花兩週時間折騰各個版本的mysql,各個版本的Qt了.沒時間的直接看最後總結.

Ubuntu16.04 QT "QMYSQL driver not loaded on Ubuntu"問題

原文: Assuming that for getting this error you installed Qt from the binary packages downloaded from qt.io: Install the MySQL client dev

Centos7.4安裝mysql-5.6.41

mys 但是 啟動mysql ann node 連接 rpm owin pack Centos7.4下安裝mysql-5.6.41二進制包 1、下載mkdir /data/sqlcd /data/sql wget https://cdn.mysql.com//Downloa

linux 連線mysql伺服器

mysql -h 伺服器主機地址 -u 使用者名稱 -p 使用者密碼     其中,引數的意義:     -h:指定所連線的資料庫伺服器位置,可以是IP地址,也可以是伺服器域名。     -u:指定連線資料庫伺服器使用的使用者名稱,例如root為管理員使用者具有所有許可權。     -p:連線資料

Java JDBC 在IDEA環境連線MySQL

今天主要首次練習JDBC連線,作為新手,真的是花了不少時間,為了然後來著不花費太多時間,走彎路, 首先寫上自己的程式碼, import java.sql.*; public class Main { public static void main(String[