QT设置MySQL驱动

bash 复制代码
QSqlDatabase: QMYSQL driver not loaded 
QSqlDatabase: available drivers: QSQLITE QMYSQL QMYSQL3 QODBC QODBC3 QPSQL QPSQL7

第一步:下载MySQL

https://dev.mysql.com/downloads/mysql/

解压缩下载的安装包,其目录结构如下所示:

第二步:编译qt的MySQL源码

现在进入 Qt 的 MySql 数据库驱动源码目录(例如:C:\SoftWare\Qt\Qt5.12.3\5.12.3\Src\qtbase\src\plugins\sqldrivers\mysql),用qtcreator打开 mysql.pro,并进行如下更改:

cpp 复制代码
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)

DESTDIR = $$PWD/lib

MYSQL_PATH = C:/Users/huishi/Downloads/mysql-8.0.11-winx64
INCLUDEPATH += $${MYSQL_PATH}/include
LIBS += $${MYSQL_PATH}/lib/libmysql.lib

然后进行编译,

完成之后,在输出目录下就会生成对应的驱动了:

第三步:复制相关文件

复制qsqlmysql.dll、qsqlmysqld.dll文件到E:\myDevApp\Qt5.12.3\5.12.3\mingw73_64\plugins\sqldrivers 目录下(就是你所用的编译器所在目录),

然后将libmysql.dll文件复制到项目的运行目录下:

相关推荐
YHHLAI19 分钟前
SQL 完全指南:从入门到精通
数据库·sql
oradh1 小时前
Oracle enq: TX - index contention 锁等待事件问题排查总结
数据库·oracle·oracle enq tx·enq tx index
CDN3601 小时前
爬虫把价格库扒光、SQL注入打穿数据库?360CDN WAF规则引擎深度定制,把防护精度拉到逐字段级
数据库·爬虫·sql
数据库小学妹3 小时前
MySQL长事务复盘:Sleep连接、MDL排队与undo滞留
运维·数据库·mysql
半摆烂日常4 小时前
自建WMS和买成品:三年成本对比
大数据·服务器·数据库·python·深度学习·低代码·numpy
励志不掉头发的内向程序员4 小时前
【LibreCAD 2D架构】从鼠标点击到图形创建:RS_ActionDrawLine交互流程与状态机解析
开发语言·c++·qt·学习·系统架构·计算机外设·交互
风123456789~4 小时前
【架构专栏】第6章 数据库设计基础知识 1/4
数据库·架构
Nturmoils4 小时前
异构数据同步不只追延迟:用 KFS 守住不停机迁移的每一笔账
数据库
星星落进兜里4 小时前
Redis 内存缓存,面试补充
数据库·redis·面试
棣廷5 小时前
初识MySQL——DQL数据查询语言详解
数据库·mysql