您的位置 首页 > 数码极客

如何使用Qt操作mysql

QT默认是不含Mysql驱动的,所以我们需要手工编译Mysql动态链接库,以Win平台举例。


前期准备

下载mysql 数据库 q使用的是my,其他版本没有测试

下载地址:https://dev.mysql.com/get/Downloads/MySQL-5.7/my-winx64.zip

编译mysql驱动

进入Qt源目录

D:\Qt\Q\5.13.1\Src\qtbase\src\plugins\sqldrivers\mysql

编辑my 工程文件

  1. 去掉 //QMAKE_USE += mysql
  2. 增加代码

LIBS += -LD:/software/my-winx64/lib/ -llibmysqlincludePATH += D:/software/my-winx64/includeDEPENDPATH += D:/software/my-winx64/include


修改q文件

返回上一层目录

D:\Qt\Q\5.13.1\Src\qtbase\src\plugins\sqldrivers

修改 include($$shadowed($$PWD)

改为 include($$shadowed($$PWD)


设置mingw环境变量

增加 D:\Qt\Q\5.13.1\mingw73_64\bin

和D:\Qt\Q\Tools\mingw730_64\bin到环境变量


制作Makefile文件

进入D:\Qt\Q\5.13.1\Src\qtbase\src\plugins\sqldrivers\mysql

依次执行

qmake  mingw32-make   mingw32-make install

校验结果

D:\Qt\Q\5.13.1\mingw73_64\plugins\sqldrivers目录下,会生成q,q 两个动态链接库


拷贝驱动

在数据库\my-winx64\lib目录下拷贝libmy到mingw的bin目录

D:\Qt\Q\5.13.1\mingw73_64\bin


项目引入驱动

在工程.pro文件里,添加sql

QT += core gui sql

编写测试代码

//一定要注意 如果出现QSqlDatabase: QMYSQL driver not loaded,清理下,重构 还不行的话切换下QMYSQL,QMYSQL3

db = QSqlDatabase::addDatabase("QMYSQL");

db.setHostName("IP");

db.setPort(3306);

db.setDatabaseName("test");


责任编辑: 鲁达

1.内容基于多重复合算法人工智能语言模型创作,旨在以深度学习研究为目的传播信息知识,内容观点与本网站无关,反馈举报请
2.仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证;
3.本站属于非营利性站点无毒无广告,请读者放心使用!

“如何使用Qt操作mysql”边界阅读