Qt数据库驱动编译(MySQL)

哈喽!我是 Pro_er,一名热爱编程的小伙伴。在这里我会分享一些实用的开发技巧和经验心得。如果你也对编程充满热情,欢迎关注并一起交流学习!

第一步:安装所需文件

/**
* 注意 Qt和MySql的位数要相同都为64或者32位
* Qt 安装的时候一定要安装源码(Sources)不然没办法编译
* 安装就靠你自己啦,相信你可以的 :)
*/
1. Qt下载地址:https://www.qt.io/zh-cn/product/development-tool
2. MySQL下载地址:https://dev.mysql.com/downloads/

第二步:当下载安装好之后就可以开始编译啦

1. 打开你安装的Qt文件目录然后在(D:\C++Software\QT\6.6.3\Src)文件下将qtbase文件夹拷贝到一个新的空文件夹下面。

注意:D:\C++Software\QT\6.6.3\Src路径是我自己的,你的按照你的安装目录的实际情况,空文件夹位置随意

拷贝到新的文件夹下如图

2. 将MySQL安装目录下的includelib文件夹拷贝到一个新的空文件夹下面

空文件夹位置随意

3. 打开新拷贝文件夹qtbase下的(\qtbase\src\plugins\sqldrivers)目录,找到CMakeLists.txt文件,然后使用Qt Creator打开txt文件

打开之后选择套件

4. 完成之后点击.cmake.conf在其中添加下面三行代码

/**
* SET(FEATURE_sql_mysql ON)
* SET(MySQL_INCLUDE_DIR "刚才复制的include文件夹的路径")
* SET(MySQL_LIBRARY "刚才复制的lib文件夹的路径/libmysql.lib")
*/
SET(FEATURE_sql_mysql ON)
// 这里放的include的路径是你自己上面新拷贝的include的路径
SET(MySQL_INCLUDE_DIR "D:/QtMysqlCompile/mysqlFile/include")
// 这里放的lib的路径是你自己上面新拷贝的lib的路径
SET(MySQL_LIBRARY "D:/QtMysqlCompile/mysqlFile/lib/libmysql.lib")

5. 添加好之后保存,然后点击编译

这样即为编译成功

6. 编译成功之后将下面路径中的qsplmysql.debugqsqlmysql.dll文件进行复制

\qtbase\src\plugins\sqldrivers\build\Desktop_Qt_6_6_3_MinGW_64_bit-Debug\plugins\sqldrivers

7. 将复制到的文件粘贴到下面路径的sqldrivers目录下

D:\C++Software\QT\6.6.3\mingw_64\plugins\sqldrivers(注:使用自己软件的安装目录)

8. 将自己MySQL安装目录下的lib目录中的 libmysql.dlllibmysql.lib文件复制

9. 将复制的文件粘贴到下面路径的bin目录下

D:\C++Software\QT\6.6.3\mingw_64\bin(注:使用自己软件的安装目录)

恭喜你,你已经完成对MySQL驱动的编译和添加啦

第三步:就可以查看一下你的Qt是否有MySQL的驱动啦

1. 打开Qt Creator,新建一个控制台项目

2. 在.pro文件中添加字段

QT += sql

3. 编写代码查看驱动列表

在代码中一定要记得加入QSqlDatabase头文件哦

#include <QCoreApplication>
#include <QSqlDatabase>
#include <QDebug> int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv); QStringList list = QSqlDatabase::drivers();
foreach (QString item, list) {
qDebug() << item;
} return a.exec();
}

构建,运行就可以查看驱动列表了,可以看到已经加入了MYSQL的驱动

以上就是这次的所有内容啦,希望能对小伙伴有所帮助。如果小伙伴有任何想法或建议,欢迎留言讨论。感谢阅读,我们下次再见,byebye~

