QT5.13.2 配置MYSQL8.0

1.安装MYSQL8.0

可参考https://blog.csdn.net/zhouzezhou/article/details/52446608

安装时注意若不选Development Components  将无法生产include文件夹和相关的lib库。

2.编译mysql驱动

Qt5.13.2 安装时选上src,因为要自已编译mysql plugins

用QtCreate 打开 C:\Qt\Qt5.13.2\5.13.2\Src\qtbase\src\plugins\sqldrivers\mysql\mysql.pro

修改成如下:

TARGET = qsqlmysql
 
HEADERS += $$PWD/qsql_mysql_p.h
SOURCES += $$PWD/qsql_mysql.cpp $$PWD/main.cpp
 
#QMAKE_USE += mysql
 
OTHER_FILES += mysql.json
 
PLUGIN_CLASS_NAME = QMYSQLDriverPlugin
include(../qsqldriverbase.pri)
 
INCLUDEPATH += "C:/Program Files/MySQL/MySQL Server 8.0/include"
LIBS += "C:/Program Files/MySQL/MySQL Server 8.0/lib/libmysql.lib"
 

之后编译,编译成功后会在C盘(QT根目录盘符)生成 C:\plugins\sqldrivers 和 C:\mkspecs目录,将C:\plugins\sqldrivers目录下的的libqsqlmysql.a  libqsqlmysqld.a  qsqlmysql.dll  qsqlmysqld.dll文件复制到 C:\Qt\Qt5.13.1\5.13.1\mingw73_64\plugins\sqldrivers (Qt安装时我选的编译工具为mingw)
将C:\mkspecs目录下的文件复制到C:\Qt\Qt5.13.1\5.13.1\mingw73_64\mkspecs

3.QT 添加代码:.pro文件中添加QT += sql     注意项目为mingw_64 编译,因为mysql8.0也是64位。此步骤可先执行,没安装mysql驱动不显示QMYSQL。

        QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL"); //数据库对象
        db.setHostName("127.0.0.1"); //数据库服务器IP
        db.setUserName("root"); //数据库用户名
        db.setPassword("123456"); //数据库密码
//      db.setDatabaseName("info"); //使用哪个数据库

        qDebug()<<"QSR::"<

 安装成功提示如下:

11:02:27: Starting D:\QtProject\build-untitled2-Desktop_Qt_5_13_2_MinGW_64_bit-Debug\debug\untitled2.exe ...
QSR:: ("QSQLITE", "QMYSQL", "QMYSQL3", "QODBC", "QODBC3", "QPSQL", "QPSQL7")
successful

参考:https://blog.csdn.net/mxcai2005/article/details/104008623

https://blog.csdn.net/zhouzezhou/article/details/52446608

你可能感兴趣的:(QT)