最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

QT5.12連接MySQL的實(shí)現(xiàn)

 更新時(shí)間:2025年02月25日 09:38:28   作者:SweerItTer  
本文主要介紹了QT5.12連接MySQL的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

為了方便和簡(jiǎn)潔,我選擇的是最簡(jiǎn)單的方法去完成(雖然因?yàn)橐欢褕?bào)錯(cuò)搞崩了心態(tài))

1.下載并安裝MySQL

MySQL官網(wǎng)

選擇Downloads

下拉找到社區(qū)版

因?yàn)槭窃趙indow上運(yùn)行MySQL,便選擇windows安裝包

這個(gè)界面可以選擇版本,默認(rèn)就行,兩里面挑一個(gè)(網(wǎng)絡(luò)穩(wěn)定可以選第一個(gè))

這里選擇第二個(gè)下載

只是白嫖并且沒有社區(qū)要求的話,直接選這個(gè)就行

下好后會(huì)有一個(gè)msi文件,雙擊運(yùn)行,之后會(huì)在C:\Program Files (x86)\MySQL下安裝一個(gè)

MySQL Installer for Windows

(現(xiàn)在用不到,重裝和安裝別的版本的時(shí)候會(huì)用到)

選擇需要的版本(第一次運(yùn)行可能只有一個(gè)8.0),點(diǎn)擊右箭頭,選中版本

這里會(huì)有自定義安裝路徑和數(shù)據(jù)庫(kù)路徑的設(shè)置,這里修改文件夾名字里的空格為-(或者默認(rèn))

一路下一步到這里

(因?yàn)橐呀?jīng)裝了8.0,3306口占用了)

這里也是下一步

這里輸入root用戶的密碼,記得住就行

下一步,一直點(diǎn)點(diǎn)到結(jié)束

2.配置環(huán)境變量

復(fù)制mysql的安裝路徑,這里是C:\Program Files\MySQL\MySQL-Server-8.0

win+i打開設(shè)置>單擊系統(tǒng)>下拉點(diǎn)擊系統(tǒng)信息>在設(shè)備規(guī)格單擊高級(jí)系統(tǒng)設(shè)置

變量名無所謂,夠直觀就行(中文不行)

根據(jù)序號(hào)點(diǎn)擊,在第三步,新建的是你自己的變量名,且記住帶百分號(hào)  %<變量名>%/bin(不打碼了,懶)

然后win+r,輸入cnm,鍵入MySQL,回車,不出意料,應(yīng)該是這樣的

這時(shí)鍵入命令

mysql -uroot -p

輸入安裝時(shí)設(shè)置的密碼,

3.QT部分

前提條件

安裝時(shí)選擇了source,驗(yàn)證安沒安裝,只要打開qt的安裝目錄,選擇版本號(hào)文件夾,看看有沒有src文件夾

這里或許會(huì)有別的什么文件夾,不影響,有src文件夾,就繼續(xù),沒有就下吧(建議直接重裝)

1.復(fù)制MySQL安裝目錄

2.打開mysql.pro  路徑一般在

..\Src\qtbase\src\plugins\sqldrivers\mysql

前面的兩個(gè)點(diǎn)是你的qt版本號(hào)目錄

雙擊.pro文件

修改如下(復(fù)制粘貼就行)

TARGET = qsqlmysql

HEADERS += $$PWD/qsql_mysql_p.h
SOURCES += $$PWD/qsql_mysql.cpp $$PWD/main.cpp

#QMAKE_USE += mysql

OTHER_FILES += mysql.json

PLUGIN_CLASS_NAME = QMYSQLDriverPlugin
include(../qsqldriverbase.pri)

win32:LIBS  += "C:\Program Files\MySQL\MySQL-Server-8.0\lib\libmysql.lib"
INCLUDEPATH += "C:\Program Files\MySQL\MySQL-Server-8.0\include"

DESTDIR = ../mysql/lib/

這里需要根據(jù)具體情況修改的是這里的兩個(gè)路徑

你需要把C:\Program Files\MySQL\MySQL-Server-8.0這一坨換成第一步復(fù)制的mysql路徑

修改完后選擇qsqldriverbase

修改 qsqldriverbase.pri       

QT  = core core-private sql-private

