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. Nodejs调试之Chrome Devtools

    转载: https://mp.weixin.qq.com/s/tqGWizPUFnuVWRcXcxyv2g 俗话说:"工欲善其事,必先利其器",调试是每一个开发人员都要遇到的问题, ...

  2. golang之fmt格式化

    常用fmt中用于格式化的占位符 普通占位符 占位符 说明 举例 输出 %v 相应值的默认格式. Printf("%v", people) {zhangsan}, %+v 打印结构体 ...

  3. Gitlab之CICD环境变量

    CI/CD variables are a type of environment variable. You can use them to: Control the behavior of job ...

  4. Java基础 —— 集合(一)

    集合(一) 数组和集合的区别 数组是固定长度的数据结构,而集合是动态的数据结构 数组可以包含基本数据类型和对象,集合只能包含对象 数组只能存放同一类型的数据,而集合可以蹲房不同类型的 数组可以直接访问 ...

  5. AI产品落地的多角度探索与实践

    AI产品落地的多角度探索与实践是一个复杂而多维的过程,它涉及技术创新.行业应用.人机协作等多个方面.在构建多智能体平台Agent Foundry的基础上,我们可以将其应用于制造业.教育.政府.跨境电商 ...

  6. 实用干货分享(4)- 分布式金融PaaS容器化部署实战

    ​ ​编辑 一.学习链接 http://www.itmuch.com/docker/00-docker-lession-index/ 二.安装步骤 sudo yum install -y yum-ut ...

  7. 【Python】【Pandas】使用concat添加行

    添加行 t = pd.DataFrame(columns=["姓名","平均分"]) t = t.append({"姓名":"小红 ...

  8. kubeadm init问题

    1.解析不到对应的主机 [WARNING Hostname]: hostname "k8s-master-01" could not be reached  [WARNING Ho ...

  9. okhttp3设置代理(http/https)

    最近项目网络请求需要设置代理,记录一下.http和https都可以. OkHttpClient.Builder builder = new OkHttpClient.Builder(); //代理服务 ...

  10. Qt编写视频监控系统78-视频推流到流媒体服务器

    一.前言 视频推流作为独立的模块,目前并没有集成到视频监控系统中,目前是可以搭配监控系统一起使用,一般是将添加好的摄像头通道视频流地址打开后,读取视频流重新推到流媒体服务器,然后第三方可以从流媒体服务 ...