解析QT與數(shù)據(jù)庫(kù)連接環(huán)境搭建
QT與數(shù)據(jù)庫(kù)連接環(huán)境搭建是本文要介紹的內(nèi)容,主要是來了解QT連接數(shù)據(jù)庫(kù)的環(huán)境搭建,具體內(nèi)容的實(shí)現(xiàn)來看本文詳解。要做數(shù)據(jù)庫(kù)實(shí)驗(yàn) 要求是在圖形界面下對(duì)數(shù)據(jù)庫(kù)進(jìn)行操作,介于我對(duì)MFC那復(fù)雜的東西有些恐懼,所以選擇用QT這種看起來不復(fù)雜的東西來寫。
遇到的問題
1、qmake的各種erro
作為一個(gè)菜鳥 我只知道m(xù)ake 不知道什么是qmake 猜猜看應(yīng)該是QT的make 哈哈,http://www.kuqin.com/qtdocument/index.html 這個(gè)網(wǎng)址上面有個(gè)qmake的鏈接,詳細(xì)的講了qmake 很受益 因?yàn)橹鞍惭bQT的時(shí)候很多環(huán)境變量都沒有設(shè)置對(duì),所以qmake是不能用的 這個(gè)給我造成了很大的麻煩。。。后來發(fā)現(xiàn)環(huán)境變量要這么設(shè)置
- 用戶變量名: QMAKESPEC
- 值: C:Qt2010.05qtmkspecswin32-msvc2008(我的qt直接是安裝在c:上的)
這個(gè)設(shè)置的時(shí)候比較傻,之前一直提示說找不到,原來是因?yàn)槲野袰:后面的忘記寫了。。。還惆悵了一會(huì)。。。sigh
- 用戶變量名: QTDIR
- 值: C:Qt2010.05
還要記得把qt安裝的mingw的path在環(huán)境變量中設(shè)置好
2、關(guān)于qt的include 和 sql的include 還有l(wèi)ib的設(shè)置問題
當(dāng)把環(huán)境變量什么的搞定之后就用網(wǎng)上查到的辦法 就是什么什么"INCLUDE+=XXXXX" "LIBS+=XXXXX"這個(gè)主要就是個(gè)路徑問題,每個(gè)人安裝的MySQL和QT的版本都不一樣 include和 lib的路徑也不一樣需要花幾秒鐘找一下
3、設(shè)置好了Inlcude 和lib 之后到 qt的pluginssqldriversmysql下面 在cmd形式下qmake 然后 成功~高興一下~~但不能高興的太早
4、接下來的問題是在qt的main函數(shù)中寫個(gè)程序
下面是例子:
- #include <QSqlDatabase>
- #include <QSqlQuery>
- #include <QSqlError>
- #include <QApplication>
- #include <QSqlDatabase>
- #include <QStringList>
- #include <QMessageBox>
- #include <QDebug>
- int main(int argc, char* argv[])
- {
- QApplication app(argc, argv);
- qDebug() << "Available drivers:";
- QStringList drivers = QSqlDatabase::drivers();
- foreach(QString driver, drivers)
- qDebug() << "/t" << driver;
- QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL");
- qDebug() << "MYSQL driver valid?" << db.isValid();
- return 0;
- }
編譯的結(jié)果說 QSqlDatabase 沒有這個(gè)路徑或者文件 這個(gè)問題的解決辦法是來到當(dāng)前工程的文件夾下 找到這個(gè)文件對(duì)應(yīng)的.pro 文件 在***面加一條QT+=SQL就行了~后來還發(fā)現(xiàn)一個(gè)問題 在建立QT的工程的時(shí)候 如果首先選擇的是qdialog 那么依然毅然找不到qsqldatabase 但是我沒有去深究原因 就直接用了qmainwindow 的那個(gè)來建立工程了
小結(jié):解析QT與數(shù)據(jù)庫(kù)連接環(huán)境搭建的內(nèi)容介紹完了,希望通過本文的學(xué)習(xí)能對(duì)你有所幫助!