QT:数据库MySQL加载失败

QT:qt-opensource-windows-x86-5.12.11

MySQL:mysql-8.0.26-winx64

出错问题:

  • QSqlDatabase: QMYSQL driver not loaded

  • QSqlDatabase: available drivers: QSQLITE QODBC QODBC3 QPSQL QPSQL7

解决方法:

1.确定项目编译环境是msvc2017_64,还是mingw73_64。如果两个都用,后面步骤分两次操作。

2.编译目录下,是否存在qsqlmysql.dll和qsqlmysqld.dll

msvc2017_64

D:\Qt\Qt5.12.11\5.12.11\msvc2017_64\plugins\sqldrivers

mingw73_64

D:\Qt\Qt5.12.11\5.12.11\mingw73_64\plugins\sqldrivers

注意:不同编译器下,对应的qsqlmysql.dll和qsqlmysqld.dll不同

3.如果第2步结果是否,那么需要自己编译MySQL驱动对应的DLL文件。 

编译MySQL步骤如下:

  • 用QT Creator 打开路径D:\Qt\Qt5.12.11\5.12.11\Src\qtbase\src\plugins\sqldrivers\mysql下得mysql.pro。如果找不到对应的路径,重新打开QT安装软件,将Sources勾选

  •  修改mysql.pro

注释掉:

QMAKE_USE += mysql

添加:

INCLUDEPATH +="D:/Program Files/mysql/include"
LIBS +="D:/Program Files/mysql/lib/libmysql.lib"

  • 修改qsqldriverbase.pri

注释:

include($$shadowed($$PWD)/configure.pri)

添加:

include(./configure.pri)

 

  •  编译,在项目中,选择编译环境

 

  •  编译结果

将 plugins/sqldrivers文件里的qsqlmysql.dll和qsqlmysqld.dll放入上述编译环境对应的目录下。

msvc2017_64

mingw73_64

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值