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文件复制到项目的运行目录下:

相关推荐
何中应1 分钟前
CentOS 7安装、卸载MySQL数据库(二)
数据库·mysql·centos
KmSH8umpK11 分钟前
Redis分布式锁从原生手写到Redisson高阶落地,附线上死锁复盘优化方案进阶第六篇
数据库·redis·分布式
梁萌33 分钟前
mysql使用事件做日志表数据转移
数据库·mysql
lThE ANDE34 分钟前
MySQL中的TRUNCATE TABLE命令
数据库·mysql
kexnjdcncnxjs38 分钟前
Redis如何记录每一次写操作_开启AOF持久化机制实现命令级追加记录
jvm·数据库·python
金色熊族41 分钟前
解析QTransform的用法
qt
逸Y 仙X1 小时前
文章十九: ElasticSearch Full Text 全文本查询
java·大数据·数据库·elasticsearch·搜索引擎·全文检索
STER labo1 小时前
mysql配置环境变量——(‘mysql‘ 不是内部或外部命令,也不是可运行的程序 或批处理文件解决办法)
数据库·mysql·adb
微软技术分享1 小时前
本地部署千问 2.5-1.5B-GGUF + LangChain 封装学习
数据库·学习·langchain
七夜zippoe1 小时前
DolphinDB分区策略:VALUE分区详解
数据库·oracle·分区·value·dolphindb