自己做的项目,全CSDN唯一,禁止转载,基于pyqt5的学生成绩管理,带登录注册,基本的学生信息的增加、修改、删除、查询和选课,课程信息的增加、修改、删除、查询,成绩的添加、修改、查询等功能,用pycharm导入,安装依赖包,配置好数据库就可以正常运行了,里面的代码都含有注释,结构简单,清晰易懂,看一下就会了,可以基于这个来做二次开发都行,有需要可以私聊,项目结构如下:
《学生成绩管理系统》
--方案设计说明书
该项目开发的软件为学校学生信息管理系统软件,是鉴于目前学校学生人数剧增,学生信息呈爆炸性增长的前提下,学校对学生信息管理的自动化与准确化的要求日益强烈的背景下构思出来的,该软件设计完成后可用于所有教育单位(包括学校.学院等等)的学生信息的管理。
目前社会上信息管理系统发展飞快,各个企事业单位都引入了信息管理软件来管理自己日益增长的各种信息,学生管理系统也是有了很大的发展,商业化的学生信息管理软件也不少,但本系统完全独立开发,力求使系统功能简洁明了,但功能齐全且易于操作。
学生信息管理系统是一个教育单位不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要。
本系统完成了学生信息的增加、修改、删除、查询和选课,课程信息的增加、修改、删除、查询,成绩的添加、修改、查询等功能。
【关键字】:
信息管理系统、模块设计、软件工程。
学生信息管理系统的功能总结起来,共需要以下几个方面:
1、登录功能
具有账号的操作者登录使用系统
2、学生信息管理
管理所有学生的基本信息,包括增加、修改、删除等,也可以根据各种条件查询出需要的信息。
3、学生成绩管理
根据学号进行登记课程的成绩,可以根据学号查询出来选课信息与成绩。
3.1开发环境
名称 | 内存 | CPU | 磁盘 |
笔记本 | 8GB | Intel酷睿i5-8250U | 238.35GB |
3.2工具列表
描述本软件运行所使用的计算机软件及版本,包括:
1) 操作系统:Windows
2) 数据库系统:Mysql
3) 开发平台及工具:PyCharm, Pyqt5
4) 通信协议:TCP/IP
5) 其他软件:Navicat数据库连接工具
3.3结构设计
结构设计,根据对系统的需求分析,本系统将分为5个功能模块:
模块名称 | 描述 |
登录模块 | 登录界面,提供账号和密码输入框。 |
学生管理模块 | 管理学生的基本信息,提供个人信息的添加、修改、删除,以及选课信息的添加。 |
学生查询 | 查询已经登记的学生的基本信息 |
成绩管理 | 管理学生的选课的成绩信息,包括成绩的登记与修改。 |
成绩查询 | 查询已经登记的成绩信息。 |
表 功能模块表
3.4功能结构图
|
4.1 工作流设计
1.登录
管理员使用账号和密码进行登录,系统对账号和密码进行校验
2.增加学生信息
系统操作人员打开学生信息添加界面,输入相关的信息(姓名、性别、年级等),在数据库中添加相关数据。
3.修改学生信息
根据学生的学号查询出该学生的相关信息,修改相关条目后保存在数据库中。
4.删除学生信息
根据学生的学号查询出该学生的相关信息,确定删除后,在数据库中删除该信息。
5.学生选课
选择学生学号与需要选择的课程,确定无误后保存,数据库中将自动添加新的选课记录。
6.登记成绩
根据学号,以及该学生所选择的课程,进行成绩登记,为选课的同学将无法登记。
7.修改成绩
对已经登记的成绩信息进行修改。
8.学生查询
可以根据学生学号、学生姓名、学生性别、年级来对学生信息进行查询,所有符合查询条件的学生信息将都被显示出来。
9.成绩查询:
根据学生的学号来查询该学生所有课程的成绩。
4.2数据库设计
4.2.1 数据库设计
此系统使用的是mysql数据库,由于此系统需要的数据量不是很大,所以选择比较简便mysql数据库。此系统的数据库名称是studentsys,编码采用utf8,使用Navicat工具查看,如图:
4.2.2 数据库表设计
用户管理表
名称 | 字段名称 | 数据类型 | 主键 | 非空 |
id | 序号 | int | Yes | Yes |
password | 登录密码 | varchar | No | No |
phone | 登录账号,采用手机号 | varchar | No | No |
学生管理表
名称 | 字段名称 | 数据类型 | 主键 | 非空 |
id | 序号 | int | Yes | Yes |
student_id | 学号 | varchar | No | No |
name | 姓名 | varchar | No | No |
sex | 性别 | varchar | No | No |
age | 年龄 | int | No | No |
the_class | 班级 | varchar | No | No |
成绩管理表
名称 | 字段名称 | 数据类型 | 主键 | 非空 |
id | 序号 | int | Yes | Yes |
subject | 课程 | varchar | No | No |
score | 分数 | varchar | No | No |
student_id | 学号 | varchar | No | No |
student_name | 名字 | varchar | No | No |
4.3 详细设计
使用PyQT5制作GUI交互界面,包括以下5个功能模块构成,包括登录、成绩管理、成绩查询、学生管理、学生查询,以下分别加以叙述:
1、登录主界面
从输入框接收输入的账号和密码,通过查询数据库判断是否正确,如果账号不存在,则提示用户账号不存在,如果密码错误,则提示密码错误,如果验证通过,则提示成功,跳转至管理页面。
运行截图:
2、成绩新增主界面
输入学号、姓名、科目、分数,点击提交或者修改按钮则把数据插入或者更新至数据库中。
运行截图:
3、成绩查询主界面
输入学号、姓名、成绩区间,点击查询。如果没有查询到内容,则给出提示。查询成功,则把数据加载到列表展示到页面上。
运行截图:
4、学生新增主界面
输入学号、姓名、性别、年龄、班级,点击新增/修改。则把数据插入或者更新到数据库中。点击删除学生,则通过学号删除学生,如果学生不存在,则给出提示。
运行截图:
5、学生查询主界面
输入学号、姓名、班级,点击查询。如果没有查询到内容,则给出提示。查询成功,则把数据加载到列表展示到页面上。
运行截图:
字数太多了,不贴出来了,见文档