00. 目录


文章目录


  • 00. 目录
  • 01. 安装Qt5.12
  • 02. 打开MySQL源码项目
  • 03. 编译MySQL驱动代码
  • 04. 下载MySQL相关SDK
  • 05. 修改mysql.pro文件
  • 06. 编译之后得到对应的库
  • 07. 拷贝动态库到指定的目录
  • 08. 测试结果


01. 安装Qt5.12

安装Qt5.12的时候选择​Qt的编译器​和​Qt源码

【Qt】Qt5.12编译MySQl5.7驱动(在线亲自指导)_Qt连接MySQL

02. 打开MySQL源码项目

Qt5.12安装目录如下


Qt\Qt5.12.2\5.12.2\Src\qtbase\src\plugins\sqldrivers\mysql


【Qt】Qt5.12编译MySQl5.7驱动(在线亲自指导)_Qt5.12连接MySQL_02

03. 编译MySQL驱动代码

代码结构:

【Qt】Qt5.12编译MySQl5.7驱动(在线亲自指导)_Qt5.12连接MySQL_03

直接编译报错: 数据库驱动没有定义

【Qt】Qt5.12编译MySQl5.7驱动(在线亲自指导)_Qt5.12数据库驱动_04

问题分析: ​由于没有指定MySQL动态库的路径

04. 下载MySQL相关SDK

4.1 打开MySQL官方网页,选择下载

【Qt】Qt5.12编译MySQl5.7驱动(在线亲自指导)_Qt5.12数据库驱动_05

4.2 选择MySQL Community Server

【Qt】Qt5.12编译MySQl5.7驱动(在线亲自指导)_MySQL5.7.23_06

4.3 下载ZIP Archive

【Qt】Qt5.12编译MySQl5.7驱动(在线亲自指导)_MySQL5.7.23_07

4.4 解压放在D盘中

【Qt】Qt5.12编译MySQl5.7驱动(在线亲自指导)_MySQL5.7.23_08

05. 修改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

win32:LIBS += -LD:/mysql-5.7.23-winx64/lib/ -llibmysql
INCLUDEPATH += D:/mysql-5.7.23-winx64/include
DEPENDPATH += D:/mysql-5.7.23-winx64/include


include(../qsqldriverbase.pri)

新增加内容如下:

【Qt】Qt5.12编译MySQl5.7驱动(在线亲自指导)_Qt连接MySQL_09

06. 编译之后得到对应的库

我的Qt安装的路径:H:\Qt\Qt5.12.2

最终得到的驱动目录就在H盘

【Qt】Qt5.12编译MySQl5.7驱动(在线亲自指导)_Qt5.12数据库驱动_10

将qsqlmysql.dll和qsqlmysqld.dll拷贝到Qt的安装目录下H:\Qt\Qt5.12.2\5.12.2\mingw73_64\plugins\sqldrivers

【Qt】Qt5.12编译MySQl5.7驱动(在线亲自指导)_Qt5.12数据库驱动_11

07. 拷贝动态库到指定的目录


链接:https://pan.baidu.com/s/1EPiKhDLKCMYkO-GhN8xX3A

提取码:kpt0

将libmysql.dll下载后复制到Qt的安装目录中

【Qt】Qt5.12编译MySQl5.7驱动(在线亲自指导)_MySQL5.7.23_12

08. 测试结果

【Qt】Qt5.12编译MySQl5.7驱动(在线亲自指导)_Qt5.12连接MySQL_13