Qt+数据库学习笔记(一)win10+Qt5.12.12+VS2019_x64编译mysql8.0驱动插件

2023-11-14

前言:

因项目需要,需要使用Qt连接mysql数据库。笔者上次使用此数据库,已过去很久了,当前版本都发生了很大的变化,笔者在此记录下本次编译过程

一、安装mysql8.0

注:若读者使用的是win7系统,请提前安装.net4.5,否则可能无法运行或安装失败

到官网下载mysql8.0

下载地址:MySQL :: MySQL Community Downloads

下载安装包

安装过程比较简单,

选择自定义安装

一定要安装数据库!

最新的程序中,已无法单独选择C连接接口,但会包含在数据库中,所以必须选中

 

 

 

 

 以上是笔者的配置,基本上是下一步,安装完成后,运行下workbench

 可以正常使用

二、编译驱动插件

找到Qt5.12.12的源码,先备份,笔者在目录D:\Qt\5.12.12\Src

注:备份是必要的,若源码被修改过,建议去Qt官网重新下载

使用QtCreator打开mysql插件工程,笔者的工程目录如下

D:\Qt\5.12.12\Src\qtbase\src\plugins\sqldrivers\mysql\mysql.pro

打开工程文件后,注释QMAKE_USE,并添加mysql的C连接库,笔者修改如下

TARGET = qsqlmysql

HEADERS += $$PWD/qsql_mysql_p.h
SOURCES += $$PWD/qsql_mysql.cpp $$PWD/main.cpp

#QMAKE_USE += mysql

OTHER_FILES += mysql.json

PLUGIN_CLASS_NAME = QMYSQLDriverPlugin
include(../qsqldriverbase.pri)

win32: LIBS += -LC:/Program Files/MySQL/MySQL Server 8.0/lib/' -llibmysql

INCLUDEPATH += C:/Program Files/MySQL/MySQL Server 8.0/include'
DEPENDPATH += C:/Program Files/MySQL/MySQL Server 8.0/include'

mysql的C连接库,请读者自行修改成自己的库地址

修改完成后,直接运行就可以。运行过程中,可能会报错,不用关心,直接忽略即可

编译完成后,在根目录下,可以找到已经编译好的驱动插件,以下是笔者的

 直接将些文件,复制到Qt5.12.12套件目录中,笔者的目录如下

三、测试驱动插件

在QtCreator中,找到SQL Browser示例,

 

 选择好套件,直接运行

 设置好连接参数,并连接

 

 可以看到正常连接mysql8.0数据库了

可能遇到的问题:

连接数据库时,提示如下错误

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

问题原因:

驱动插件找不到驱动库

解决方法:

到mysql安装目录,复制如下文件到程序当前目录或Qt5.12.12的bin目录中

C:\Program Files\MySQL\MySQL Server 8.0\lib\libmysql.dll

注:此库依赖openssl库,若读者未安装过openssl,仍然无法运行

为方便读者测试,笔者已经打包到一起,有需要的读者可以自行下载测试

后记:

笔者很长时间没编译mysql驱动插件了,当前只是完成了64位VS版本的编译,下一篇,笔者介绍下编译32位VS的驱动插件

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

Qt+数据库学习笔记(一)win10+Qt5.12.12+VS2019_x64编译mysql8.0驱动插件 的相关文章

