qt 6.2.4连接mysql 5.7

qt 6.2.4连接mysql 5.7

 记录使用VS2019编写 qt连接数据库时遇见的问题,困扰了我一天才将qt连接MySQL连接起来。

qt连接MySQL步骤

VS配置sql

在这里插入图片描述
VS第一步要导入sql模块,否则无法使用连接MySQL的库。

连接数据库

// 连接数据库使用到的类
#include <QtSql/QSqlDatabase>

// 初始化读取配置文件
	QSettings* configIni = new QSettings("mysql.ini", QSettings::IniFormat);
	//初始化数据库
	db = QSqlDatabase::addDatabase("QMYSQL");
	db.setHostName(configIni->value("conn/ip").toString());
	db.setPort(configIni->value("conn/port").toInt());
	db.setUserName(configIni->value("conn/username").toString());
	db.setPassword(configIni->value("conn/password").toString());
	db.setDatabaseName(configIni->value("conn/database").toString());
	if (!db.open())
	{
		qDebug() << "mysql init failed!";
	}

连接方式大同小异,而且简单,所以大家网上找一找可以找到很多。

导入驱动

按照这个连接方式直接连接并不能成功,而是会报错没有驱动,这个时候需要去编译qt源码,获取到需要的驱动文件。
这个也是困扰了我一天的问题。

首先找到qt的源码目录,如果安装qt的同学没有安装源码的话,可以重新卸载安装或者去直接下载源码。
qt源码目录:D:\qt6.2.4\6.2.4\Src\qtbase\src\plugins\sqldrivers
我在网上查找其他人编译源码的记录都会有 mysql.pro文件,直接用qtcreator打开就可以编译,但是我qt 6.2.4版本没有这个文件,只有cmake文件,所以我用 cmake编译。

在这里插入图片描述
选择对应的文件夹之后,点击 Configure,
在这里插入图片描述
选择对应的VS版本,点击finish,然后等待编译,之后会出现爆红,不要急。
在这里插入图片描述
再等待编译
在这里插入图片描述
再等待之后就编译好了。
编译好了之后,cmake会在最开始创建的build文件下生成这些文件。
在这里插入图片描述
在编译时可能会报错,命令行 error D8016: “/O2”和“/RTC1”命令行选项不兼容 。

在这里插入图片描述
在这里插入图片描述

到此就差不多大功告成,可以全局生成需要的驱动文件了。
编译生成的驱动文件在 D:\qt6.2.4\6.2.4\Src\qtbase\src\plugins\sqldrivers\build\plugins\sqldrivers
要就是刚才的build目录下,前面的目录是我的目录,大家不要也对应上了。
在这里插入图片描述
再讲这两个文件复制在 D:\qt6.2.4\6.2.4\Src\qtbase\src\plugins\sqldrivers qt的插件目录下,即可大功告成。

之后连接数据库就可以成功了,至于增删改查语句我相信大家可以的。

你知道的越多,你不知道的越多,我们下期见。

  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值