qt5 mysql 头文件_Qt 5.14.2 连接Mysql 数据库

本文介绍了在MSVC 2017环境下,如何使用Qt 5.14.2连接MySQL 5.7.30数据库,包括下载安装依赖,配置环境,编译驱动,设置连接参数,并提供了解决打包后无法连接数据库的问题。
摘要由CSDN通过智能技术生成

本文所使用的是MSVC 2017 下进行编译生成的mysql的dll驱动

在第三次更新中使用的是MinGW 64 编译的,操作和MSVC类似,只需替换一个文件即可。MSVC 2017生成的plugin驱动可直接下载。

1.下载mysql 5.7.30 winx64

Mysql 5.7.30 winx64

本文安装目录为 D:\mysql-5.7.30-winx64

2.下载Qt 5.14.2

Qt 5.14.2

本文安装目录为 D:\Qt5.14.2

安装的时候记得选择source 以及 msvc 2017 x64的版本(本文基于此版本进行编译的,其他版本请自行选择)

3.添加系统环境变量

7f5ec11adb2f4e80c9eef477fa7be542.png

8a62ef8af8bb91a931dd6683c1ab8b77.png

4698a51b419711c8738e13d3c5bc9a51.png

4.编译mysql项目工程

工程目录为:D:\Qt5.14.2\5.14.2\Src\qtbase\src\plugins\sqldrivers\mysql

使用qt5.14.2 打开此目录中 .pro项目文件,在打开工程后修改pro中的代码

TARGET = qsqlmysql

HEADERS += $$PWD/qsql_mysql_p.h

SOURCES += $$PWD/qsql_mysql.cpp $$PWD/main.cpp

#QMAKE_USE += mysql

OTHER_FILES += mysql.json

PLUGIN_CLASS_NAME = QMYSQLDriverPlugin

include(../qsqldriverbase.pri)

INCLUDEPATH += "D:/mysql-5.7.30-winx64/mysql-5.7.30-winx64/include"

DEPENDPATH += "D:/mysql-5.7.30-winx64/mysql-5.7.30-winx64/include"

LIBS += "D:/mysql-5.7.30-winx64/mysql-5.7.30-winx64/lib/libmysql.lib

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Qt5 中连接 MySQL 数据库,需要在项目的 .pro 文件中添加 MySQL 驱动程序库的链接。具体步骤如下: 1. 在 Qt 项目的 .pro 文件中添加如下代码: ``` QT += sql ``` 2. 下载 MySQL 驱动程序库,下载地址如下: https://dev.mysql.com/downloads/connector/c/ 3. 将下载好的 MySQL 驱动程序库中的 libmysql.dll 文件拷贝到 Qt 安装目录下的 bin 目录中,如: ``` C:\Qt\Qt5.9.1\5.9.1\mingw53_32\bin ``` 4. 在 Qt 项目的 .pro 文件中添加如下代码: ``` LIBS += -L"path/to/mysql/lib" -lmysql INCLUDEPATH += "path/to/mysql/include" ``` 其中,path/to/mysql/lib 为 MySQL 驱动程序库中 libmysql.dll 文件所在路径,path/to/mysql/include 为 MySQL 驱动程序库中文件所在路径。 5. 在代码中使用以下代码连接 MySQL 数据库: ``` #include <QSqlDatabase> #include <QSqlQuery> QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL"); db.setHostName("localhost"); db.setDatabaseName("database_name"); db.setUserName("username"); db.setPassword("password"); if (!db.open()) { // 连接失败 } else { // 连接成功 } ``` 其中,"QMYSQL" 为 MySQL 驱动程序的名称,"localhost" 为 MySQL 数据库的主机名,"database_name" 为要连接数据库名称,"username" 和 "password" 分别为数据库的用户名和密码。 6. 使用 QSqlQuery 对象执行 SQL 语句,例如: ``` QSqlQuery query; query.exec("SELECT * FROM table_name"); while (query.next()) { QString name = query.value("name").toString(); int age = query.value("age").toInt(); // ... } ```

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值