Qt数据库应用+绘制扇形

在这里插入图片描述

qt6以上版本是使用在线下载器的,后期对组件的添加可以使用下载器进行添加。
qt

使用qt自带的更新组件时,记得用cmd打开,使用国内镜像源进行下载,这样速度会大大提升。
在这里插入图片描述

1.关系数据库的组织结构
mysql和oracle 是对应的服务器端,Qt对应的是客户端,其实就是一个C/S结构,通过Qt或者第三方的客户端,通过sql语句就可以操作服务器端的数据了。
在我们使用Qt去操作数据库时,Qt这个框架其实是给我们提供了很多连接数据库服务器的驱动的,但是在高版本的qt中这些驱动需要我们自己去编译,官方只是给我们提供了这些驱动相关的源代码。需要将.cpp文件编译成动态库或者静态库,有了这些动态库,就可以根据Qt提供的类连接到相应,其他的关系型数据库上。这样就可以通过客户端对数据库进行操作。 非关系型数据库的操作不需要sql语句。
在这里插入图片描述
row 行 column列
为什么数据库服务器需要绑定端口?
C(客户端)和S(服务器)通信就是一个套接字通信,服务器端启动的时候需要绑定本地ip和端口。也就是客户端通过端口与数据库连接,就可以登陆到服务器上了。

在这里插入图片描述

在这里插入图片描述

二进制数据包括音频,视频,软件安装包等都是二进制文件在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
对于数据库操作流程主要分为:
1.在项目管理文件(.pro)中,增加数据库模块
2.查看Qt中对数据库的驱动的类型的支持
3.连接和打开数据库
4.访问数据库
5.关闭数据库

QSqlquery类
在这里插入图片描述
exec方法的返回值是bool类型,如果执行成功了,返回的是true,如果失败返回的是false。
什么时候需要对返回值进行判定呢? 有三种情况

  1. insert语句   update语句    delete语句
    

如果执行的是查询语句,就会在QSqlquery类中得到一个结果集,然后通过while遍历结果集,对于表结构来说,每个记录,也就是每行,每调用一次next方法就会得到一条记录。
while(query.next()) //遍历数据 next 返回true,说明可以得到记录值,没有得到,返回false;
//结果集遍历完,也返回的是false,或者空的结果集,返回false
在这里插入图片描述
通过value方法,取出每一个字段对应的数值。 index从0开始计数的。
只要是Qt里面支持的数据类型,都可以通过QVariant类进行封装,QVariant类再转成其他具体的数据类型。

SQLite和MySQL的区别
在这里插入图片描述

数据库在QT中的应用: 数据库操作和更新数据到QT控件
知识点一: 数据库操作:更新和删除
知识点二:更新数据到QT控件
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
## QT数据库模型高级接口QsqlQueryModel使用和改造
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值