# For QMAKE_USE in the parent projects.
#include($$shadowed($$PWD)/qtsqldrivers-config.pri)
include(./configure.pri)

PLUGIN_TYPE = sqldrivers
load(qt_plugin)

DEFINES += QT_NO_CAST_TO_ASCII QT_NO_CAST_FROM_ASCII

這里注釋了第4行,追加了第5行

這里準(zhǔn)備就緒后先別急

1.先檢查環(huán)境里是否包含qt安裝目錄下的bin文件夾(運(yùn)行編譯器必要的)

2.返回上一級(jí)目錄,檢查是否有build開頭的文件夾(有就刪了)

到這,單擊小錘子

如果沒有報(bào)錯(cuò),build的綠條會(huì)一路到底

右鍵pro文件,在資源管理器里打開

不出意外,會(huì)出現(xiàn)一個(gè)lib文件夾

打開它

復(fù)制dll文件

打開目錄  D:\Qt\Qt5.12.12\5.12.12\msvc2017_64\plugins\sqldrivers,粘貼文件:

再到MySQL安裝目錄里C:\Program Files\MySQL\MySQL-Server-8.0\lib,復(fù)制  libmysql.dll和libmysql.lib  到  D:\Qt\Qt5.12.12\5.12.12\msvc2017_64\bin

到這,差不多了(理論上)

重啟qt

測(cè)試

寫一下簡(jiǎn)單的鏈接數(shù)據(jù)庫(kù)的代碼

#include "widget.h"
#include "ui_widget.h"

#include <QSqlDatabase>
#include <QSqlError>
#include <QDebug>

Widget::Widget(QWidget *parent)
	: QWidget(parent)
	, ui(new Ui::Widget)
{
	ui->setupUi(this);

	QSqlDatabase db1 = QSqlDatabase();
	db = db1.addDatabase("QMYSQL");

	db.setHostName("127.0.0.1");
	db.setPassword("root");
	db.setUserName("root");
	db.setDatabaseName("sys");

	if(!db.open()){
		qDebug() << db.lastError().text();
	}
	else{
		qDebug() << "OK";
		return;
	}
}

Widget::~Widget()
{
	delete ui;
}

運(yùn)行測(cè)試

補(bǔ)充

如果有看部分qt教學(xué)課程,看到代碼是

QSqlDatabase db = QSqlDatabase();
db.addDatabase("QMYSQL");

這會(huì)報(bào)錯(cuò),“Driver not loaded Driver not loaded”

這段代碼的問題在于,首先創(chuàng)建了一個(gè) QSqlDatabase 對(duì)象的實(shí)例,但沒有給它傳遞任何參數(shù)。這意味著沒有指定要使用的數(shù)據(jù)庫(kù)驅(qū)動(dòng)。然后,使用 addDatabase() 方法添加一個(gè)數(shù)據(jù)庫(kù)驅(qū)動(dòng),但這并不會(huì)給 db 對(duì)象創(chuàng)建一個(gè)新的連接。相反,它會(huì)返回一個(gè)新的 QSqlDatabase 對(duì)象,而該對(duì)象才是我們真正需要的

還有另一種方法

QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL");

一行解決,簡(jiǎn)單明了

到這應(yīng)該就沒問題了

到此這篇關(guān)于QT5.12連接MySQL的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)QT5.12連接MySQL內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多

