溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

怎么在linux系統(tǒng)中使用Qt連接MySQL數(shù)據(jù)庫(kù)

發(fā)布時(shí)間:2021-03-23 14:53:09 來(lái)源:億速云 閱讀:711 作者:Leah 欄目:系統(tǒng)運(yùn)維

本篇文章給大家分享的是有關(guān)怎么在linux系統(tǒng)中使用Qt連接MySQL數(shù)據(jù)庫(kù) ,小編覺(jué)得挺實(shí)用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說(shuō),跟著小編一起來(lái)看看吧。

環(huán)境說(shuō)明:
QtSDK
mysql5.1
1.安裝MySQL
Linux下完整的MySQL開(kāi)發(fā)需要安裝服務(wù)器端,如果安裝客戶端也沒(méi)什么不好。直接在軟件中心搜mysql,把client和server選上。
server在安裝時(shí)會(huì)提示為root用戶設(shè)置密碼,設(shè)一個(gè)好了。
我使用的是mysql5.1版本,用戶名密碼存儲(chǔ)在一個(gè)叫mysql的數(shù)據(jù)庫(kù)里,只有管理員級(jí)別才能看到。
如果直接在終端中輸入 mysql,可能會(huì)提示ERROR 1045 (28000),這是因?yàn)檫@時(shí)候你是以自己用戶名訪問(wèn)數(shù)據(jù)庫(kù),而目前數(shù)據(jù)庫(kù)中只有一個(gè)root用戶。沒(méi)關(guān)系,如果有必要,可以添加一個(gè)用戶進(jìn)去:
mysql -uroot -p -->以root用戶登錄
grant usage on *.* to dummy@localhost; -->授權(quán)名為dummy的用戶本地登錄,這里換成自己的用戶名就可以了
不過(guò)這時(shí)候直接mysql只有普通的權(quán)限,創(chuàng)建數(shù)據(jù)庫(kù)、操作mysql都是不可以的,如果真有將其賦予管理員權(quán)限的需要,可以自己查閱有關(guān)資料。
2.安裝Qt的MySQL驅(qū)動(dòng)。
方法一:直接sudo apt-get install libqt4-sql-mysql ,這是Qt4的mysql驅(qū)動(dòng),就不用自己費(fèi)勁編譯了,不過(guò)可能會(huì)額外下載一些東西。
將 /usr/lib/qt4/plugins/sqldrivers/libqsqlmysql.so拷貝到你的QtSDK sqldrivers目錄下,我當(dāng)時(shí)是直接用普通權(quán)限安裝,目錄為:~/QtSDK/Desktop/Qt/473/gcc/plugins/sqldrivers
方法二:其實(shí)你也可以sudo apt-get download libqt4-sql-mysql,把包解壓縮,然后把里面的so文件搜出來(lái)直接拷貝到那里。
方法三:乖乖按照官方方法編譯,但是貌似可行性不大,因?yàn)樾掳姹镜腝tSDK并沒(méi)有src目錄,默認(rèn)也沒(méi)有mysql的驅(qū)動(dòng)。
3.做個(gè)demo試一下
記得在pro文件中 QT +=那里加上sql,否則qmake是不會(huì)去找sql的相關(guān)部分的

#include <QtCore/QCoreApplication> 
#include <QSqlDatabase> 
#include <QDebug> 
int main(int argc, char *argv[]) 
{ 
QCoreApplication a(argc, argv); 
QSqlDatabase db=QSqlDatabase::addDatabase("QMYSQL"); 
db.setHostName("localhost"); 
db.setDatabaseName("study"); 
db.setUserName("root"); 
db.setPassword("tyh"); 
if(!db.open()){ 
qDebug()<<"Unable to open database"; 
}else{ 
qDebug()<<"Database connection established"; 
} 
return a.exec(); 
}


這里study這個(gè)數(shù)據(jù)庫(kù)之前我已經(jīng)創(chuàng)建過(guò)了,如果連接成功,就會(huì)顯示Database connection established。 

以上就是怎么在linux系統(tǒng)中使用Qt連接MySQL數(shù)據(jù)庫(kù) ,小編相信有部分知識(shí)點(diǎn)可能是我們?nèi)粘9ぷ鲿?huì)見(jiàn)到或用到的。希望你能通過(guò)這篇文章學(xué)到更多知識(shí)。更多詳情敬請(qǐng)關(guān)注億速云行業(yè)資訊頻道。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI