解决Qt5.13.0无MySQL驱动问题

一、前言

由于Qt5.12.3是最后提供mysql数据库插件的版本,往后的版本需要自行编译对应的mysql数据库插件,官方安装包不再提供。使用高版本的Qt就需要自行编译mysql驱动。

若没有编译在QT中调用Qsqldatabase库连接mysql时,提示出现如下问题:

QSqlDatabase: QMYSQL driver not loaded
QSqlDatabase: available drivers: QSQLITE QODBC QODBC3 QPSQL QPSQL7

二、开发环境

系统:Windows 10
Qt版本:Qt5.13.0
mysql版本:Mysql 5.7.35 Win64

查看MySQL版本:Windows查看mysql版本

三、解决办法

3.1、打开mysql.pro文件

进入Qt 5.13.0安装目录的mysql源码目录中,用Qt Creator 打开mysql.pro。
本地路径:C:\Qt\Qt5.13.0\5.13.0\Src\qtbase\src\plugins\sqldrivers\mysql
在这里插入图片描述

3.2、mysql.pro文件修改

(1)屏蔽

#QMAKE_USE += mysql

(2)添加MySql头文件路径、MySql的库文件路径、指定编译后文件输出的位置

INCLUDEPATH += $$quote(C:\Program Files\MySQL\MySQL Server 5.7\include)
LIBS += -L$$quote(C:\Program Files\MySQL\MySQL Server 5.7\lib) -llibmysql
DESTDIR = ../mysql/MingW_64_mysqlDll

(3)运行项目代码,在mysql/MingW_64_mysqlDll路径下生成编译生成的DLL驱动
在这里插入图片描述
(4)复制生成的dll到使用编译套件的Qt目录下
生成DLL路径:C:\Qt\Qt5.13.0\5.13.0\Src\qtbase\src\plugins\sqldrivers\mysql\MingW_64_mysqlDll
本机目录:C:\Qt\Qt5.13.0\5.13.0\mingw73_64\plugins\sqldrivers
在这里插入图片描述

四、总结

通过上述步骤,可以解决项目在Qt执行时连接MYSQL数据库如果报找不到QMYSQL驱动的问题。
但是在项目进行发布时,需要将MySQL路径(C:\Program Files\MySQL\MySQL Server 5.7\lib)下的libmysql.dll和libmysql.lib文件放在项目的发布目录里,发布项目才能正常连接数据库。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/179388.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

百度搜索智能化算力调控分配方法

作者 | 泰来 导读 随着近年深度学习技术的发展,搜索算法复杂度不断上升,算力供给需求出现了爆发式的增长。伴随着AI技术逐步走到深水区,算法红利在逐步消失,边际效应日益显著,算力效能的提升尤为重要,同时随…

俄罗斯方块小游戏

框架 package 框架;import java.awt.image.BufferedImage; import java.util.Objects;/*** author xiaoZhao* date 2022/5/7* describe* 小方块类* 方法: 左移、右移、下落*/ public class Cell {// 行private int row;// 列private int col;private BufferedIm…

一张图系列 - “position_embedding”

关于位置编码,我感觉应该我需要知道点啥? 0、需要知道什么知识? multi head atten 计算 复数的常识 1、embedding 是什么? position embedding常识、概念,没有会怎样? 交换token位置,没有P…

根据视频编码时间批量重命名视频文件

整理收藏的小视频的时候发现很多视频命名很随意,自己命名又太麻烦,看着乱糟糟的文件又心烦,所有写了这个程序,代码如下: import osfrom filetype import filetype from pymediainfo import MediaInfovideo_extension …

不敢信,30+岁的项目经理会是这样

大家好,我是老原。 你们知道,每个阶段的项目经理都是什么样的吗? 20多岁时,刚踏入项目管理的你可能是个什么都不懂的职场小白,或者只能在旁边打打下手; 到了30岁,经历了项目的人情冷暖&#…

@Version乐观锁配置mybatis-plus使用(version)

1:首先在实体类的属性注解上使用Version import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.Versio…

OpenCV必知必会基础3(包括色彩空间的变换、ROI、OpenCV中最重要的结构体Mat以及获取图像的属性)

文章目录 OpenCV的色彩空间——RGB与BGROpenCV的色彩空间——HSV与HSLHSV主要用于OpenCV中HSL OpenCV色彩空间转换YUV主要用于视频中题目 图像操作的基石Numpy【基础操作】np.arraynp.zerosnp.onesnp.fullnp.identitynp.eye Numpy基本操作之矩阵的检索与赋值Numpy基本操作三——…

051-第三代软件开发-日志容量时间限制

第三代软件开发-日志容量时间限制 文章目录 第三代软件开发-日志容量时间限制项目介绍日志容量时间限制 关键字: Qt、 Qml、 Time、 容量、 大小 项目介绍 欢迎来到我们的 QML & C 项目!这个项目结合了 QML(Qt Meta-Object Language…

Python Web APP在宝塔发布

本地测试运行:uvicorn main:app --host 127.0.0.1 --port 8082 --reload 宝塔发布: 运行配置——>启动模式:worker_class uvicorn.workers.UvicornWorker

德迅云安全为您介绍关于抗D盾的一些事

抗D盾概述: 抗D盾是新一代的智能分布式云接入系统,接入节点采用多机房集群部署模式,隐藏真实服务器IP,类似于网站CDN的节点接入,但是“抗D盾”是比CDN应用范围更广的接入方式,适合任何TCP 端类应用包括&am…

web缓存-----squid代理服务

squid相关知识 1 squid的概念 Squid服务器缓存频繁要求网页、媒体文件和其它加速回答时间并减少带宽堵塞的内容。 Squid代理服务器(Squid proxy server)一般和原始文件一起安装在单独服务器而不是网络服务器上。Squid通过追踪网络中的对象运用起作用。…

pg_bouncer在使用中的坑勿踩

目录 简介 环境信息 问题配置 问题配置 启动pgbouncer 链接逻辑图 测试存在问题 pgadmin4 Idea JAVA调用 ​编辑 dbeaver 建议: 简介 前面文章说过关于pg_bouncer的安装讲解,这里讲一下在使用中的坑,在进行配置的时候需要注意。 …