安装Qt时勾选Source模块,源码默认路径在“C:\Qt\Qt5.14.2\5.14.2\Src\qtbase\src\plugins\sqldrivers\mysql”下
如果未勾选,下载解压:https://download.qt.io/archive/qt/5.14/5.14.2/submodules/qtbase-everywhere-src-5.14.2.zip,源码路径是:“qtbase-everywhere-src-5.14.2\src\plugins\sqldrivers\mysql”下
1.编译Qt源码生成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
#MySQL64位服务器对应QT的64位编译器
INCLUDEPATH+="D:/mysql-8.0.33-winx64/include" #MySQL服务器的include目录
LIBS+="D:/mysql-8.0.33-winx64/lib/libmysql.lib" #MySQL服务器的libmysql.lib文件路径
DESTDIR = "C:/Qt/qtbase-everywhere-src-5.14.2/src/plugins/sqldrivers/msvc64" #自定义保存驱动的文件夹
PLUGIN_CLASS_NAME = QMYSQLDriverPlugin
include(../qsqldriverbase.pri)
2.驱动库加载
(1)编译成功后,默认在“C:\plugins\sqldrivers”路径下生成qsqlmysql.dll和qsqlmysqld.dll,将这两个文件拷贝到“C:\Qt\Qt5.14.2\5.14.2\msvc2017_64\plugins\sqldrivers”下。
(2)进入到安装的MySQL服务器的lib目录,将其中的libmysql.dll文件拷贝到“C:\Qt\Qt5.14.2\5.14.2\msvc2017_64\bin”内。