編程環境搭建1(Qt5.4連接MySql5.6 驅動問題)

轉自:http://blog.csdn.net/li491093957/article/details/52783637

 

讓我們開始吧

正文開始,首先糾正一個錯誤,據說QT從5.2就已經自帶MySQL驅動了,不需要你向QT4一樣去編譯,我的理解是他帶了一半的驅動,另外一半QT需要鏈接到你的mysql裏面。如果你遇到如圖所示的錯誤

 

但是又是QT5.2或者5.2以上可以參考博主的解決思路,一般都可以解決,博主用的是WIN7系統加MYSQL5.6

一般系統和MYSQL沒有太大的關聯性,所以放手跟我一起GO  GO   GO

另外->

 

通過qDebug() << qDatabases.lastError().text();可以打印出你的數據庫連接的錯誤

通過qDebug() << QSqlDatabase::drivers();可以打印出你的數據庫擁有的庫文件

 

 

------------------------------------------------------------------------------------華麗的分割線---------------------------------------------------------------------------------

 

 

 

首先你需要檢查你的QT和MYSQL,你的QT是32位的,那麼很遺憾如果你的MYSQL是64位的,你需要裝32位的MYSQL,不然你是鏈接不上的,很多人都死在這一步,不信你試試?

 

第二你需要打開你的,MYSQL的 lib目錄,把下面的.lib和.dll結尾的文件全部複製到QT的bin目錄下,下面以博主的QT5.3 VS2013作爲圖片演示:

複製到QT的bin目錄下

基本上就可以連接到MYSQL了我們來測試一波

 

[cpp] view plain copy

  1. <span style="font-size:14px;color:#33cc00;"><strong>QSqlDatabase qDatabases = QSqlDatabase::addDatabase("QMYSQL");  
  2.      //設置相關參數  
  3.     qDatabases.setDatabaseName("qt_chat_server");    // 需要與數據庫中的一致  
  4.     qDatabases.setHostName("127.0.0.1");    // 主機名(地址)  
  5.     qDatabases.setPort(3306);        // 端口   
  6.     qDatabases.setUserName("root");  //設置用戶名  
  7.     qDatabases.setPassword("1a2b3c4d5e");  //設置密碼  
  8.     // 打開數據庫  
  9.     if (qDatabases.open( )) {  
  10.         qDebug() << "cg";  
  11.     }</strong></span>  

///然後打印出了cg

 

 

什麼你還是不能連接到數據庫?excuse me?

不要慌要圓,那麼你可以試試QODBC去MYSQL的官網下載 http://dev.mysql.com/downloads/connector/odbc/ 下載第一個Windows (x86, 32-bit), MSI Installer ,安裝時選擇第二個(完全安裝),然後去你的控制面板裏面查看方式,小圖標,點擊管理工具點擊數據源,用戶和系統都可以建立一個數據源

那麼又是一波測試代碼,,,,

[cpp] view plain copy

  1. <span style="color:#33cc00;"><strong>QSqlDatabase db = QSqlDatabase::addDatabase("QODBC");  
  2.     db.setHostName("127.0.0.1");  
  3.     db.setDatabaseName("qt_chat_server_connnect");   
  4.     if (db.open())  
  5.     {  
  6.           
  7.         qDebug(("cg"));  
  8.     }  
  9.     else{  
  10.         qDebug() << qDatabases.lastError().text();  
  11.         qDebug() << QSqlDatabase::drivers();  
  12.   
  13.         qDebug() << QCoreApplication::libraryPaths();  
  14.         qDebug( ("sb"));  
  15.     }</strong></span>  

///打印cg

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