Error:QSqlDatabase: QMYSQL driver not loaded (Qt+C++ 找不到mysql的驱动)

2023-11-03

错误描述

QSqlDatabase: QMYSQL driver not loaded
QSqlDatabase: available drivers: QSQLITE QMYSQL QMYSQL3 QODBC QODBC3 QPSQL QPSQL7

场景

使用Qt Create连接数据库时抛出错误,连接代码具体如下:

    db = QSqlDatabase::addDatabase(database.DatabaseType);//MySQL数据库
    db.setHostName(database.DatabaseIP);                // 主机名
    db.setDatabaseName(database.DatabaseName);          // 数据库名
    db.setUserName(database.DatabaseUserName);          // 连接用户名
    db.setPort(database.DatabasePort);                  // 端口号
    db.setPassword(database.DatabasePassword);          // 连接密码

    qDebug() << database.DatabaseType << database.DatabaseIP
             << database.DatabaseName << database.DatabaseUserName
             <<database.DatabasePort<<database.DatabasePassword;
    if(false == db.open())
    {
       QMessageBox::warning(NULL, u8"Error",u8"账号或者密码错误!");
        exit(EXIT_FAILURE);
    }

解决方案

这个是因为缺少mysql的驱动导致的,这里我们需要将libmysql.dll文件复制到qt的安装路径下。

查找libmysql.dll

如果你本地安装过mysql,那么就省事多了。直接去mysql的安装路径下:C:\Program Files\MySQL\MySQL Server 5.6\lib。这时我的路径(安装的默认路径)。
如果你没有安装mysql,那么就需要从官网下载。然后在下载的压缩包中找到libmysql.dll文件。
在这里插入图片描述

将libmysql.dll复制到指定路径

首先需要找到Qt的安装路径,我的路径为:D:\Qt\Qt5.9.9\5.9.9。然后到图中所示路径下,可以看到有MinGW、msvc2013、msvc2015、msvc2017等,这里就是你使用的编译器。
在这里插入图片描述

使用MinGW编译

使用MinGW编译需要复制到MingGW路径下:D:\Qt\Qt5.9.9\5.9.9\mingw53_32\bin,将前面找到的libmysql.dll文件复制到这里。
在这里插入图片描述

使用哪个编译就到哪个文件中的bin目录进行复制即可。

运行

这里我们需要切换到MinWG编译器中。
在这里插入图片描述
然后就可以正常登录咯。

关于Oracle的驱动问题

Oracle需要通过cmake软件手动生成,或者使用 别人生成好的。


C++常见错误

fatal error C1189: #error: STL1003: Unexpected compiler, expected C++ compiler

error C2041: illegal digit ‘9‘ for base ‘8‘ | error C2059: syntax error: ‘bad suffix on number‘

Qt5Error:msvc-version.conf loaded but QMAKE_MSC_VER ins‘t set

Error:E0415 no suitable constructor exists to convert from “int“ to “Rational“

Error:E0415 no suitable constructor exists to convert from “int“ to “Rational“


本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Error:QSqlDatabase: QMYSQL driver not loaded (Qt+C++ 找不到mysql的驱动) 的相关文章

