本篇文章給大家分享的是有關(guān)怎么在linux系統(tǒng)中使用Qt連接MySQL數(shù)據(jù)庫 ,小編覺得挺實用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
創(chuàng)新互聯(lián)建站是專業(yè)的雨山網(wǎng)站建設(shè)公司,雨山接單;提供成都網(wǎng)站設(shè)計、網(wǎng)站建設(shè),網(wǎng)頁設(shè)計,網(wǎng)站設(shè)計,建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進行雨山網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團隊,希望更多企業(yè)前來合作!
環(huán)境說明:
QtSDK
mysql5.1
1.安裝MySQL
Linux下完整的MySQL開發(fā)需要安裝服務(wù)器端,如果安裝客戶端也沒什么不好。直接在軟件中心搜mysql,把client和server選上。
server在安裝時會提示為root用戶設(shè)置密碼,設(shè)一個好了。
我使用的是mysql5.1版本,用戶名密碼存儲在一個叫mysql的數(shù)據(jù)庫里,只有管理員級別才能看到。
如果直接在終端中輸入 mysql,可能會提示ERROR 1045 (28000),這是因為這時候你是以自己用戶名訪問數(shù)據(jù)庫,而目前數(shù)據(jù)庫中只有一個root用戶。沒關(guān)系,如果有必要,可以添加一個用戶進去:
mysql -uroot -p -->以root用戶登錄
grant usage on *.* to dummy@localhost; -->授權(quán)名為dummy的用戶本地登錄,這里換成自己的用戶名就可以了
不過這時候直接mysql只有普通的權(quán)限,創(chuàng)建數(shù)據(jù)庫、操作mysql都是不可以的,如果真有將其賦予管理員權(quán)限的需要,可以自己查閱有關(guān)資料。
2.安裝Qt的MySQL驅(qū)動。
方法一:直接sudo apt-get install libqt4-sql-mysql ,這是Qt4的mysql驅(qū)動,就不用自己費勁編譯了,不過可能會額外下載一些東西。
將 /usr/lib/qt4/plugins/sqldrivers/libqsqlmysql.so拷貝到你的QtSDK sqldrivers目錄下,我當(dāng)時是直接用普通權(quán)限安裝,目錄為:~/QtSDK/Desktop/Qt/473/gcc/plugins/sqldrivers
方法二:其實你也可以sudo apt-get download libqt4-sql-mysql,把包解壓縮,然后把里面的so文件搜出來直接拷貝到那里。
方法三:乖乖按照官方方法編譯,但是貌似可行性不大,因為新版本的QtSDK并沒有src目錄,默認也沒有mysql的驅(qū)動。
3.做個demo試一下
記得在pro文件中 QT +=那里加上sql,否則qmake是不會去找sql的相關(guān)部分的
#include#include #include 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這個數(shù)據(jù)庫之前我已經(jīng)創(chuàng)建過了,如果連接成功,就會顯示Database connection established。
以上就是怎么在linux系統(tǒng)中使用Qt連接MySQL數(shù)據(jù)庫 ,小編相信有部分知識點可能是我們?nèi)粘9ぷ鲿姷交蛴玫降?。希望你能通過這篇文章學(xué)到更多知識。更多詳情敬請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。