QT:MYSQL driver not loaded解决方法
0、参考(按对本人帮助从高到低排列)
Qt5.14.1 如何编译和使用mysql和mariadb数据库驱动
(15条消息) QMYSQL driver not loaded 的原理和解决办法_m15814478834的专栏-CSDN博客
(15条消息) 关于windows下Qt报告“QMYSQL driver not loaded”的解决办法_ac_blood的博客-CSDN博客
1、原因
缺少MySQL数据库驱动(即Driver)或MySQL相关库
1.1、是否缺少Driver?
假设我们要用MSVC2017运行数据库相关操作:
- 转到QT安装目录下MSVC2017运行环境的文件夹下,比如在我的电脑上是E:\Qt\5.14.2\msvc2017_64;
- 进入plugins\sqldrivers目录下,所以Driver所在的完整目录是E:\Qt\5.14.2\msvc2017_64\plugins\sqldrivers;
- 检查这个文件夹下是否有 qsqlmysql.dll 与 qsqlmysqld.dll两个文件,就像下边这样

如果没有这两个文件,就说明缺少MySQL driver。
1.2、是否缺少MySQL相关库?
检查E:\Qt\5.14.2\msvc2017_64\lib目录下,看是否有libmysql.dll与libmysql.lib两个文件,如果没有,就说明缺少MySQL相关库。

2、解决方法
2.1、缺少MySQL相关库:libmysql.dll 与 libmysql.lib
- 下载MySQL(注意32位、64位一定要正确),转到下载好的MySQL目录下的lib目录中:D:\MySQL\lib;
- 找到libmysql.dll与libmysql.lib两个文件,复制粘贴到1.2中所说的目录E:\Qt\5.14.2\msvc2017_64\lib目录下,即可解决。
2.2、缺少MySQL Driver:qsqlmysql.dll 与 qsqlmysqld.dll
这个解决比较复杂,大家出问题也主要是这个问题。
- 转到Qt目录下的 "E:\Qt\5.14.2\Src\qtbase\src\plugins\sqldrivers\mysql"目录中,大概长下边这样:

- 在Qt Creator中打开该目录下的mysql.pro,相当于打开这个mysql项目,进入mysql.pro下:
#mysql.pro TARGET = qsqlmysql
HEADERS += $$PWD/qsql_mysql_p.h
SOURCES += $$PWD/qsql_mysql.cpp $$PWD/main.cpp PLUGIN_CLASS_NAME = QMYSQLDriverPlugin OTHER_FILES += mysql.json QMAKE_USE += mysql include(../qsqldriverbase.pri) - 修改这个项目文件,添加三句话、注释一句话:
INCLUDEPATH += "D:\MySQL\include"
LIBS+="D:\MySQL\lib\libmysql.lib"
DESTDIR = ../mysql/lib
#QMAKE_USE += mysql其中第一行中的路径,就是MySQL中include目录的路径;第二行中的路径,就是2.1中所说的MySQL库的路径;第三行是输出driver到哪个文件夹下;
- 在项目中取消勾选Shadow build:

- 构建项目

