QT接続MySQLレコード

9764 ワード

QTのMySQL接続には多くの時間がかかりました.今は整理の糸口を作ります.
ポイントはhttp://www.linuxso.com/architecture/37897.htmlを参考にしました.
このスレは参考になりました.http://www.seppemagiels.com/blog/create-mysql-driver-qt-
 
1.Qtsourceを設置する
    位置は図のようです.このsourceは初めはなかったです.実は長い間悩んでいました.どうしてQTというカバンは全部できないですか?兄はオンラインで降ります.
 
 
2.ディレクトリを作成します
    MySQLのMySQL Server 5.5ディレクトリのincludeとlibフォルダをCのルートディレクトリの下に置いて、このようにして便利に操作して、ディレクトリにスペースがないようにします.

 
3.ドライバをコンパイルします
    ディレクトリC:\QtSDK\QtSources\4.8.0\src\plugins\sqldrivers\mysql\下に入力します.
qmake「INCLUDEPATH+=c:\qtmysql\include」「LIBS+=c:\mysql\lib\libmysql.lib」-o Make file mysql.pro 
そしてmingw 32-make
    またqmake「INCLUDEPATH+=c:\qtmysql\include」「LIBS+=c:\mysql\lib\libmysql.lib」-o Makefile mysql.pro「CONFIG+=release」
そしてmingw 32-make
 
4.ファイルを移動します
    C:\QtSDK\QtSources\4.80\src\plugins\sqldrivers\mysql\debugの下でlibqlmysql.4 aを見つけました. and qsql mysqld 4 dlをこのパスにコピーします.
    C:\QtSDK\Desktop\Qt\4.8.0\mingw\plugs\sqldrivers
C:\QtSDK\QtSources\4.7.3\src\plugins\sqldrivers\mysql\releaseで見つけました. qsql mysql 4.dlとlibql mysql 4 aをこのパスにコピーします.
    C:\QtSDK\Desktop\Qt\4.7.3\mingw\plugs\sqldrivers
mysql\libからlibmysql.dllを見つけてc:\windowsにコピーします.
5.テスト
    プロジェクトを新規作成する際、プロジェクトに含まれているプロジェクトファイルにQT+=sqlを追加します.    //ここは小さい必要があります
Qt UIアプリケーションを作成します.コードは以下の通りです.
1.  #include <QtGui/QApplication>
2.  #include<QtSql>
3.  #include<QLabel>
4.  #include<QSqlDatabase>
5.  bool createConnection()
6.  {
7.      QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL");
8.      db.setHostName("localhost");
9.      db.setDatabaseName("radar");
10.     db.setUserName("root");
11.     db.setPassword("********");
12.     if (!db.open())
13.         return false;
14.     db.close();
15.     return true;
16. }
17. int main(int argc, char *argv[])
18. {
19.     QApplication a(argc, argv);
20.     QLabel* label = new QLabel;
21.     label->setWindowTitle("QT Database");
22.     if (createConnection())
23.         label->setText("connection success...");
24.     else
25.         label->setText("connection failed...");
26.     label->show();
27.     
28.     return a.exec();
29. }
6.結果
    最後にMySQLのサービス配置に時間がかかりました.これまでやってきた結果ですが、明日はこのセットをパソコンにセットして、次の仕事はOracleに接続して調べることです.
                                    
 
 
 
メモを知るために発行する