亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

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

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Windows 環境下使用 Qt 連接 MySQL

發布時間:2020-09-23 23:07:52 來源:腳本之家 閱讀:231 作者:日常__ 欄目:編程語言

如果應用只需要連接遠程數據庫,那么本地不需要安裝 MySQL,只需要找到 MySQL 提供的 libmysql.dll 和libmysqld.dll 兩個動態連接庫,把他們加入到 Qt安裝目錄\5.9\mingw53_32\bin\;默認 Qt 自帶已編譯好的 qsqlmysql.dll 和 qsqlmysqld.dll (文件路徑為 Qt安裝目錄\5.9\mingw53_32\plugins\sqldrivers\ );兩者如果配套就能成功地讓 Qt 連接上 MySQL。

(我安裝的Qt 版本是 Qt 5.9.0 mingw53_32,文章中提到的一些路徑是我本機上的路徑,需要進行適當修改)

一、測試 Qt 與 MySQL 是否能正常連接

假設 Qt安裝目錄\5.9\mingw53_32\bin\  下已加入了 libmysql.dll 和 libmysqld.dll,進行以下測試。

•新建 Qt Widgets Application,修改 main.cpp 的代碼為:

 #include "mainwindow.h"
 #include <QApplication>
 #include <QtSql>
 #include <QDebug>

 int main(int argc, char *argv[])
 {
   QApplication a(argc, argv);
   MainWindow w;
   w.show();

   //建立連接
   QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL");
   db.setHostName("localhost");
   db.setPort(3306);
   db.setDatabaseName("mysql");
   db.setUserName("root");
   db.setPassword("yourPassword");   //設置數據庫連接賬號的密碼
   bool ok = db.open();
   if(ok) qDebug()<<"OK";
   else qDebug()<<"False";

   return a.exec();
 }

•構建并運行項目,查看應用程序輸出
如果輸出 OK,那到此為止了,Qt 與 MySQL 連接正常;如果輸出 False,不出意外是因為 libmysql.dll、libmysqld.dll 與 qsqlmysql.dll、qsqlmysqld.dll版本不匹配!需要對 qsqlmysql.dll、qsqlmysqld.dll 進行修改。

二、添加 MySQL 的libmysql.dll、libmysqld.dll

(注意:Qt msvc2015_64 可以使用32
位、64 位版本的 MySQL 文件,Qt mingw53_32 只能使用 32 位版本的MySQL 文件)
之前提到,如果應用只需要連接遠程數據庫,那么本地不需要安裝 MySQL,而只需要用到 MySQL 提供的動態連接庫 libmysql.dll 和 libmysqld.dll。那么如果不安裝MySQL,怎么獲取那兩個動態鏈接庫文件?可以這樣做:
•從已安裝了 MySQL 的機器上拷貝這兩個文件。
•本地臨時安裝 MySQL,然后保留下需要的文件,卸載 MySQL。

安裝 MySQL 可以去官網下載安裝包,不過我不太喜歡這樣做,因為現在 MySQL 的安裝組件太多太雜,很多東西都是不必要。推薦去一些開源鏡像站上下載對應版本,比如說 Tuna、USTC。臨時安裝 MySQL 之后先不急著卸載,后面編譯 MySQL 驅動會用到。

三、重新編譯 qsqlmysql.dll、qsqlmysqld.dll

編譯 Qt 關于 MySQL 的驅動需要用到 Qt 的源碼,獲取 Qt 的源碼可以使用 MaintenanceTool.exe 下載 Src,編譯驅動用到的工程文件路徑為 Qt安裝目錄\5.9\Src\qtbase\src\plugins\sqldrivers\mysql\ 。源碼差不多有2G的大小,而編譯驅動需要用到的工程文件大約幾十M,要是存儲空間和網速不給力,建議只下載
qtbase-opensource-src-5.9.0.zip,需要的工程在 qtbase-opensource-src-5.9.0\src\plugins\sqldrivers\mysql\ 。

用 Qt 打開上面提到的編譯驅動用到的工程文件,在 mysql.pro 末尾加上這兩句:
INCLUDEPATH += mysql安裝目錄\include
LIBS += -Lmysql安裝目錄\lib\ -llibmysql

構建并運行項目會在 C 盤下生成 plugins\sqldrivers 目錄,里面包含 qsqlmysql.dll、qsqlmysqld.dll 兩個文件,將它們復制一份覆蓋原先的兩個文件即可。再次進行 Qt 與 MySQL 的連接測試,成功了沒有?

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

漠河县| 广丰县| 利川市| 西乌| 崇礼县| 昌江| 绍兴县| 斗六市| 崇左市| 高邮市| 文成县| 大连市| 呈贡县| 辰溪县| 西丰县| 丽江市| 南昌县| 元朗区| 诸城市| 汨罗市| 丰镇市| 绥宁县| 泸西县| 吴桥县| 高邑县| 虎林市| 宾阳县| 三穗县| 佛教| 阿鲁科尔沁旗| 玉林市| 曲靖市| 钦州市| 资兴市| 长丰县| 阜南县| 五台县| 延安市| 禄丰县| 许昌县| 互助|