随机推荐

  • Python 数组教程 – 定义、索引、方法

    在本文中 您将学习如何使用 Python 数组 您将了解如何定义它们以及对它们执行操作常用的不同方法 本文介绍了您通过导入array module 我们不会在这里讨论 NumPy 数组 目录 什么是 Python 数组 Python 列表和
  • 【单目标优化算法】杂草优化算法(Matlab代码实现)

    欢迎来到本博客 博主优势 博客内容尽量做到思维缜密 逻辑清晰 为了方便读者 座右铭 行百里者 半于九十 本文目录如下 目录 1 概述 2 运行结果 3 参考文献 4 Matlab代码实现 1 概述 杂草算法代码简单 易于实现 具有较强的自适
  • postman系列-使用变量

    事先声明 以下内容 均来自于postman官网 仅做学习会用 侵删 如果想系统的学习postman 也推荐官网直接学习 谢谢 作用 在请求中和脚本中 使用变量可以存储值和重用值 将值存储在变量中 就可以在collections enviro
  • 静态变量与非静态变量的区别

    静态变量的类型说明符是static 非静态变量反而类型说明符就不是static了 本文主要介绍静态和非静态变量的区别 希望对你有帮助 一起来看 AD 静态变量 静态变量使用 static 修饰符进行声明在所属类被装载时创建通过类进行访问所属
  • 数据结构 每日一练 :选择 + 编程

    目录 选择 编程 选择 A 正确 B 不正确 答案 A 解析 多维数组是一维数组的扩展 也就是数组的数组 例如二维数组可以看作是一维数组作为数据元素构成的一维数组 三维数组可以看作二维数组作为元素构成的一维数组 数组与线性表的关系 数组是线
  • 大学排行榜

    def read file file m 读文件中的学校名到列表中 返回排名前m学校集合 ls if file alumni txt with open file r encoding utf 8 as data for line in d
  • Python——元组的基本语法(创建、访问、修改、删除)

    Python 元组的使用 Python 的元组与列表类似 不同之处在于元组的元素不能修改 元组使用小括号 列表使用方括号 元组创建很简单 只需要在括号中添加元素 并使用逗号隔开即可 gt gt gt tup1 Google Runoob 1
  • 相关滤波之开篇Mosse原理及代码详解

    相关滤波之开篇Mosse原理及代码详解 相关滤波 Correlation Filter 介绍 代码解读 程序框图 本文主要介绍相关滤波算法开篇 mosse具体原理及其python代码实现流程 相关滤波 Correlation Filter
  • LeetCode-字母大小写全排列

    类似于二叉树的前序遍历 左分支代表不转换字母的大小写 右分支代表转换字母的大小写 如果遇到数字就跳过 继续遍历下一个位置 循环的终止条件是扫描到最后一个元素的下一个位置 如果扫描到最后一个元素就停止的话 那么最后一个元素可能还没有进行大小写
  • 【OpenVINO】将TensorFlow模型转成IR文件,并部署到NCS2上运行

    TensorFlow模型 这里以本人用TensorFlow实现的AlexNet模型为例 详见文章用TensorFlow实现AlexNet 且下面的过程都在激活OpenVINO环境后打开的jupyter notebook中完成 模型转换 编写
  • Django模型和数据库操作

    文本参考菜鸟教程 创建模型和数据库 并对mysql数据库进行操作 1 创建数据库 在mysql命令行 输入创建数据库语句 create database runoob default charset utf8 2 修改settings py
  • 部署Phabricator的记录

    前传 开始的时候 试图通过已有的docker来集中部署 发现虽然docker hub里面有一些相关的docker镜像 但是还需要另外运行mysql mariadb的docker 后来多次尝试后 基本卡在两个地方 设置连接db的信息 打开we
  • 新同学熟悉一个新系统 接手新业务

    新人同学熟悉一个新系统 接手新业务对应的另外一篇文章 重构系统 还不是很系统 相关文章 代码阐释系统 从数据分析角度理解一个新系统 个人渣记录仅为自己搜索用的博客 CSDN博客 目录 思想 方法论 动静 归纳总结 演绎 归纳总结 注意层次
  • Kaggle NLP Disaster Twitter竞赛的解决方案(基于TensorFlow 2.x实现)

    最近打算深入研究一下NLP 先拿Kaggle上面的NLP的竞赛来练一下手 之前我已经参加过一个Kaggle NLP的竞赛 题目是根据推特的内容以及情感分类标签 判断推特里面的那一部分内容支持这个情感分类标签的 具体可见我之前的博客 http
  • 【数字预失真(DPD)】静态DPD设计扩展为自适应设计及评估两种自适应DPD设计:基于(最小均方)LMS算法、使用递归预测误差方法(RPEM)算法研究(Matlab&Simulink实现)

    欢迎来到本博客 博主优势 博客内容尽量做到思维缜密 逻辑清晰 为了方便读者 座右铭 行百里者 半于九十 本文目录如下 目录 1 概述 2 运行结果 3 参考文献 4 Matlab代码实现 1 概述 数字预失真 DPD 是一种基带信号处理技术
  • MetaERP系统主要干什么的,华为自研ERP的路子是否可以效仿?

    近日 华为成功研发出自主可控的MetaERP系统 并完成了对旧有ERP系统的替换 该系统采用全栈自主可控技术 基于华为欧拉操作系统 GaussDB等根技术 采用云原生架构 元数据多租架构 实时智能技术等 提高业务效率 提升运营质量 华为自研
  • hdfs:不小心删除了NameNode,如何恢复?

    https mp weixin qq com s biz MzI4OTY3MTUyNg mid 2247495873 idx 1 sn 2aa2057c70e954baa3cecd4ab2a8c170 chksm ec2920c8db5ea
  • Mybatis整合Spring -- typeAliasesPackage

    Mybatis整合SpringintegrationMapperScannerConfigurer Mybatis整合Spring 根据官方的说法 在ibatis3 也就是Mybatis3问世之前 Spring3的开发工作就已经完成了 所以
  • 数据库插入数据时报错 1364 - Field ‘house_name‘ doesn‘t have a default value

    1364 Field house name doesn t have a default value出现的原因以及解决办法 一 表结构 二 问题 执行上面红框中的SQL语句时 报下面红框中的错误 1364 Field house name
  • Error:QSqlDatabase: QMYSQL driver not loaded (Qt+C++ 找不到mysql的驱动)

    错误描述 QSqlDatabase QMYSQL driver not loaded QSqlDatabase available drivers QSQLITE QMYSQL QMYSQL3 QODBC QODBC3 QPSQL QPSQ