Qt连接mysql缺少驱动

最开始的错误:
在这里插入图片描述

Qt在加载MySql驱动找不到,原因是在 Qt\5.15.2\msvc2019_64\plugins\sqldrivers 该目录中缺少文件
在这里插入图片描述

该文件需要通过Qt源码编译 目录:Qt\5.15.2\Src\qtbase\src\plugins\sqldrivers\mysql\ (Src文件需要在安装Qt勾选,因为需要我也是专门重装了一遍)
在这里插入图片描述

来到Qt的Mysql源码处,点击mysql.pro 打开Qt项目(刚安装好的qt源码,目录里面没有mysql.h这样的头文件,这个之后解释)
在这里插入图片描述

在此处我也是看的别人的教程,首先在“mysql.pro”中注释掉
在这里插入图片描述

再到“qsqldriverbase.pri”中注释掉第四行,并添加include(./configure.pri)
在这里插入图片描述

再在“mysql.pro”中通过INCLUDEPATH和LIBS添加MySql的头文件和静态链接库,并设置好放置目录表
在这里插入图片描述

正常配置好后点击左下角小锤子,稍等片刻应该就能看到编译好的dll和lib了

剩下就是我踩坑了:
1、我在直接导入mysql的头文件后一直显示在这里插入图片描述找不到mysql.h
因为我是安装在C盘的,mysql默认路径是 C:\Program Files\MySQL\MySQL Server 8.0 ,其中出现了空格,有文章说会影响Qt导入头文件,于是我把mysql复制到了E盘,并且删去了存在的空格(如上图)。结果没用,仍然显示找不到mysql.h
最后是把 C:\Program Files\MySQL\MySQL Server 8.0\include 里面的所有文件放到了 D:\ProgramSoft\Qt1\5.15.2\Src\qtbase\src\plugins\sqldrivers\mysql Qt Mysql项目源码文件夹下
在这里插入图片描述

错误消失

2、将libmysql.dll放进bin也没用(参考别人的文章)
在这里插入图片描述

编译后得到的文件:
在这里插入图片描述

去掉ãã再将qsqlmysql放进 D:\ProgramSoft\Qt\5.15.2\msvc2019_64\plugins\sqldrivers
在这里插入图片描述

成功

参考文章:QMYSQL driver not loaded 原因以及办法(附驱动)_小卞去买菜的博客-CSDN博客
Qt 5 MySQL数据库驱动没有加载(QSqlDatabase: QMYSQL driver not loaded)的解决方法_阳光洒在杨树上的博客-CSDN博客_qsqldatabase驱动没有加载
Qt连接MySQL数据库_自有林中趣的博客-CSDN博客_qt连接mysql数据库


版权声明:本文为weixin_45415069原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。