【全教程】qt连接mysql——从qt编译mysql驱动到qt连接mysql数据库(二、编译连接)
本篇教程分为三个部分:
- 【全教程】qt连接mysql——从qt编译mysql驱动到qt连接mysql数据库(一、编译连接前准备)
- 【全教程】qt连接mysql——从qt编译mysql驱动到qt连接mysql数据库(二、编译连接)
- 【全教程】qt连接mysql——从qt编译mysql驱动到qt连接mysql数据库(三、问题整理)
阅读本文之前需要先查看我的第一篇文章:
【全教程】qt连接mysql——从qt编译mysql驱动到qt连接mysql数据库(一、编译连接前准备)
一、测试结果(测试连接代码在第一篇文章中)
1.第一种:可用驱动中有QMYSQL这个驱动,但是不能加载(刚尝试qt连接mysql的没有复制文件到指定文件夹的不存在这种情况)
2.第二种:可用驱动中没有MYSQL驱动,并且不能加载(第一次尝试基本都是这种报错)
二、编译连接过程
从上述结果报错结果可以知道我们没有MYSQL驱动,那去哪找到mysql驱动呢?QT5.13.2和QT5.14.1两个版本都提供了编译MYSQL驱动的源码,只需要结合我们自己电脑上安装的MYSQL的库文件就可以编译属于自己的MYSQL驱动,MYSQL安装见前一篇文章。
1、找到QT上编译MYSQL驱动的源码
源码的位置在(以qt5.13.2版本为例):F:\Qt\Qt5.13.2\5.13.2\Src\qtbase\src\plugins\sqldrivers\mysql(小伙伴找到qt目录,安装这个文件夹顺序找)
可以看到有以下六个文件,mysql文件夹是我自己备份的文件夹,建议大家在操作之前也进行备份。要是没有这个文件夹可能是安装时选择的组件不足,可以重新安装选择所有组件。
2.用qt打开这个mysql.pro工程文件
打开以后会出现配置项目选择哪一种编译器的界面,这里就需要查看你自己安装的MYSQL是32位还是64位的,如果是64位的MYSQL,则需要用64位的编译器,即Desktop Qt 5.13.2 MinGW 64-bit,本文采用的是32位的。
3.右击项目选择重新构建项目如下图
会出现下面报错:
需要我们将 QMAKE_USE += mysql 这句话注释掉
4.注释掉后,再次进行重新构建项目
会出现以下错误:
主要是因为我们没有mysql.h这个文件,那么这个文件在哪?在我们自己安装的mysql里面,在sql安装目录的include下(我的路径:F:\MySQL\MySQL Server 5.5\include)。
所以需要我们在.pro文件添加这些路径,也即加上下面这两句话,路径是我自己的,需要改成你们自己的:
INCLUDEPATH+="F:\MySQL\MySQL Server 5.5\include"
LIBS+="F:\MySQL\MySQL Server 5.5\lib\libmysql.lib"
5.加上这两句话后再次进行重新构建
(1)出现下面的bug表示你用的qt MinGW 位数与MYSQL位数不一致
(2)若出现下面的bug,若是不出现可能就表示编译出驱动,直接看第六步。
这个bug下面图片上的这句话有关系,我测试的时候原来的相对路径不好用,所以我才用的绝对路径,大家可以自由选择,改成自己文件的路径即可。
我们按照这个路径打开这个文件(用记事本即可)可以看到include里面的qtsqldrivers-config.pri文件并不存在,而存在configgure.pri这个文件,所以我们将include包括的文件改成configgure.pri这个文件,即改为:include(./configure.pri)
6.再次进行重新构建,构建过程可以查看“4编译输出”这一栏的输出
出现下面的结果就表示我们编译成功了!
7.编译成功以后就可以直接去找我们编译成功后的驱动,因为我们没有设置输出目录所以默认在qt安装的盘下,比如我的qt在F盘,所以这个输出也在F盘,路径:F:\plugins\sqldrivers
8.将编译好的驱动(所有文件复制过去就行,省事)放到对应的MinGW编译器的文件夹中,我用的32位的就放在:F:\Qt\Qt5.13.2\5.13.2\mingw73_32\plugins\sqldrivers中,64位的就在F:\Qt\Qt5.13.2\5.13.2\mingw73_64\plugins\sqldrivers中。
9.编译测试代码,注意是测试代码,不是上边的mysql代码。测试代码见第一篇文章。注意编译也需要用对应的编译器,生成是32位的就要用32位的编译器,64位的就是64位的编译器。
结果如下,这表示已经存在驱动,但是还没有加载,还需要我们从mysql的安装目录复制文件到MinGW的文件夹中。
10.将F:\MySQL\MySQL Server 5.5\lib中的libmysql.dll与libmysql.lib复制到mingw的bin文件夹中即:F:\Qt\Qt5.13.2\5.13.2\mingw73_32\bin。
11.再次对测试代码进行测试发现成功!
部分报错问题请查看第三篇文章:【全教程】qt连接mysql——从qt编译mysql驱动到qt连接mysql数据库(三、问题整理)
转载参考分享此篇文章请注明出处!
【全教程】qt连接mysql——从qt编译mysql驱动到qt连接mysql数据库(二、编译连接)相关推荐
- vc6配置c语言编译环境,驱动WDK7600在VC6.0下的编译开发配置环境
网上找了很多资料,都不好使.相信有很多像我一样偏好VC6.0的家伙,最新的WDK真的用不了么?必须可以!!! 开始之前要一定要明确一件事情,单独使用WDK+记事本就可以开发驱动,和VC的编译器耗无关系 ...
- sqllite连接远程mysql_sqlite数据库如何远程连接?
sqlite数据库如何远程连接代码如下: QSqlDatabase db =QSqlDatabase::addDatabase("QSQLITE"); db.setHostName ...
- 戴尔服务器光盘装Linux系统,DELL服务器引导光盘下载连接,DELL引导盘万能驱动支持所有型号...
DELL服务器引导光盘下载连接,DELL引导盘万能驱动支持所有型号 注意了.以下连接有所有的DELL服务器引导光盘驱动.请注意DELL服务器是DVD光驱还是CD光驱然后下相应的ISO 下面引用原文 如 ...
- 【全教程】qt连接mysql——从qt编译mysql驱动到qt连接mysql数据库(一、编译连接前准备)
一.说明 电脑系统:win10 qt版本:5.13.2和5.14.1(测试均成功) mysql版本:MySQL-5.5 本篇教程分为三个部分: [全教程]qt连接mysql--从qt编译mysql驱动 ...
- Qt连接mysql数据库、数据库开启远程连接,实现QQ登录、注册、修改密码功能(已实现),后续继续更新中...
视频示例:如下直通车 Qt连接数据库 个人博客直达 一.安装Mysql数据库软件 1.下载安装连接:点击连接 2.解压,打开如下 3.设置环境变量 4.修改添加环境变量 5.新建配置文件my.ini( ...
- 【Qt】Qt5.12版本编译Oracle驱动教程
00. 目录 文章目录 00. 目录 01. Qt5.12安装 02. Qt安装注意事项 03. Qt版本和Oracle安装路径说明 04. Qt5.12编译Oracle驱动(使用MinGW 64位) ...
- qt4.7 mysql 6.3 版本_详解Qt 4.7编译和访问Mysql驱动
Qt4.7编译和访问Mysql驱动是本文要介绍的内容,不多说,我们来看内容.今天摸索了一上午,终于用qt连上mysql了 1.安装一个mysql5.0以上版本*** 要求:(1)安装路径不要有空格和点 ...
- arm qt mysql插件_编译ARM平台的QtEmbedded的MySQL插件和移植MySQL
编译ARM平台的QtEmbedded 的MySQL插件和移植MySQL 到ARM开发板 经过几天的努力,终于交叉编译出了arm平台所需Qt/E的MySQL插件(驱动),其中顺便把MySQL也移植到了m ...
- 红帽linux 下qt 5.13.1 编译 mysql80驱动(内含升级gcc版本)
前言: 本地一台redhat linux虚拟机已经安装了qt5.13.1以及mysql80 详细的安装流程可通过如下链接查看 linux 安装qt 安装mysql 在qt的数据库编程阶段,需要对 ...
最新文章
- 科学家从脑电图中解读大脑的运动意图
- 高级C语言教程编码风格
- SiameseRPN详解
- 【LeetCode - 443】压缩字符串(模拟)
- SQL必知必会-使用游标
- 配置阿里云docker加速与云镜像配置
- Promise的deferred对象详解
- poj 3928 树状数组
- 蚂蚁自研数据库OceanBase基于木兰公共协议正式开源
- C程序设计案例(牛顿迭代法求高次方程的根)
- 山东大学校内网盘开发日志4-目前开发思路
- fortran---说实话,不知道记录有什么用 写着玩吧
- HZNUOJ 2058 凯撒密码
- 什么是业务中台、数据中台、技术中台?
- AI人脸识别的实现SDK
- cad指定服务器名称,天正打开后CAD显示服务器名称为空? CAD 服务器名称为空
- 竞业协议“下沉”,普通程序员逃不过的坑
- 有限体积法求解二维方腔流(二)——边界条件处理及SIMPLE和PISO算法
- 基于java码头船只出行及配套货柜码放管理系统(含源文件)
- shell的sort命令的-k参数
热门文章
- android 加花工具下载,Android 代码混淆并加花
- 神奇电子计算机 教学设计,大连理工版三年级下册信息技术 7. 神奇的艺术字 教案...
- idea启动项目提示端口占用怎么办
- 刚刚!核电老将俞培根晋升东方电气集团董事长
- 深度解析!短视频如何成为现象级产品
- 期末作业代码网页设计代码——网站商城后台通用模板(30页) 大学生后台模板网页作品商城网页设计作业模板 学生网页制作源代码下载
- 上传图片 可限制大小和文件类型
- 可以伪装成计算机的应用,伪装成计算器隐藏应用软件
- java经典50道编程题(很好练逻辑思维的题)(第一篇)
- keras实现回归预测