Qt 学生信息数据库管理

1 添加样式表  

我们采用了样式表 通过添加Qt resources文件 添加前缀 添加文件,将我们的图标进行添加

 

2 拖动部件

用到的部件

  1. Label  标签
  2. Pushbutton  按钮
  3. table view  视图
  4. LineEdit  输入框

3 程序编写

1 配置sql环境

在 pro文件中 添加

连接数据库跟访问数据库用到的头文件 仅main文件 

并不能满足该文所有程序

#include <QSqlDatabase>

#include <QSqlQuery>

2 声明

(1)声明 在h文件中声明用到的函数 和变量

定义了一个报错函数 用来反馈查询结果

 (2)初始化表

这里我在main文件中 进行了表的初始化

3 建立sqlmodel

将student表 跟model绑定,在tableview中显示

并设置方式为OnManualSubmit  表示手动提交 ,与之对应的是 修改即提交

4 槽函数的编写

(1)提交修改

 

(2)删除选中

(3)排序

(4)询问

采用的是 学号 和 姓名 都可以查询

可以单独 也可以 合起来查询

用到的语法

model->setFilter(QString("name = '%1' and sno='%2'").arg(name).arg(sno));

判断输入框是否为空

ui->lineEdit_2->text().trimmed().isEmpty()

Trimmed 作用 -- > 去掉空格  否则不严谨  空格存在也不算空

当查询为空时

当查询不到时

(5)添加新的一行

(6)撤销未提交的修改 和 显示全表

model->revertAll(); 撤销所有未提交的更改。

4 结果演示

初始界面

查询20202203244

查询王强

查询20202203245 和 王强

查询 221 和 小明

提交修改

撤销 和 全表 正常运行 不再演示

新增

删除

演示完毕

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Qt是一个使用C++编写的跨平台应用程序开发框架,它提供了丰富的库和工具来简化应用程序开发过程。其包含了Qt数据库模块,能够方便地与各种数据库进行交互。 对于多个界面访问数据库的情况,可以通过以下方式实现: 1. 数据库连接:在Qt中,可以使用QSqlDatabase类来建立与数据库的连接。通常,在应用程序的主界面中创建数据库连接,并将其设置为全局变量,以供其他界面使用。这样,在多个界面中都可以通过该全局变量访问数据库。 2. 数据库查询:在每个需要访问数据库的界面中,通过使用QSqlQuery类来执行SQL查询语句。可以使用该类的exec()方法执行查询,并通过next()方法逐行读取查询结果。查询结果可以通过调用value()方法获取特定列的值。 3. 数据库更新:如果涉及到对数据库的修改操作,比如插入、更新或删除数据,也可以使用QSqlQuery类完成操作。执行更新操作后,可以通过调用lastInsertId()方法获取插入的最后一条记录的ID。 4. 数据库事务:当多个界面需要同时对数据库进行操作时,为了保证数据的一致性,可以使用数据库事务。Qt提供了QSqlDatabase类的transaction()和commit()方法来处理事务的开始和提交。在需要进行一系列操作时,将这些操作包含在事务中,当所有操作完成后调用commit()方法提交更改。如果出现错误,可以使用rollback()方法进行回滚。 总之,Qt数据库模块提供了便利的方式来实现多个界面对数据库的访问。通过合理地管理数据库连接、查询、更新和事务,可以满足多个界面对数据库的需求,确保应用程序的正确运行。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

牛郎恋刘娘,刘娘念牛郎

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值