歌曲封面 未知作品

本站已加入Not By AI项目

使用HTTPS加密

本站已加入博客录 随机博客

粤公网安备44040402000217号

粤ICP备2023130441号

萌ICP备20241924号

网站已运行 1 年 308 天 0 小时 36 分

Powered by Typecho & Sunny

2 online · 620 ms

Title

🥰 Qt与MySQL连接过程中出现“QSqlDatabase: QMYSQL driver not loaded”问题

Emotion

·

·

142次阅读
最佳实践
Article

前因

使用QT连接MySQL的过程中出现:
QSqlDatabase: QMYSQL driver not loaded
QSqlDatabase: available drivers: QSQLITE QMIMER QMARIADB QMYSQL QODBC QPSQL
数据库连接失败: "Driver not loaded Driver not loaded"

原因只有一个:你的项目里面没有QMySQL的驱动导致的。百度教程千千万,全是重复的复制粘贴,也不适合你自己,自己找出原因才是最重要的,此处记录我的真实踩坑经历以及完整的解决方案,希望会对你有所帮助。

开发环境:

  • 操作系统:Windows 11
  • MySQL版本为:8.0.21
  • Qt版本为:6.7。3
  • QtCreator版本 为:14.0.1

解决方法

1. 构建(编译)驱动

较新版本的QT不再内置MYSQL驱动,需要自己构建。可以参考视频:Qt6配置MySQL驱动
视频中编译了MySql 的库(libmysql.dll 和 libmysql.debug)与驱动(qsqlmysql.dll 和 qsqlmysqld.dll)

2.问题

我在操作完成后依旧报错:` QSqlDatabase: QMYSQL driver not loaded
QSqlDatabase: available drivers: QSQLITE QMIMER QMARIADB QMYSQL QODBC QPSQL
数据库连接失败: "Driver not loaded Driver not loaded" `
这就很让人抓耳挠腮了,一方面available drivers: QSQLITE QMIMER QMARIADB **QMYSQL** QODBC QPSQL
然而又**"Driver not loaded Driver not loaded"**。真是让人匪夷所思。

3. 解决

得益于Windows的使用经验,发现还是缺失了一些库。如果不愁内存直接把Mysql/lib目录下的文件全部复制就可以了,有一种简单粗暴的美。
实际上把这几个文件复制到构建好的程序所在目录下就可以了(exe同级目录,目前是添加这几个就可以正常运行)。
libcrypto-1_1-x64.dll
libmysql.dll
libssl-1_1-x64.dll
vcruntime140_1.dllws2_32.dll

现在已有 2 条评论,2 人点赞
Emotion
Author:Emotion
作者
Qt与MySQL连接过程中出现“QSqlDatabase: QMYSQL driver not loaded”问题
当前文章累计共 1582 字,阅读大概需要 1 分钟。
今日反潮
2024年3月4日 · 0评论
亲爱的老师,您好!
2024年7月1日 · 1评论
Qt与MySQL连接过程中出现“QSqlDatabase: QMYSQL driver not loaded”问题
2024年9月30日 · 2评论
Comment:共2条
发表
  1. 头像
    @
    你的才华让人惊叹,你是我的榜样。http://www.hbdttd.com
    · Windows · Chrome · 美国纽约州伊利县威廉斯维尔村ColoCrossing有限公司

    👍

    💖

    💯

    💦

    😄

    🪙

    👍 0 💖 0 💯 0 💦 0 😄 0 🪙 0
  2. 头像
    @
    580xun
    · Windows · Chrome · 美国

    👍

    💖

    💯

    💦

    😄

    🪙

    👍 0 💖 0 💯 0 💦 0 😄 0 🪙 0
搜 索 消 息 足 迹
你还不曾留言过..
你还不曾留下足迹..
博主 不再显示
博主