2024年最全【QT】使用QT连接并操作MySQL数据库(QT5(1),2024年最新物联网嵌入式开发系列学习进阶视频

img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上物联网嵌入式知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、电子书籍、讲解视频,并且后续会持续更新

如果你需要这些资料,可以戳这里获取

打印出的结果如下:

通过查看QT的安装目录,也可以发现在QT的安装目录中并没有MySQL的动态链接库,我的查看目录如下所示:

版本不同目录可能不一样,但基本上都是在mingwXX_XX\plugins\drivers目录下。需要注意的是,mingwXX_XX一定要和你的QT工程采用的编译器保持一致!

可见,当前QT版本并不支持MySQL。

所以我们需要通过重新编译的方式生成MySQL的动态链接库。

3、重新编译MySQL动态链接库

首先找到QT的源代码安装目录(这就是为什么一定要安装QT的Source,我当时找不到这个郁闷了半天),找到mysql.pro工程,我的具体目录如下所示:

然后在QT中打开mysql.pro,配置工程,选择编译器,和你的QT工程的编译器保持一致:

然后按照如下方式修改mysql.pro文件:

首先注释掉 QMAKE_USE += mysql ,然后分别添加INCLUDEPATH(在mysql安装目录下)和LIBS(在mysql安装目录下),和DESTDIR(这个是动态库的生成目录,可以直接参考这种写法)。.pro文件修改完成之后保存,然后直接编译(点击QT左下角的锤子标志),直接编译即可,其他的不用管。此时,就可以下当前工程目录下找到新生成的mysql动态库文件,如下所示:

至此,mysql的动态链接库生成完毕。

4、配置QT

前面已经生成好mysql的动态链接库,接下来需要将生成的库拷贝到正确的目录下就可以了。

首先,将生成的三个库文件全部拷贝到QT的数据库引擎目录下(注意编译器的选择,和你的QT工程保持一致),如下所示:

然后将,MySQL安装目录下的mysql库文件,如下所示:

拷贝到QT的目录下,目录如下所示(注意编译器文件的选择):

此时,关于QT中MySQL的配置已经全部完成。通过上面的语句可以看到,当前的QT已经支持MYSQL了:

5、MySQL的简单操作

5.1、连接数据库

    //链接数据库
    QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL");

    db.setHostName("127.0.0.1");
    db.setUserName("root");
    db.setPassword("pwd");
    db.setDatabaseName("db_test");
    if(!db.open()){
        qDebug() << "未成功链接到数据库";
    }else{
        qDebug() << "成功链接到数据库";
    }

5.2、插入数据

    QSqlQuery query(db);
    bool re = query.exec("INSERT INTO table_name (col1, col2, col3) VALUES (1, 1, 2)");
    //bool re = query.exec("insert into table_name values(3, 1, 2)");

    if(!re){
        qDebug() << "操作数据库失败!" ;
    }else{
        qDebug() << "操作数据库成功!" ;
    }

5.3、更新数据表

    bool re = query.exec("update table_name set col2=2, period=1 where col1=1");


**收集整理了一份《2024年最新物联网嵌入式全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升的朋友。**
![img](https://img-blog.csdnimg.cn/img_convert/76c47c5ed0a03e25641f2ce27960d33f.png)
![img](https://img-blog.csdnimg.cn/img_convert/3fe774b468f849d897a60b3c0fca56f3.png)

**[如果你需要这些资料,可以戳这里获取](https://bbs.csdn.net/topics/618679757)**

**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人**

**都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**

s.csdn.net/topics/618679757)**

**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人**

**都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**

  • 12
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 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、付费专栏及课程。

余额充值