使用Qt5 6連線MySql

2022-03-08 07:23:52 字數 2213 閱讀 3123

最近在做畢業設計,有不少同學選擇使用qt和mysql做資料庫程式。然而,這兩種開發工具並不是非常完美的一結合就能使用的。通常qt會自帶mysql的驅動,但是,一般能直接使用的並不多。大多數部落格**都給出了mysql驅動的編譯過程。在這裡給出現成的、已經編譯好了的驅動。在可以win10、qt5.6和mysql5.5版本中適用。

連線資料庫所需要的檔案:

安裝完qt和mysql,配置好環境變數。使用下面的程式測試一下是否能連線

在conmysql.pro裡新增

1 qt       += sql
conmysql.pro

1

#ifndef dbhelper_h

2#define dbhelper_h

34 #include 5 #include 6 #include 7 #include 8 #include 9 #include 10

11class

dbhelper12;

3132

#endif

//dbhelper_h

dbhelper

1 #include "

dbhelper.h"2

3dbhelper::dbhelper()413

14bool

dbhelper::open()

1525

return

true;26

}2728void

dbhelper::close()

2934}35

3637 dbhelper* dbhelper::_dbhelper =null;

3839 dbhelper *dbhelper::getdbhelper()

4045

return

_dbhelper;

46 }

dbhelper.cpp

在邏輯檔案裡新增

dbhelper* db =dbhelper::getdbhelper();

if( !db->open())

如果提示  qmysql driver not loaded ,則需要用上述網盤裡的檔案去替換原始檔

1.將sqldriver.rar解壓後  替換掉x:\qt\qt5.6.0\5.6\mingw49_32\plugins\sqldrivers裡原有的檔案

2.將mysql路徑下的libmysql.dll或者網盤裡libmysql.dll的放入c盤的windows路徑下,在除錯程式

如果沒有提示上述紅色字樣,說明驅動載入成功,根據mysql引數修改相應的連線引數

dbhelper類解釋:

(1)建構函式裡初始化連線字串,這裡可以使用xml儲存連線引數,初始化是讀取xml檔案,方便修改內容

(2)getdbhelper函式可以獲取到該類的例項。使用單例模式,該類在程式中只成功初始化一次,以後每次都可以通過該方法獲取到這乙個例項

(3)open與close 開啟與關閉函式

附上完整的邏輯**

1

void

mainwindow::on_pushbutton_clicked()28

//邏輯**

9 qstring id = ui->lineedit->text();

10 qstring pass = ui->lineedit_2->text();

11int

n;12

qsqlquery query;

13 query.prepare("

select count(*) from logintable where id = ? and password = ?");

14 query.bindvalue(0

, id);

15 query.bindvalue(1

, pass);

16query.exec();

17while

(query.next())

1821

if( n == 1

)22 qdebug() << "

登陸成功!";

23else

24 qdebug() << "

登陸失敗!";

2526 db->close(); //

關閉資料庫

27 }

login.cpp

QT5 6 使用QWebEngineView的坑

最近有個專案用到了qt,並且需要展示乙個簡單的網頁,於是使用了 vs2013 qt5.6.3 qwebengineview 程式是64位的,在自己本機測試通過後準備發布,但在放到純淨環境下的win7上時卻在開啟網頁時就崩潰,不開啟的話一切正常。於是在本機測試32位的,發現本機也出問題了,開啟網頁就崩...

Mac端使用Qt5 14 2連線Mysql

最近學習qt,小白一枚,如有錯誤,請指出。在mac上使用qt連線資料庫mysql報錯,原因是qt中沒有和mysql的連線外掛程式。具體錯誤如下圖 第一部分 1,確定是否已經安裝好了mysql 安裝完成後終端輸入 ls usr local可以看見當前路徑下的檔案 圖中存在mysql說明安裝成功,或者檢...

Qt4連線mysql成功

之前一直在做嵌入式方面的開發,用的都是sqlite資料庫,由於專案要求,這次改為mysql資料庫,不過qt是不自帶mysql資料庫驅動的,需要自己手動編譯。我上網查詢編譯方法,可是別人的qt要麼是linux環境下的,要麼版本不一樣。不過還是在網上找到了乙個別人已經編譯好了的驅動,現跟大家分享下。qt...