qt連接mysqlde配置

此文檔針對windows下Qt Creator + Qt SDK用戶,開發環境配置參見本人其他博文

 

qt由於授權許可的限制,Qt的開源版本沒有提供所有數據庫的驅動程序。免費下載的中只含有QSQLITE也就是SQLite的驅動程序,要想與mysql或oracle等連接需要自己編譯其驅動。
    由於種種問題,經歷各種重裝,各種失敗,本人用了兩天才成功用qt連接上了mysql數據庫。(看網上其他教程都是分分鐘搞定  -_-!!)在這裏也寫一下自己的經歷。
    下邊開始正文:
    一.下載mysql http://dev.mysql.com/downloads/ 目前最新版本5.5。
    二.安裝mysql  安裝時不能選擇Typical型,這樣會缺少庫文件(include和lib文件夾)。啥都不管直接選擇FUll型。
    三.將mysql安裝目錄下的include和lib兩個文件夾拷貝到qt\4.7.4\src\plugins\sqldrivers\mysql下。可以自己新建一個目錄如mysqllib。
      四.修改mysql.pro文件,在第二行添加如下內容
          INCLUDEPATH += "./mysqllib/include"
    LIBS+= "./mysqllib/lib/libmysql.lib"
    五.將QT的bin目錄和mingw的目錄都添加到環境變量的path中。
    六.運行qt 4.7.4 Command Prompt 輸入以下命令(路徑自己注意修改)
        cd qt\4.7.4\src\plugins\sqldrivers\mysql
        qmake
        mingw32-make release
        mingw32-make debug
       執行qmake後沒有返回結果,只是在mysql目錄下生成了debug和release的makefile文件Makefile.Debug和Makefile.Release。
       全部執行完後,將release下的libqsqlmysql4.a,qsqlmysql4.dll和debug下的libqsqlmysqld4.a,libqsqlmysqld4.dll 拷貝至
       QtSDK\Desktop\Qt\4.7.4\mingw\plugins\sqldrivers  
    目錄下
   七.將mysql的庫文件libmysql.dll拷貝到QtSDK\Desktop\Qt\4.7.4\mingw\bin 目錄下

接下來運行一個例子看驅動是否裝好:
新建一個qt gui 控制檯項目SQLtest
在SQLtest.pro中加入QT  +=sql
接着修改main.cpp如下

#include <QtCore/QCoreApplication>

#include <QtSql>int main(int argc, char *argv[]){    

QCoreApplication a(argc, argv);    

qDebug() << "Available drivers:";      

QStringList drivers = QSqlDatabase::drivers();      

foreach(QString driver, drivers)           qDebug() << "\t "<< driver;    

qDebug() << "End";    

return a.exec();

}

執行程序輸出爲:

Available drivers:        

"QSQLITE"        

"QMYSQL3"        

"QMYSQL"

End

其中有"QMYSQL"則表示編譯mysql的驅動成功了!!

發佈了92 篇原創文章 · 獲贊 11 · 訪問量 9萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章