文章目录
在学习QT连接MySQL数据库时,遇到了如下图的问题:
一、原因
Qt5.15以上版本中默认没有mysql的驱动,所以需要自己打开相关的源码进行编译。
这里先提一下MySQL8.0似乎编译不了,不知是什么原因。
二、解决方案
1.下载QT源码(如没有的话)
如果没有QT的源码,可以通过QT的维护工具进行下载,如下图所示:
2.编译源码
(1)、进到QT源码的sqldrivers目录中(QT的安装目录)
如下图所示:
(2)、修改.cmake.conf文件
在这里一开始我是用了MySQL8.0的路径,但后面在QT中编译时编译不出来,所以又去下了一个MySQL5.7,换成了5.7的路径。
(3)、在QT中打开CMakeLists.txt,然后进行编译
然后在刚刚QT源码中sqldrivers文件夹的上一级会出现一个build构建文件夹。
(4)、进入构建文件夹中的sqldrivers目录,将qsqlmysql.debug和qsqlmysql.dll两个文件复制到QT mingw安装目录中的sqldrivers文件夹中
复制到QT mingw安装目录中的sqldrivers文件夹中。
(5)、再将MySQL安装目录中的libmysql.dll文件复制到QT mingw安装目录中的bin文件夹中
最后测试一下: