Qt连接MySql驱动加载失败题目解决(报错:QSqlDatabase: QMYSQL driver not ...

打印 上一主题 下一主题

主题 1797|帖子 1797|积分 5393

错误背景:

qt连接不上数据库。

在利用Qt连接mysql数据库的时间,碰到过如许的报错:

        (1)QSqlDatabase: QMYSQL driver not loaded
   (2)QSqlDatabase: available drivers: QSQLITE QODBC QODBC3 QPSQL QPSQL7
这是qt不可以或许加载数据库的驱动导致的。
解决办法:

一、检查qt的构建设置和mysql的版本

qt的构建设置和mysql要保持相同位数,如我用的是64位,mysql也要是64位的版本。

*mysql位数可以在mysql的控制台中输入 “show variables like '%version_%';”检察。
二、天生驱动

Qt目录里缺失了和Mysql的连接插件qsqlmysql.dll。
1.检查驱动

先看看本身的Qt目录下有没有连接插件qsqlmysql.dll,我的文件夹位置(参考):

2.编译出qmysql.dll文件

用Qt里的src源码中的mysql源码来编译出qmysql.dll文件。

2.1 没有src文件的(找到这个文件的跳过本小节)

有的大佬安装Qt是没有选择安装src源码,没关系,咱们去下载一个就可以了。
清华镜像:Index of /qt/archive/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror


下载qt-everywhere-src-xxx.zip就可以了,解压到你的qt文件夹。
访问5.15版本前的需要梯子,请留意。我下载的版本链接:
download.qt.io/archive/qt/5.14/5.14.2/single/
2.2构建mysql.pro

用Qt creator打开mysql.pro,添加下面的三行代码:
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放置的目录,这个是保存天生的dll文件的位置。
*留意:这几个路径不可以有空格,如果有空格可以加双引号或者把路径放进这个$$quote()方法就好了,不用去重新安装数据库改路径。
或者,另有一个偷懒的办法,即像我一样把这两个文件夹复制到qt文件夹下:
我的文件:

代码:

然后举行构建,这时会出现两个错误:
Cannot read H:/qtsqldrivers-config.pri: No such file or directory
Project ERROR: Library 'mysql' is not defined.
别担心,我们一个一个解决
1.我们在上一级文件找到打开qsqldriverbase.pri文件,注释掉第四行:#include($$shadowed($PWD)/qtsqldrivers-config.pri)
加上一句  include(./configure.pir)

(加油,还剩末了一个题目)
2.重新打开mysql.pro,将第六行注释掉,#QMAKE_USE += mysql

留意这个时间需要重新构建,而不是构建!
3.转移驱动

找到之前指定好的dll放置的路径,里面有三个文件

统统拷贝到:D:\code\qt5.14\5.14.2\mingw73_64\plugins\sqldrivers

完成,此时可以连接数据库了!

备注

如果上面的办法照旧不能帮你解决题目,再试试这个:
1.把mysql的bin目录添加到环境变量
2.将mysql安装目录下的lib文件夹下的libmysql.dll,复制到qt的编译器的bin目录下。
------------------------------------------------------------------------------------------------------------------------------
本人是qt小白,技术有限。写得不好的地方希望各位大佬指正包涵,衷心希望帮助您解决题目~

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

拉不拉稀肚拉稀

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表