随机推荐

  • 在vs2019上编写Linux系统下的c++程序_远程 Linux 系统上的 Ubuntu

    在vs2019上编写Linux系统下的c 程序 远程 Linux 系统上的 Ubuntu 正文 遇到的问题 方法一 如果方法一无法解决 您可以尝试方法二 正文 第一步 先将自己的Linux 系统设为静态IP 具体操作如下 在修改以下文件时
  • 做好三件事,就能避免远程办公变成“肥宅办公”

    随着上海疫情持续 越来越多的白领开启了远程办公 可由于宅家办公运动量小 一天三餐还是照常吃 因此有些人的远程办公渐渐变成了 肥宅办公 自己变得不爱动弹 体态也变得臃肿 这可怎么办才好 专业人士表示 如果做到了这三件事就可以避免远程办公变成
  • 微信小程序(或uniapp)引入腾讯视频插件播放视频

    1 申请插件 注意 个人开发者无法使用 登录微信公众平台 在你的小程序后台的设置 第三方服务 插件管理 搜索插件并点击添加 添加成功之后 点击详情 查看该插件的具体信息 拿到该插件的appid以及版本号 github地址 https git
  • 使用ogg 从oracle 同步mysql遇到问题记录

    ORACLE 同步mysql遇到问题 2018 08 27 10 59 54 WARNING OGG 01004 Aborted grouped transaction on DESIGNXXxx Database error 1105 S
  • SQL批量操作大全

    1 list嵌套list查询SQL
  • 解决IDEA中maven导入jar包

    查 看 File gt Project Structure gt Libraries如下面没有maven所引入的jar包则为该错误 1 错误原因 是导入的module错误 应该导入maven的module 解 决 File gt Proje
  • JS 传各种文件到后端

    一个前端上传文件按钮功
  • 伯努利分布的最大似然估计

    前言 昨天晚上参加阿里巴巴的实习面试 各种被虐 面试了将近90分钟 才做了3个题 加上项目的介绍 在机器学习方面 问到了一个伯努利分布的最大似然估计的推导 想到逻辑回归的推导就是利用最大似然估计 然后就套用了其推导过程 可能前面被说的有点迷
  • python之js解密_python中的RSA加密和JS中的解密

    我是密码学的全新人物 我想从服务器端生成RSA密钥对 并将其发送给所有客户端 浏览器 但在此之前 我只是通过加密python中的数据并通过pubnub发送到index html文件并尝试在JavaScript中解密来测试场景 问题是当我做加
  • Redis——Windows安装

    本篇只谈安装 后续会深入讲解Redis 比如它的内存管理 快照 订阅等待 针对不同的用户 Redis有Windows和Linux两种环境安装 官网上下的是Statble版是Linux 大家一定要注意 由于本人做本地端 所以以下谈的是Wind
  • SpringBean生命周期&扩展接口&简化配置

    目录 1 生命周期简图 2 扩展接口介绍 BeanFactoryPostProcessor接口 Aware接口 BeanPostProcessor接口 InitializingBean接口 DisposableBean接口 3 spring
  • kafka 集成SpringBoot

    目录 一 Kraft模式 配置 集群启动停止脚本 二 集成SpringBoot 资源配置 生产者 消费者 三 API 依赖 yml格式配置文件 properties格式配置文件 一 Kraft模式 kafka 2 8 0后新特性 2 8 0
  • 【Monkey测试】手机app测试性能测试,Monkey测试详解(全)

    目录 导读 前言 一 Monkey工具 二 Monkey的优劣 三 Monkey 命令 四 Monkey结果分析 五 Monkey详细 六 Monkey用来做什么 七 Monkey程序介绍 八 Monkey命令基本参数 九 Event pe
  • 无线网络安全——1、WiFi安全基础知识

    0x01 WiFi简介 智能手机的快速发展已将近十年左右 较之旧款的非智能手机 最大的区别应该是在于其强大的上网功能 在4G技术已经普及的今天 无奈国内的电信运营商们把移动联网流量的价格抬的让人无法深爱 加之家庭用户和企业用户对于物理网络线
  • Linux基础命令-du查看文件的大小

    文章目录 du 命令介绍 语法格式 基本参数 参考实例 1 以人类可读形式显示指定的文件大小 2 显示当前目录下所有文件大小 3 只显示目录的大小 4 显示根下哪个目录文件最大 5 显示所有文件的大小 6 只显示目录下的文件 不显示目录下的
  • 2017 408选择题错题

    2017 408选择题错题 1 下列函数的时间复杂度是 int func int n int i 0 sum 0 while sum lt n sum i return i sum i 等于 sum sum i sum 0 i 0 sum
  • 错误笔记: Could not get lock /var/lib/dpkg/lock - open (11: Resource temporarily unavailable) E: Unable ...

    alexander alexander virtual machine sudo apt get install y httpdE Could not get lock var lib dpkg lock open 11 Resource
  • 5.基本统计方法-连续性变量的组间比较

    目录 1 两样本的定量变量的假设检验 1 1 单样本t检验 1 2 两独立样本t检验 1 3 配对样本t检验 1 4 正态性检验和方差齐性检验 2 多样本定量变量的假设检验 2 1 基本知识 2 2 单因素方差分析 2 3 单因素的协方差分
  • vs code 安装插件出现XHR error 解决办法

    在给vscode安装颜色主题时 突然发现出现错误XHR failed 插件安装失败 后来想起可能是因为修改过系统时间 果然在恢复自动设置时间之后 插件就可以安装成功了
  • Qt+数据库学习笔记(一)win10+Qt5.12.12+VS2019_x64编译mysql8.0驱动插件

    前言 因项目需要 需要使用Qt连接mysql数据库 笔者上次使用此数据库 已过去很久了 当前版本都发生了很大的变化 笔者在此记录下本次编译过程 一 安装mysql8 0 注 若读者使用的是win7系统 请提前安装 net4 5 否则可能无法