聊聊QT添加MySQL驅(qū)動(dòng)依賴的問題
在該網(wǎng)站下載你所需要的mysql依賴驅(qū)動(dòng)版本,比如我的QT版本是5.15就下5.15版的
按照你的Qt編譯版本和機(jī)器位數(shù)進(jìn)行下載,比如我的機(jī)器是64位,編譯環(huán)境是MSVC就下載qsqlmysql.dll_Qt_SQL_driver_5.15.2_MSVC2019_64-bit.zip
下載完成后將下面的整塊內(nèi)容復(fù)制
進(jìn)入D:\Qt\5.15.2\msvc2019_64\plugins(依據(jù)Qt安裝環(huán)境) 粘貼復(fù)制的文件
這時(shí)候Mysql的驅(qū)動(dòng)裝好了,用代碼測(cè)試QT現(xiàn)在支持的SQL驅(qū)動(dòng)
#include <QCoreApplication> #include <QSqlDatabase> #include <QDebug> #include <QStringList> #include <QSqlQuery> int main(int argc, char *argv[]) { QCoreApplication a(argc, argv); // 輸出可用數(shù)據(jù)庫(kù) qDebug() << "Available drivers:"; QStringList drivers = QSqlDatabase::drivers(); foreach(QString driver, drivers) qDebug() << driver; return a.exec(); }
輸出有MYSQL則說明現(xiàn)在QT支持mysql的驅(qū)動(dòng)
如果我們調(diào)用MYSQL的API還是會(huì)出現(xiàn)問題,嘗試使用以下代碼
#include <QCoreApplication> #include <QSqlDatabase> #include <QDebug> #include <QStringList> #include <QSqlQuery> int main(int argc, char *argv[]) { QCoreApplication a(argc, argv); // 打開MySQL QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL"); db.setHostName("localhost"); db.setDatabaseName("test"); db.setUserName("root"); db.setPassword("YOUR DATABASE PASSWORD"); if (!db.open()) qDebug() << "Failed to connect to root mysql admin"; else qDebug() << "open"; QSqlQuery query(db); //注意這里varchar一定要指定長(zhǎng)度,不然會(huì)出錯(cuò) query.exec("create table student(id int primary key,name varchar(20))"); query.exec("insert into student values(1,'xiaogang')"); query.exec("insert into student values(2,'xiaoming')"); query.exec("insert into student values(3,'xiaohong')"); query.exec("select id,name from student where id >= 1"); while(query.next()) { int value0 = query.value(0).toInt(); QString value1 = query.value(1).toString(); qDebug() << value0 << value1 ; } return a.exec(); }
會(huì)出現(xiàn)無法和MYSQL數(shù)據(jù)庫(kù)建立鏈接的情況
只需要把libmysql.dll添加到執(zhí)行目錄也就是.exe所在的目錄
執(zhí)行成功:
到此這篇關(guān)于QT添加MySQL驅(qū)動(dòng)依賴的文章就介紹到這了,更多相關(guān)QT mysql驅(qū)動(dòng)依賴內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
hive從mysql導(dǎo)入數(shù)據(jù)量變多的解決方案
這篇文章主要介紹了hive從mysql導(dǎo)入數(shù)據(jù)量變多的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2021-01-01mysql 選擇插入數(shù)據(jù)(包含不存在列)具體實(shí)現(xiàn)
mysql 選擇插入數(shù)據(jù)的文章會(huì)搜到很多本例特色是包含不存在列,具體實(shí)現(xiàn)如下,感興趣的朋友可以參考下,希望對(duì)大家有所幫助2013-08-08mysql開啟遠(yuǎn)程連接(mysql開啟遠(yuǎn)程訪問)
開啟MYSQL遠(yuǎn)程連接權(quán)限的方法,大家參考使用吧2013-12-12關(guān)于MySQL實(shí)現(xiàn)指定編碼遇到的坑
這篇文章主要介紹了一個(gè)關(guān)于MySQL指定編碼實(shí)現(xiàn)的小坑,文中大家需要注意如果有需要保存emoji符號(hào)的字段,記得一定要指定編碼為 utf8mb4,感興趣的朋友一起看看吧2021-10-10