之后就可以在lib目录(E:\Qt\5.14.2\Src\qtbase\src\plugins\sqldrivers\mysql\lib)下找到驱动文件qsqlmysql.dll 与 qsqlmysqld.dll;
- 把这两个文件复制到1.1中所说的目录E:\Qt\5.14.2\msvc2017_64\plugins\sqldrivers下;
- 完事!
QT:MYSQL driver not loaded解决方法的更多相关文章
- 今天用pro安装nginx+php+mysql出现故障的解决方法
今天用pro安装nginx+php+mysql出现故障的解决方法 by 伍雪颖 dyld: Library not loaded: @@HOMEBREW_CELLAR@@/openssl/1.0.1h ...
- Windows下mysql忘记密码的解决方法
Windows下mysql忘记密码的解决方法 mysql5.0 http://www.jb51.net/article/21984.htm方法一: 1.在DOS窗口下输入 net stop mysql ...
- Mysql常见报错解决方法
一:登录报错 ERROR 1045 (28000): Access denied for user 'mysql'@'localhost' (using password: NO) mysql日志文件 ...
- PHP+MYSQL 出现乱码的解决方法
PHP+MYSQL 出现乱码的解决方法 使用PHP+MYSQL时遇到过字符乱问题,解决方法: 在mysql_connect后面加一句SET NAMES UTF8,即可使得UTF8的数据库消除乱码,对于 ...
- MYSQL转换编码的解决方法
MYSQL转换编码的解决方法 一.在utf8的mysql下 得到中文‘游客’的gbk下的16进制编码 mysql> SELECT hex(CONVERT( '游客' USING gbk )); ...
- 远程首次连接mysql速度慢的解决方法:skip-name-resolve取消DNS的反向解析(转)
PHP远程连接MYSQL速度慢,有时远程连接到MYSQL用时4-20秒不等,本地连接MYSQL正常,出现这种问题的主要原因是,默认安装的 MYSQL开启了DNS的反向解析,在MY.INI(WINDOW ...
- 实例讲解启动mysql server失败的解决方法
MySQL 实例讲解启动mysql server失败的解决方法 来源: 作者: 发表于: 启动mysql server 失败,查看/var/log/mysqld.err 080329 16:01:29 ...
- MySQL常见错误分析与解决方法总结
MySQL常见错误分析与解决方法总结 一.Can't connect to MySQL server on 'localhost' (10061)翻译:不能连接到 localhost 上的mysql分 ...
- 远程连接mysql速度慢的解决方法:skip-name-resolve取消DNS的反向解析
PHP远程连接MYSQL速度慢,有时远程连接到MYSQL用时4-20秒不等,本地连接MYSQL正常,出现这种问题的主要原因是,默认安装的 MYSQL开启了DNS的反向解析,在MY.INI(WINDOW ...
随机推荐
- 聊一聊如何用C#轻松完成一个TCC分布式事务
背景 银行跨行转账业务是一个典型分布式事务场景,假设 A 需要跨行转账给 B,那么就涉及两个银行的数据,无法通过一个数据库的本地事务保证转账的 ACID ,只能够通过分布式事务来解决. 在 聊一聊如何 ...
- Dart 2.16 现已发布
文 / Michael Thomsen, Dart 产品经理 Dart 2.16 正式发布 Dart 2.16 正式版已于上周发布.尽管没有新的语言特性加入,但本次版本发布包含了数个问题修复 (包括对 ...
- 马哈鱼间接数据流中的where-group-by子句
马哈鱼间接数据流中的where-group-by子句 本文介绍间接数据流中的where-group-by子句. 1.列在where子句中 WHERE子句中源表中的某些列不影响目标列,但对所选行集至关重 ...
- ApacheJemeter的简单使用
前言:最近由于工作需要进行接口测试,故简单复习一下ApacheJemeter的使用 安装包下载地址: 链接:https://pan.baidu.com/s/11ywNWRUkFNNBCWw4HiO6B ...
- Linq to SQL各种参考
原文:https://www.cnblogs.com/lyj/archive/2008/01/23/1049686.htmlhttps://www.cnblogs.com/lyj/archive/20 ...
- HTML横向二级导航
图片素材没有发,就一个logo还有一个Nav背景图. 效果 HTML <!DOCTYPE html> <html lang="zh-cn"> <hea ...
- chromium .cipd_client 失败的解决办法
gclient config https://chromium.googlesource.com/v8/v8 chromium 代理完美解决办法 #git的代理设置 git config --glob ...
- php导出excel xml word
转载请注明来源:https://www.cnblogs.com/hookjc/ Excel: <?php header("Content-Type: application/vnd.m ...
- 微服务从代码到k8s部署应有尽有系列(一)
从本篇文章开始,我们用一个系列来讲解从需求到上线.从代码到k8s部署.从日志到监控等各个方面的微服务完整实践. 实战项目地址:https://github.com/Mikaelemmmm/go-zer ...
- Spring-BeanFactory体系介绍
1 BeanFactory介绍 BeanFactory是Spring中的根容器接口,所有的容器都从从它继承而来,ApplicationContext中对于BeanDefinition的注册,bean实 ...