在使用Qt连接mysql数据库的时候,遇到过这样的报错,做一下记录和总结。

  报错如下:

(1)QSqlDatabase: QMYSQL driver not loaded
  (2)QSqlDatabase: available drivers: QSQLITE QODBC QODBC3 QPSQL QPSQL7

Qt、Mysql编辑器版本背景:
    Qt版本是5.13.2,编译器是MSVC2015_64,是x64位。
    mysql版本是5.7.29-winx64,也是x64位。

问题解析:

  Qt目录里缺失了和Mysql的连接插件qsqlmysql.dll。在这种情况下,单纯地将Mysql目录下的lib文件夹下的libmysql.dll复制到Qt的目录下的bin目录下是无用的。

解决方法:

  1.先看看自己的Qt目录下有没有连接插件qsqlmysql.dll,文件夹位置:                        E:\Qt\Qt5.13.2\5.13.2\msvc2015_64\plugins\sqldrivers

  

  2. 在没有连接插件qmysql.dll的情况下进入第二步,通过Qt里的src源码中的mysql源码来编译出qmysql.dll文件。先找到Qt目录源码里的mysql的源码,因为我在安装Qt是没有选择安装src源码,所以我重新从官网上下载了qt-everywhere-src-5.13.2.zip,内里是Qt源码文件。我的路径是:E:\Qt\qt-everywhere-src-5.13.2\qtbase\src\plugins\sqldrivers\mysql。

双击打开mysql.pro,进入Qt creator编译器界面,添加下面的三行代码:

INCLUDEPATH +=E:/DateBase/Mysql/mysql-5.7.29-winx64/include/    # 添加你自己的mysql安装目录下的include文件夹
LIBS += E:/DateBase/Mysql/mysql-5.7.29-winx64/lib/libmysql.lib # 添加你的mysql安装目录下的lib文件夹下的libmysql.lib文件
DESTDIR = ../mysql/mysqlDll    # 设置编译好的qmysql.dll放置的目录,不然你可能不知道会生成在哪。


然后进行构建,就是界面左下角的锤子,这时会出现如下的两个错误:
Cannot read H:/qtsqldrivers-config.pri: No such file or directory
Project ERROR: Library 'mysql' is not defined.

  第一个问题中没有这样的文件,但是可以在目录E:\Qt\qt-everywhere-src-5.13.2\qtbase\src\plugins\sqldrivers下找到configure.pri这个文件,那么我们就把原来需要qtsqldrivers-config.pri的地方注释掉,改成configure.pri。
  打开qsqldriverbase.pri文件,将第四行注释掉,即#include($ $shadowed($ $PWD)/qtsqldrivers-config.pri),然后添加include(./configure.pri),保存,完成。

  Library 'mysql' is not defined,这个问题好解决,在qt左侧栏中双击打开mysql.pro,将第六行注释掉,这样:#QMAKE_USE += mysql。这个办法需要格外感谢看过的一个大佬的教程,太秀了。

接下来重新构建,没有报错。再次找到之前指定的编译好的dll放置的路径,E:\Qt\qt-everywhere-src-5.13.2\qtbase\src\plu gins\sqldrivers\mysql\mysqlDll,果然生成了qsqlmysql.dll和qsqlmysqld.dll,这两个就是qt连接mysql数据库的桥梁了。

最后,只需将这两个生成的dll,复制到qt文件夹下:E:\Qt\Qt5.13.2\5.13.2\msvc2015_64\plugins\sqldrivers。

并且也要将自己的mysql安装目录下的lib文件夹下的libmysql.dll,复制到qt的编译器的bin目录下,这样Qt就可以连接Mysql了。

