当前位置:   article > 正文

qt无db文件生成_Qt 5 MySQL数据库驱动没有加载(QSqlDatabase: QMYSQL driver not loaded)的解决方法...

没有db_study.sql怎么办

最近在学习Qt 时发现自己的Qt版本没有MySQL的驱动,楼主的Qt 和MySQL的版本如下:

Qt 版本:Qt 5.15.1 Windows版

Qt编译器版本:MinGW81_64

MySQL版本:MySQL8.0.17 64位 Windows版

楼主使用下面的Qt代码查看Qt当前支持的数据库驱动:

//打印Qt支持的数据库驱动

qDebug()<<:drivers>

结果发现Qt 5.15 默认并没有提供MySQL数据库的驱动:

8e9c2aafede5d1cd1da1b2b6c512810c.png

可以发现默认并没有MySQL的驱动!!

原因是:Qt 5在高版本中取消了对MySQL数据库的默认支持,这是因为随着商业版的MySQL推出,MySQL已经不能算是一个完全开源的数据库了,而Qt默认只会给完全开源的数据库提供支持,而上面的数据库都是完全开源的。那么如何给Qt 5.15添加MySQL驱动呢?经过研究,解决方案如下:

第 1 步 -----------------------------------------

首先打开MySQL安装目录下的lib文件夹,楼主的lib文件夹的地址如下:C:\Program Files\MySQL\MySQL Server 8.0\lib

打开后选择 libmysql.dll 和***libmysql.lib*** ,复制:

48c3674701a9d0d3eb559920c009e73a.png

然后,将其粘贴到 Qt的MinGW编译器的bin文件夹下,楼主的bin文件夹的地址为:

D:\QT5\5.15.1\mingw81_64\bin

大家可以根据自己的安装位置选择合适的位置复制:

09cbd377fbbc73347059e446319f9104.png

第 2 步 -----------------------------------------

1. 找到Qt安装目录下sql驱动中的mysql文件夹

这是楼主的地址:

D:\QT5\5.15.1\Src\qtbase\src\plugins\sqldrivers

这个地址比较绕,大家不要搞错了,这个地址下有一个文件夹mysql(哈哈,终于找到了),复制一份这个文件夹到桌面(也可以不复制,楼主只是不想改动mysql的安装文件):

dff32aee80b049838357497f8b954f43.png

2. 生成Qt的MySQL动态链接库

打开桌面的mysql文件夹,打开其中的mysql Qt工程文件:

e2bb75d6a2011ee70dce1c610a7b4f07.png

将其.pro工程配置文件修改为如下:

71a8b488be9e2a9c5f9c6d7a957b3b17.png

运行此工程(只管运行如有报错不用管),运行后,打开桌面mysql的lib文件夹,可以发现新生成的3个dll文件:

d45c4d8c70f92a636484a714ee92a428.png

其中,qsqlmysql.dll和qsqlmysql.dll.debug 即是我们需要的Qt数据库的驱动文件。

3. 复制驱动文件到Qt的sqldrivers文件夹中

选中上面生成的qsqlmysql.dll和qsqlmysql.dll.debug 驱动文件(位于桌面mysql文件lib中)并复制:

22ae4fb347b2f33633f0e2de2715b75b.png

然后将其粘贴到Qt安装目录下的sqldrivers文件夹下:

(这是楼主的地址,大家对照寻找自己的地址)

D:\QT5\5.15.1\mingw81_64\plugins\sqldrivers

9c52e3a3449a0d6b3ff5a9f386739c3c.png

4. 大功告成!

现在,我们已经成功给Qt添加了MySQL的驱动!

接下来重启Qt,进行测试,继续使用下面的代码打印Qt支持的数据库驱动:

//打印Qt支持的数据库驱动

qDebug()<<:drivers>

可以发现已经有MySQL的驱动啦!

f122458900e0a6dfa2b7283d666af2af.png

接下来就可以在Qt5.15中正常使用MySQL8.0啦!

5. More

有的人可能不需要第1步,这种情况请直接转到第2步。还有Qt的编译器的位数要和MySQL的位数相同(比如都是64位或者都是32位)。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/从前慢现在也慢/article/detail/442631
推荐阅读
相关标签
  

闽ICP备14008679号