qt+mysql开发提示driver not loaded driver not loaded
2021/10/19 2:13:08
本文主要是介绍qt+mysql开发提示driver not loaded driver not loaded,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
1.首选确认开发环境下mysql驱动dll文件已复制到qt运行目录:
我使用的qt5.9.9+mingw53_32位的开发环境,安装目录在C:\Qt\Qt5.9.9\5.9.9\mingw53_32
此时下载mysql 32位对应的驱动文件libmysql.dll,此dll文件支持连接MySQL版本5.x-8.x,这里的MySQL不区分32位还是64位,也不需要本机安装MySQL数据库
下载链接:https://downloads.mysql.com/archives/get/p/19/file/mysql-connector-c-6.1.11-win32.zip
把dll文件放到C:\Qt\Qt5.9.9\5.9.9\mingw53_32\bin目录下,可以把bin目录添加到系统path下,新建一个qt+mysql项目测试运行没有问题:
2.如果提示driver not loaded driver not loaded,那就是你的qt 开发环境缺少sqldrivers插件,查看qt目录下是否有这个目录
C:\Qt\Qt5.9.9\5.9.9\mingw53_32\plugins\sqldrivers
如果没有上面的目录或者目录下没有qsqlmysql.dll这个文件,则需要重新安装带src的QT开发环境,就是安装时选择安装src,然后手动编译mysql.pro这个项目,生成qsqlmysql.dll,并将生成的dll复制到上面的插件目录下面,具体怎么编译,网上一大堆教程,这里就不赘叙了。
重点来了本机测试没问题,然后就是发布release版,在没有安装qt环境的电脑上运行,提示
This application failed to start because it could not find or load the Qt platform plugin "windows"
缺少平台运行所需文件
这时将C:\Qt\Qt5.9.9\5.9.9\mingw53_32\plugins\下的platforms目录复制到exe可执行目录下就行,保留qwindows.dll文件,其他的dll可以删除,然后运行提示driver not loaded driver not loaded想着是缺少libmysql.dll这个文件,把这个dll复制到exe目录,依然提示driver not loaded driver not loaded,这就头大了,总不能把客户电脑上也安装上qt开发环境吧?
我明明把libmysql驱动复制到当前目录了,可还是提示驱动没加载,然后使用
QSqlDatabase::drivers();输出支持的数据库驱动,发现为空,那么问题找到了,实际上qt插件目录下的qsqlmysql.dll文件才是真的驱动文件
把qt插件下的C:\Qt\Qt5.9.9\5.9.9\mingw53_32\plugins\sqldrivers目录也复制到exe下面,运行成功!
至此,可以在非qt环境电脑上运行开发的程序了!
这篇关于qt+mysql开发提示driver not loaded driver not loaded的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-16MySQL资料:新手入门教程
- 2024-11-16MySQL资料:新手入门教程
- 2024-11-15MySQL教程:初学者必备的MySQL数据库入门指南
- 2024-11-15MySQL教程:初学者必看的MySQL入门指南
- 2024-11-04部署MySQL集群项目实战:新手入门教程
- 2024-11-04如何部署MySQL集群资料:新手入门指南
- 2024-11-02MySQL集群项目实战:新手入门指南
- 2024-11-02初学者指南:部署MySQL集群资料
- 2024-11-01部署MySQL集群教程:新手入门指南
- 2024-11-01如何部署MySQL集群:新手入门教程