ubuntu linux下應用Qt銜接MySQL數據庫的辦法。本站提示廣大學習愛好者:(ubuntu linux下應用Qt銜接MySQL數據庫的辦法)文章只能為提供參考,不一定能成為您想要的結果。以下是ubuntu linux下應用Qt銜接MySQL數據庫的辦法正文
情況解釋:
ubuntu 10.04.2
QtSDK (1.5G裝置包的誰人)
mysql5.1
1.裝置MySQL
Linux下完全的MySQL開辟須要裝置辦事器端,假如裝置客戶端也沒甚麼欠好。直接在軟件中間搜mysql,把client和server選上。
server在裝置時會提醒為root用戶設置暗碼,設一個好了。
我應用的是mysql5.1版本,用戶名暗碼存儲在一個叫mysql的數據庫裡,只要治理員級別能力看到。
假如直接在終端中輸出 mysql,能夠會提醒ERROR 1045 (28000),這是由於這時候候你是以本身用戶名拜訪數據庫,而今朝數據庫中只要一個root用戶。沒緊要,假如有需要,可以添加一個用戶出來:
mysql -uroot -p -->以root用戶登錄
grant usage on *.* to dummy@localhost; -->受權名為dummy的用戶當地登錄,這裡換成本身的用戶名便可以了
不外這時候候直接mysql只要通俗的權限,創立數據庫、操作mysql都是弗成以的,假如真有將其付與治理員權限的須要,可以本身查閱有關材料。
2.裝置Qt的MySQL驅動。
辦法一:直接sudo apt-get install libqt4-sql-mysql ,這是Qt4的mysql驅動,就不消本身費力編譯了,不外能夠會額定下載一些器械。
將 /usr/lib/qt4/plugins/sqldrivers/libqsqlmysql.so拷貝到你的QtSDK sqldrivers目次下,我其時是直接用通俗權限裝置,目次為:~/QtSDK/Desktop/Qt/473/gcc/plugins/sqldrivers
辦法二:其實你也能夠sudo apt-get download libqt4-sql-mysql,把包解緊縮,然後把外面的so文件搜出來直接拷貝到那邊。
辦法三:乖乖依照官方辦法編譯,然則貌似可行性不年夜,由於新版本的QtSDK並沒有src目次,默許也沒有mysql的驅動。
3.做個demo試一下
記得在pro文件中 QT +=那邊加上sql,不然qmake是不會去找sql的相干部門的
#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這個數據庫之前我曾經創立過了,假如銜接勝利,就會顯示Database connection established。 我是樹立的掌握台法式哈。