qt5.12.3及以上高版本(qt5.13.0,qt5.13.1)如何连接操作mysql/mariadb数据库

3 篇文章 0 订阅

公司项目使用qt5.12.0,qt5.12.1,qt5.12.2均进行过开发连接mysql没有问题,因为这几个版本内置mysql数据库驱动.直到昨天安装qt5.13.0和qt5.13.1进行测试,发现连接mysql时提示没有驱动加载, 这是qt报错的提示"QSqlDatabase: QMYSQL driver not loaded

,QSqlDatabase: available drivers: QSQLITE QODBC QODBC3 QPSQL QPSQL7".从这里可以清晰的知道目前,qt5.12.3及以上和qt5.13.0及以上,均没有mysql的驱动,mysql的驱动名是QMYSQL.因为没有在有效的驱动里,所以就需要自己编译配置了.

有朋友一听到编译源码,可能就觉得很难,这里我告诉你,非常简单.打开项目后,点击编译就好了.下面说下步骤:

1.下载64位的MySQL Community Server,目前最新版本是8.0.17,下载地址是https://dev.mysql.com/downloads/mysql/.

因为我得qt是mingw编译器64位的.完成后解压即可.不用安装的.

2.打开qt安装目录找到:qt安装目录\5.13.1\Src\qtbase\src\plugins\sqldrivers\mysql,我得目录和你安装的目录有差别也不奇怪,因为我的是多个版本的qt都在,所以进行了区分.如下图的目录.

打开目录后,用qt打开mysql.pro,在mysql.pro中添加

#该路径是下载解压后的mysql的头文件路径
INCLUDEPATH +="E:\mysql-8.0.17-winx64\mysql-8.0.17-winx64\include"
#这是刚才下载解压后的MySQL的库文件路径
LIBS +="E:\mysql-8.0.17-winx64\mysql-8.0.17-winx64\lib\libmysql.lib"
 
#为了方便查找,不妨增加一条语句,该语句用来指明编译后的结果输出的位置
DESTDIR  = ../mysql/lib/

同时屏蔽QMAKE_USE += mysql:如下.如果不屏蔽会提示mysql库不存在.

#QMAKE_USE += mysql

 

完整的pro文件如下:

 

 

 

那么接下来,就点击编译按钮即可.不用其他操作.如果顺利你可以在目录下看到lib目录,如下

lib里有4个文件下图:

然后复制lib下的生成文件到D:\Qt\Qt5.13.1\5.13.1\mingw73_64\plugins\sqldrivers中.如下

 

恭喜你到这步,已经完成了mysql的驱动.你可以正常使用mysql数据库和mariadb数据库了.

如果你使用的是64位的mariadb数据库,只需要将mariadb数据库C:\Program Files\MariaDB 10.4\lib下的libmariadb.dll复制到qt的调试文件夹中改名为libmysql.dll即可.

qt中国群218967017/218967042 , 思年华编写

切记:不同版本的qt,一定要重新编译mysql.pro项目得到不同的mysql.dll驱动,因为mysql驱动不通用针对不同的qt版本.

 

义县游学电子科技有限公司,www.yxzhw.cn :

Web应用 桌面应用 数据获取 网站 移动开发 硬件系统

办公软件,通讯聊天,库存管理类

百度,支付宝,头条,微信小程序

适用于频繁多次操作

需要频繁重复性操作页面的情况

公司,个人网站建设

自动采集指定网站的数据信息

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 3
    点赞
  • 43
    收藏
    觉得还不错? 一键收藏
  • 8
    评论
### 回答1: 是的,Qt 5.12.3是最后提供MySQL数据库插件的版本。从Qt 5.13开始,官方不再提供MySQL插件的支持。Qt 5.12.3提供了Qt SQL模块的MySQL驱动程序,使得开发者可以通过该驱动程序连接操作MySQL数据库MySQL是一个开放源代码的关系型数据库管理系统,它被广泛用于各种类型的应用程序开发。在Qt中使用MySQL数据库可以轻松地进行数据存储和检索操作。然而,随着Qt版本的更新,官方不再支持MySQL插件的更新和维护。这意味着,如果您继续使用最新版本Qt,您将无法直接使用MySQL插件,而是需要寻找其他的替代解决方案。一种常见的替代方案是使用Qt提供的支持SQLite的数据库驱动程序,或者使用第三方的MySQL驱动程序。这些替代方案可以满足大多数开发者的需求,因为它们提供了类似MySQL的功能和性能。总之,如果您需要在Qt中使用MySQL数据库,就需要考虑使用Qt 5.12.3或之前的版本,并且还要注意MySQL相关插件的维护和更新问题。 ### 回答2: Qt 5.12.3Qt框架的一个版本,是Qt5系列的一个更新版本。在这个版本中,提供了对MySQL数据库的插件支持。 MySQL是一种使用广泛的关系型数据库管理系统,被广泛应用于各种软件开发和数据管理领域。Qt作为一个跨平台的开发框架,致力于提供丰富而强大的功能供开发人员使用,因此在其框架中提供了对MySQL数据库的支持。通过使用Qt提供的MySQL插件,开发人员可以方便地在他们的应用程序中使用MySQL数据库,进行数据的增删改查等操作。 然而,需要注意的是,Qt框架和MySQL数据库各自都在不断地升级和更新。对于Qt 5.12.3来说,它是在发布时提供了MySQL插件支持的最新版本。在此之后的Qt框架的版本,可能会有其他的修改和更新,包括对MySQL插件的一些改进和修复。因此,如果想要使用最新的MySQL插件功能,建议使用Qt最新的版本。 总之,Qt 5.12.3Qt框架中最后提供MySQL数据库插件支持的版本,通过使用这个版本,开发人员可以方便地在他们的应用程序中使用MySQL数据库进行数据管理操作
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值