Qt连接MySql驱动加载失败问题解决方法相关推荐

  1. 征途2无法显示服务器列表,解决win10系统玩征途2提示“DriverCommlnit驱动加载失败”的方法...

    征途2是一款众所周知的角色扮演类游戏,它在玩法上延续了征途1的总体风格,但是在画面和音效上比征途1的要提高了很多,其独特的玩法吸引了众多的玩家.但是又部分用户反映,在win10系统上运行征途2的游戏时 ...

  2. mysql驱动如何编写_解读MySQL驱动加载逻辑

    解读MySQL驱动加载逻辑 我们很早之前就知道最基础的JDBC编写,先执行Class.forName方法,加载MySQL驱动.但是为什么加载过驱动后,后续的接口层的调用就会自动切换到MySQL的相关代 ...

  3. 软件或开发工具读取EXCEL文件报错ACEODBC.DLL驱动加载失败解决

    ①看是哪个office版本的ACEODBC.DLL引擎驱动加载失败或者不存在: ②在其对应的文件根目录下查找其对应的引擎加载驱动ACEODBC.DLL是否存在: 路径:C:\Program Files ...

  4. 征途2无法显示服务器列表,Win10上玩征途2提示DriverCommlnit驱动加载失败是怎么回事...

    征途2是由巨人网络研发的一款角色扮演类网络游戏,其独特的玩法体系吸引了众多的玩家.最近有win10用户反映自己在win10系统上玩征途2,打开后提示[DriverCommlnit]驱动加载失败,遇到这 ...

  5. zeal刷新不出来_Zeal下载教程及文档加载失败解决方法

    Zeal下载教程及文档加载失败解决方法 一.前言: 本篇章主要关于windows系统的下载教程 二.正文: 1.进入官网链接下载相应的版本 官网:https://zealdocs.org/downlo ...

  6. fetchtype 动态控制_hibernate 中 fetch=FetchType.LAZY 懒加载失败处理方法

    对这种懒加载问题,最后的做法是利用Spring提供的一个针对Hibernate的一个支持类,其主要意思是在发起一个页面请求时打开Hibernate的Session,一直保持这个Session,使得Hi ...

  7. android wifi驱动加载失败怎么办,wifi驱动无法被安卓系统正常调用

    1.问题现象: 打开wifi的图标,wifi加载后又自动卸载. 2.问题分析 驱动能正常加载,但是又自动卸载,说明驱动没有完全满足安卓的要求,查看wifi加载的源码"hardware/lib ...

  8. 刺激战场服务器未响应加载失败,刺激战场辅助提示驱动加载失败 怎么办 | 手游网游页游攻略大全...

    发布时间:2016-06-07 恶灵附身bink2w64.dll加载失败怎么办?有恶灵附身玩家跟小编说他在玩到第7章石门保存时突然弹出了"bink2w64.dll加载失败"的错误提 ...

  9. dll注册加载失败解决方法

    当输入命令regsvr32 A.dll注册时,跳出下面错误提示: 模块C:\windows\System32\A.dll加载失败. 请确保该二进制存储在指定的路径中,或者调试它检查该二进制或相关的 . ...

  10. 小程序图片加载失败binderror方法处理

    场景:我们在小程序项目中的一个图片列表,当某些图片加载失败后,直接显示空白,这样用户体验不好,为了解决当图片加载失败,我们给一个默认图片代替,参考官方给的图片加载失败的处理方法:binderror c ...

最新文章

  1. 五年前的转正我没有留下,校招进不了大公司就是失败吗?
  2. javascript this 关键字学习
  3. [机器学习] 数据特征 标准化和归一化
  4. python 求和并排序_Python算法教程第三章知识点:求和式、递归式、侏儒排序法和并归排序法...
  5. 《阿里云互联网多媒体存储解决方案蓝皮书》震撼上线!
  6. JSP-Runoob:JSP 自定义标签
  7. 74HC595芯片引脚,功能介绍【250字】【原创】
  8. 人工智能视觉处理教程(包含源码)
  9. py3 写的基于GUI 的 旁注 wwwscan集成扫描工具
  10. js跨域访问的超简单方法
  11. 关于android的外文论文,毕业论文外文翻译-Android开发
  12. AI:人工智能领域之AI的发展历史图集合、AI发展思维导图之详细攻略
  13. Linux Shell发邮件笔记
  14. Maven setting配置镜像仓库
  15. 服务器测速文件,云服务器测速代码
  16. 【Python • 项目实战】pytesseract+pyqt实现图片识别软件小项目——(一)创建项目和画界面
  17. 苹果Ad_Hoc添加新设备UUID详解
  18. 浏览器兼容性问题总结
  19. 创客机器人的课程简单易学吗
  20. 最新WIN10系统封装教程2019系列(八)——测试效果

热门文章

  1. 基于stm32单片机语音LD3320控制直流电机智能座椅LCD1602显示人体重量薄膜压力传感器设计
  2. VUE post请求下载文件
  3. 亲戚关系php,中国亲戚关系解析图(大全)
  4. 如何搭建个人博客网站
  5. 黄聪:css3实现图片划过一束光闪过效果(图片光影掠过效果)
  6. 保持初心,不负韶华||回顾2021,展望2022
  7. JAVA proxy dns回源_常见问题 - CDN 回源配置相关问题
  8. Android音视频开发之如何合并音频和视频文件?
  9. keras LSTM实现imdb电影评论文本二分类
  10. 5款自动爬取数据的神器!