Qt数据库驱动编译(MySQL)的更多相关文章

  1. Qt添加驱动——Qt数据库之添加MySQL驱动插件

    Qt数据库之添加MySQL驱动插件(1) 现在可用的数据库驱动只有3种,在Qt中,我们需要自己编译其他数据库驱动的代码,让它们以插件的形式来使用.下面我们就以现在比较流行的MySQL数据库为例,说明一 ...

  2. ThinkPHP数据库驱动之mysql事物回滚

    1.开启事务方法 startTrans()2.事务提交方法 commit()3.事务回滚方法 rollback() 用法例子: $order = M(‘order’); $allAdded = tru ...

  3. Qt之编译MySQL数据库驱动(MSVC)

    Qt之编译MySQL数据库驱动(MSVC) (2013-12-13 20:24:46) 转载▼ 标签: qt mysql qmysql qt编译mysql qt之msvc编译mysql 分类: Qt ...

  4. Qt+数据库

    前言支持内置数据库: 一.sqlite 1.在头文件中声明数据库对象 QSqlDatabase db; 2.在构造函数中定义对象(最好这样定义,因为对于db来说只需要addDatabase一次,否则多 ...

  5. 解析Qt4.7.3编译MySql数据库驱动,存中文乱码、过滤转义字符问题

    问题:使用QSqlDataBase类建立连接MySql数据库驱动加载失败 QSqlDatabase: QMYSQL driver not loaded QSqlDatabase: available ...

  6. Qt Mysql驱动编译过程

    1.首先当然是要有VS2008+Qt4.7的开发环境. 2.安装MySQL,最好是4以后的版本,安装MySQL时要勾住“C Include Files 和 Lib Files”选项,这样才能装上MyS ...

  7. QT使用MySql的配置(使用addLibraryPath载入插件),编译QT的MySql驱动问题及解决方案(自己使用libmysql.lib进行编译mysql.pro,万不得已可以查看Makefile.Debug以解决问题)

    2010/04/23:Fixes : 更新批处理,以兼容WIN7. 第一次系统地玩QT,于是诞生了此预备式: [QT版本4.6.0(VS2008编译版),开发平台推荐使用Qt Creator(最新1. ...

  8. QT编译Mysql驱动问题及解决方案

    默认情况下,qt 并没有自带mysql的数据库插件,需要自己编译先安装mysql server ,运行setup.exe时选择自定义安装,安装目录设为"D:\mysqldev"不要 ...

  9. Window下 Qt 编译MySQL驱动(居然用到了动态库格式转换工具)

    一步步在Window下开发Qt 今天开始安装MySQL,看了些关于MySQL安装的博文,方法大致相同,但是遇到的细节问题各有不同,或者没有讲全面,下面来说说个人的安装过程及遇到的问题. 1.首先下载, ...

  10. Windows下QT MySQL驱动编译

    在Windows环境中使用Qt进行关于MySQL数据库的操作时,会出现如下问题: QSqlDatabase: QMYSQL driver not loaded QSqlDatabase: availa ...

随机推荐

  1. 看不懂来打我,Vue3的watch是如何实现监听的?

    前言 watch这个API大家都很熟悉,今天这篇文章欧阳来带你搞清楚Vue3的watch是如何实现对响应式数据进行监听的.注:本文使用的Vue版本为3.5.13. 关注公众号:[前端欧阳],给自己一个 ...

  2. vue父组件向子组件传递一个对象,使用一个对象绑定多个 prop

    如果你想要将一个对象的所有属性都当作 props 传入,你可以使用没有参数的 v-bind,即只使用 v-bind 而非 :prop-name.例如,这里有一个 post 对象: export def ...

  3. golang之errors包

    errors包常用方法 func Unwrap(err error) error // 获得err包含下一层错误 func Is(err, target error) bool // 判断err是否包 ...

  4. getent使用小结

    转载请注明出处: getent 是一个用于访问系统数据库的命令,通常用于获取与网络有关的信息,比如用户.组.主机名.服务等.这个命令是 Linux 和 Unix 系统中非常有用的工具,可以用来查询多种 ...

  5. 【集成-Nacos】SpringBoot集成Nacos

    注意:以下主要演示动态配置 Nacos 是什么? Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service的首字母简称,一个更易于构建云原生 ...

  6. SaaS架构中多租户的概念

    SaaS架构中多租户的概念 租户可以理解为部署在云端的客户,通常出现在2B的企业中,比如现在学校的一卡通管理,通常是一个公司来做的,学校本地不需要做任何部署,而这个公司又是服务了很多个学校,那么学校对 ...

  7. 攻防世界:Crypto习题之easy_RSA

    攻防世界:Crypto习题之easy_RSA RSA 加密 在非对称加密算法中,单向函数被广泛应用,用于确保从公钥加密后的密文无法轻易推导出私钥,从而保证数据的安全性.而其中最著名的算法便是 RSA ...

  8. 调用xlst执行转换

    try { //Create a new XslTransform object. XslCompiledTransform xslt = new XslCompiledTransform(); // ...

  9. Redis应用—3.在购物车里的应用

    大纲 1.社区电商购物车的读多写多场景分析 2.购物车的复杂缓存与异步落库(Sorted Set + Hash -> hPut + zadd) 3.购物车异步落库与完整加入流程(缓存雪崩 + M ...

  10. 从底层源码深入分析Bean的实例化

    生命周期的整体流程 Spring 容器可以管理 singleton 作用域 Bean 的生命周期,在此作用域下,Spring 能够精确地知道该 Bean 何时被创建,何时初始化完成,以及何时被销毁. ...