QT連接MySql數據庫 – MySQL8.0
--開發機使用Qt5.5 + msvc2010(32bit)編譯器
debug連接MySQL8.0
在 https://dev.mysql.com/downloads/mysql/ 下載Wundows,ZIP Archive(此處下載的是64位庫)
在開發包中找到libmysql.lib,libmysql.dll,拷貝到Qt安裝目錄下的編譯器位置:
例如:C:\Qt\Qt5.5.1\5.5\msvc2010\bin
在QT .pro文件里加上 QT += sql
頭文件中加入 #include <QSqlDatabase>
當出現無法找到dll導致編譯不通過時,嘗試將build目錄刪除重新編譯,因爲QT執行清除操作可能不生效
動態調用MySQL8.0 dll
將庫放在工程目錄下,動態鏈接lib,這樣生成的exe就可以拷貝到其他主機使用
MySQL8.0 dll版本問題
dll分爲32bit和64bit,由QT編譯器的版本決定。本機編譯器爲msvc2010(32bit),所以選擇32bit的庫文件(存放在百度網盤上了)
測試代碼
db = QSqlDatabase::addDatabase("QMYSQL");
db.setUserName("SMY");
db.setHostName("localhost");
db.setPort(3306);
//db.setDatabaseName("student");
db.setUserName("root");
db.setPassword("123456");
bool ok = db.open();
if(ok)
{
qDebug()<<"ok";
}
else
{
qDebug()<<"error";
return;
}