最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

Qt6.3.1連接數(shù)據(jù)庫(kù)MySql8.0

2023-08-31 22:29 作者:T___T___  | 我要投稿

前言?

由于這個(gè)學(xué)期比較少,空閑時(shí)間比較多。平時(shí)就是接接Python爬蟲(chóng)的單子,但一想到我將來(lái)不會(huì)往這個(gè)方向上發(fā)展,所以又想著怎么提高自己計(jì)算機(jī)最基礎(chǔ)的基本的幾門(mén)功課的實(shí)力。于是,就想著用Qt做一個(gè)能夠連接數(shù)據(jù)庫(kù)的學(xué)生成績(jī)管理系統(tǒng)的程序。既能提高自己對(duì)數(shù)據(jù)庫(kù)的熟練程度,又可以加深自己對(duì)C++的理解,何樂(lè)而不為之呢?

其實(shí),我是那種學(xué)的很雜的同學(xué),我不愿停留在學(xué)校教的那么點(diǎn)東西,什么都會(huì)一點(diǎn),又什么都不甚了解,知其然而不知其所以然。我深知這樣只會(huì)將路子越走越窄,但又苦于沒(méi)有明確的方向,所以能做的就只有不斷去提高自己對(duì)計(jì)算機(jī)最基礎(chǔ)的幾門(mén)課程的熟練程度和理解深度。這個(gè)系列應(yīng)該會(huì)有好幾期,感興趣的同學(xué)可以和我一起了解和討論這個(gè)系統(tǒng)開(kāi)發(fā)的詳細(xì)細(xì)節(jié),當(dāng)然也非常歡迎各位大佬對(duì)我文章的斧正。廢話(huà)說(shuō)了這么多下面開(kāi)始正題!

正題

我使用的是Qt6.3.1和MySql8.0版本,據(jù)網(wǎng)上說(shuō)Qt6以后的版本好像是不帶MySql的驅(qū)動(dòng),也沒(méi)有可以自己進(jìn)行編譯驅(qū)動(dòng)的文件了。只能去網(wǎng)上下載其他大佬已經(jīng)編譯好的驅(qū)動(dòng),這也是極好的。一想到我當(dāng)初用CMake編譯OpenCV的.dll文件,然后配置到Qt上就后怕,我感覺(jué)那玩意純靠運(yùn)氣,反正我不知道失敗了多少次,最后終于在改了無(wú)數(shù)次參數(shù)后終于編譯成功。

Qt的MySql驅(qū)動(dòng)下載地址:

Releases · thecodemonkey86/qt_mysql_driver · GitHub

大家可以根據(jù)自己Qt的版本進(jìn)行選擇下載那個(gè)驅(qū)動(dòng),Qt版本查看方式如下圖所示


順便說(shuō)一下MySql版本的查看方式,當(dāng)然前提是你已經(jīng)配置了環(huán)境變量,否則就需要進(jìn)入到MySql的bin目錄下,按住Shift然后鼠標(biāo)右鍵點(diǎn)擊在此打開(kāi)Poweshell窗口


輸入命令行:

mysql -V


還有一個(gè)注意事項(xiàng)就是注意編譯器的位數(shù)和MySql的位數(shù)要是相同的,我的就都是64位的。

下載好后你會(huì)得到一個(gè)壓縮包,將壓縮包解壓


這里注意,下載你對(duì)用編譯器的驅(qū)動(dòng),我這里用的編譯器是mingw,下載的也是對(duì)應(yīng)的驅(qū)動(dòng)。

然后將下面三個(gè)文件復(fù)制到mingw的bin路徑下


將子文件夾也就是sqldrivers中的兩個(gè)文件復(fù)制到mingw的sqldrivers下面


如果是qmake,再在你新建的Qt文件的加一句

QT += sql

如果是CMke

find_package(Qt6 COMPONENTS Sql REQUIRED) target_link_libraries(test_QtConnectMySQL PRIVATE Qt6::Sql)

到這里配置就結(jié)束了。

創(chuàng)建數(shù)據(jù)庫(kù)和連接數(shù)據(jù)庫(kù)

想要連接數(shù)據(jù)庫(kù)就需要有對(duì)應(yīng)的數(shù)據(jù)庫(kù),所以見(jiàn)需要先創(chuàng)建一個(gè)數(shù)據(jù)庫(kù)


test就是我們接下來(lái)要用到的數(shù)據(jù)庫(kù)

然后就是在Qt新建項(xiàng)目里面連接數(shù)據(jù)庫(kù),直接上代碼

main.cpp

#include "mainwindow.h"

#include <QApplication>

#include<QSqlDatabase>

#include<QDebug>

int main(int argc, char *argv[])

{ ? ?QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL"); ? ??????????????db.setHostName("127.0.0.1"); ?//連接本地主機(jī) ? ?

????? ? ?db.setPort(3306);//端口號(hào)如果安裝時(shí)沒(méi)有自己設(shè)置就是默認(rèn)的3306,如果設(shè)置了就是你自己設(shè)置的端口號(hào) ? ?

????? ? ?db.setDatabaseName("test");//你要連接的數(shù)據(jù)庫(kù)的名字我的是test ? ?db.setUserName("root");//你的用戶(hù)名我的是root ? ?db.setPassword("123456");//你的密碼我的是123456 ? ?

????? ???bool ok = db.open(); ? ?

????? ? ?if (ok){ ? ? ? ? qDebug() << "link success"; ? ?} ? ?

????? ? ?else { ? ? ? ? qDebug() << ?"link failed"; ? ?} ? ?

????? ? ?QApplication a(argc, argv); ? ?

????? ? ?MainWindow w; ??

????? ? ??w.show(); ? ?

????? ???return a.exec();?

}

然后直接點(diǎn)擊運(yùn)行,如果連接成功就會(huì)如下圖所示


注意事項(xiàng)

注意MySql的位數(shù)和編譯器的位數(shù)盡量保持一致,不然可能出錯(cuò)

注意下載對(duì)應(yīng)編譯器的驅(qū)動(dòng),是mingw就下mingw的驅(qū)動(dòng),是msvc就下msvc的驅(qū)動(dòng)


如有錯(cuò)誤,歡迎各位同學(xué)指正。

此文章僅用于學(xué)習(xí),請(qǐng)勿用于違法犯罪。


Qt6.3.1連接數(shù)據(jù)庫(kù)MySql8.0的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
蒙自县| 孟津县| 康马县| 宣威市| 兴山县| 大渡口区| 保定市| 宜兰市| 泗水县| 聊城市| 黔东| 平利县| 加查县| 米脂县| 甘谷县| 云南省| 建平县| 临高县| 阿拉善左旗| 西平县| 京山县| 石阡县| 乌恰县| 赤水市| 冷水江市| 小金县| 三穗县| 昆明市| 盐边县| 凤庆县| 桂平市| 谢通门县| 五河县| 二连浩特市| 彩票| 巴青县| 嘉兴市| 石渠县| 平罗县| 太保市| 北安市|