相關(guān)文章

  • C++實(shí)現(xiàn)多人聊天室

    C++實(shí)現(xiàn)多人聊天室

    這篇文章主要為大家詳細(xì)介紹了C++實(shí)現(xiàn)多人聊天室,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-06-06
  • C++實(shí)現(xiàn)N個(gè)骰子的點(diǎn)數(shù)算法

    C++實(shí)現(xiàn)N個(gè)骰子的點(diǎn)數(shù)算法

    這篇文章主要介紹了C++實(shí)現(xiàn)N個(gè)骰子的點(diǎn)數(shù)算法,用兩種方法實(shí)現(xiàn)了該功能,是非常實(shí)用的技巧,需要的朋友可以參考下
    2014-09-09
  • C++中新手容易犯的十種編程錯(cuò)誤匯總

    C++中新手容易犯的十種編程錯(cuò)誤匯總

    一段C語言代碼,在編譯、鏈接和運(yùn)行的各個(gè)階段都可能會(huì)出現(xiàn)問題,下面這篇文章主要給大家介紹了關(guān)于C++中新手容易犯的十種編程錯(cuò)誤的相關(guān)資料,需要的朋友可以參考下
    2021-10-10
  • C語言實(shí)現(xiàn)直角坐標(biāo)轉(zhuǎn)換為極坐標(biāo)的方法

    C語言實(shí)現(xiàn)直角坐標(biāo)轉(zhuǎn)換為極坐標(biāo)的方法

    這篇文章主要介紹了C語言實(shí)現(xiàn)直角坐標(biāo)轉(zhuǎn)換為極坐標(biāo)的方法,涉及C語言進(jìn)行三角函數(shù)與數(shù)值運(yùn)算相關(guān)操作技巧,需要的朋友可以參考下
    2017-09-09
  • 深入理解 Qt 中的事件循環(huán)

    深入理解 Qt 中的事件循環(huán)

    Qt 事件循環(huán)是 GUI 應(yīng)用響應(yīng)各類操作的核心機(jī)制,通過持續(xù)處理事件隊(duì)列中的事件來實(shí)現(xiàn)異步響應(yīng),本文解析了事件循環(huán)的工作原理,下面就來詳細(xì)的介紹一下,感興趣的可以了解一下
    2026-02-02
  • C++超詳細(xì)講解內(nèi)存空間分配與this指針

    C++超詳細(xì)講解內(nèi)存空間分配與this指針

    this?指針在C++類和對(duì)象中是個(gè)很方便實(shí)用的關(guān)鍵字,可以簡(jiǎn)化對(duì)象成員屬性的調(diào)用,使代碼表達(dá)的含義更加準(zhǔn)確;在之前的學(xué)習(xí)中我們都可以判斷變量所占內(nèi)存空間大小,那么我們創(chuàng)建的類對(duì)象所占的內(nèi)存空間怎么計(jì)算呢?想知道this的妙用和類對(duì)象占用的內(nèi)存空間就來跟我學(xué)習(xí)吧
    2022-05-05
  • 一文搞懂C++11萬能引用和右值引用

    一文搞懂C++11萬能引用和右值引用

    本文主要介紹了C++11萬能引用和右值引用,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • 關(guān)于C++的強(qiáng)制類型轉(zhuǎn)換淺析

    關(guān)于C++的強(qiáng)制類型轉(zhuǎn)換淺析

    C++的強(qiáng)制類型轉(zhuǎn)換是我們?cè)谌粘i_發(fā)中經(jīng)常會(huì)遇到的,下面這篇文章主要給大家介紹了關(guān)于C++強(qiáng)制類型轉(zhuǎn)換的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。
    2017-09-09
  • C/C++ 中 mdspan 介紹與使用示例

    C/C++ 中 mdspan 介紹與使用示例

    mdspan是C++23引入的多維數(shù)組視圖,不管理內(nèi)存僅提供視圖,支持任意維度和靈活布局,適用于科學(xué)計(jì)算等領(lǐng)域,其優(yōu)點(diǎn)包括零成本抽象、類型安全和可組合性,但需確保底層數(shù)據(jù)有效且編譯器支持,本文介紹C/C++ 中 mdspan 介紹與使用,感興趣的朋友一起看看吧
    2025-07-07
  • C語言魔塔游戲的實(shí)現(xiàn)代碼

    C語言魔塔游戲的實(shí)現(xiàn)代碼

    這篇文章主要介紹了C語言魔塔游戲的實(shí)現(xiàn)代碼,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-02-02

最新評(píng)論

定边县| 类乌齐县| 来宾市| 余江县| 白河县| 临潭县| 阿尔山市| 万全县| 剑阁县| 太康县| 揭阳市| 会同县| 涿鹿县| 云阳县| 淮阳县| 渭南市| 达日县| 门头沟区| 昌邑市| 鹤山市| 芒康县| 洛南县| 锡林浩特市| 铜山县| 革吉县| 太谷县| 长武县| 台南市| 化德县| 公安县| 黄大仙区| 弋阳县| 扎鲁特旗| 阳山县| 阿克苏市| 昌平区| 锦屏县| 当阳市| 内乡县| 恩平市| 松滋市|