用VB设计年级人员管理系统

news2025/7/9 4:11:05

目 录
摘 要 I
Abstract II
第一章 绪论 1
1.1 课题研究背景 1
1.2 课题研究目的和任务 1
1.3 课题研究的意义 2
1.4 论文的主要内容和章节安排 2
第二章 运行环境开发工具 3
2.1 运行环境 3
2.2 开发工具简介 3
2.2.1 VB6.0基础 3
2.2.2 SQL Server2000数据库基础 3
第三章 需求分析与概要设计 6
3.1 系统分析 6
3.1.1 用户需求分析 6
3.1.2 系统结构图 6
3.2 数据库设计 9
3.2.1 数据库需求分析 9
3.2.2 E-R模型 9
3.3 系统基本功能 15
第四章 系统详细设计 16
4.1 具体的数据库逻辑结构设计 16
4.2 系统实现 20
4.2.1 管理员端的实现 20
4.2.1.1系统管理员端登录模块的设计与实现 20
4.2.1.2 添加学生界面的设计与实现 22
4.2.1.3 添加授课教师界面的设计与实现 24
4.2.1.4添加必修课程界面的设计与实现 24
4.2.1.5添加选修课程界面的设计与实现 26
4.2.1.6添加年级大事记界面的设计与实现 27
4.2.1.7添加班干部名单界面的设计与实现 28
4.2.2 教师端的实现 29
4.2.2.1授课教师信息管理界面的设计与实现 29
4.2.2.2教师修改密码界面的设计与实现 30
4.2.2.3教师选择授课界面的设计与实现 31
4.2.2.4删除已选课程界面的设计与实现 32
4.2.2.5必修课信息查询界面的设计与实现 34
4.2.2.6登记选修课成绩界面的设计与实现 35
4.2.2.7登记必修课成绩界面的设计与实现 36
4.2.2.8查询年级大事记界面的设计与实现 36
4.2.2.9查询班干部名单界面的设计与实现 38
4.2.2.10查询花名册界面的设计与实现 39
4.2.3 学生端的实现 39
4.2.3.1添加教育背景界面的设计与实现 39
4.2.3.2选修课成绩界面的设计与实现 40
4.2.3.3必修课成绩界面的设计与实现 41
4.2.3.4查询教育背景界面的设计与实现 42
4.2.3.5查询联系方式界面的设计与实现 43
4.2.3.6按学号查询学生成绩界面的设计与实现 43
4.2.3.7条件查询学生成绩界面的设计与实现 44
结 论 47
参考文献 48
致 谢 49
1.3 课题研究的意义
年级信息管理是年级管理不可缺少的部分,它的内容对于年级的辅导员、授课教师或者学生都非常重要,所以高校年级人员管理系统应该能够为用户提供足够的信息和信息的查询手段,但长时间以来对于年级信息的的收集管理多是人工操作,工作繁琐,重复,占用了很长时间。
随着科技的发展,计算机技术日渐成熟,计算机已经普及到社会的各个领域并发挥着不可替代的作用。为方便年级信息管理,使用计算机对年级信息进行管理,具有手工管理无法比拟的优点如:仅需一次信息采集即可多次使用并且检索迅速、查找方便、可靠性高、存储量大、保密性好、成本低等
因此,开发年级人员管理系统具有非常高的价值。在下面的各章中将以开发年级人员管理系统为例,谈谈其开发过程和所涉及到的问题及解决方法。
1.4 论文的主要内容和章节安排
该论文主要介绍了年级人员管理系统的开发流程,从需求分析概要设计到详细设计,详细的阐述了研究的思路。论文的第一章为绪论介绍该系统的基本情况;第二章具体介绍了本系统的运行环境和开发工具;第三章为需求分析和概要设计,介绍了系统的结构及系统实现的思路;第四章则详细介绍了系统开发的逻辑结构,并在此章节中实现系统的编码,完成该系统的设计。最后进行总结。
第三章 需求分析与概要设计
3.1 系统分析
3.1.1 用户需求分析
通过对年级信息管理的调查,了解到用户对系统的功能需求主要包括:
(1)操作简单,能轻易掌握。
(2)权限分配明确,不容易泄露信息。管理员端可以添加学生,授课教师用户、添加年级大事记、班干部名单;对学生添加奖罚信息;对必修课程/选修课程进行添加、修改、删除。
(3) 教师端可以完善个人信息、选择选修课程;并对自己任教的学生的选修课和必修课登记成绩、也可以查询年级大事记、班干部名单等。
(4)学生端可以完善自己的个人信息、教育背景;选择选修课、查询生日信息、查询自己的各项科目的成绩、按条件查询所有人的成绩信息等。
(5)管理员端的对象可以是辅导员可以是班长,教师端的对象面向所有教师,学生端面向所有学生。
学生成绩管理系统的未来需求也要考虑,未来可能有大量的数据,所以在设计数据库时应该考虑到这方面,即采用SQL Server可以满足大量数据的需求。
3.1.2 系统结构图
根据系统功能的要求,可以将系统分解成几个功能模块来设计,学生端功能模块图3-1所示,教师端如图3-2,管理员端如图3-3
在这里插入图片描述

	按条件查询成绩的部分代码如下:
	int xueqi = _ttoi(m_xueqi1);
	if(m_subject.GetLength()==0)
	 MessageBox("科目不能为空!");
	else if(m_xueqi1.GetLength()==0)
		strSQL.Format("select * from COURSE_SCORE where COURSE_NAME = '%s'  ",m_subject);
	else strSQL.Format("select * from COURSE_SCORE where COURSE_NAME = '%s' and XUEQI = '%d' ",m_subject,xueqi);
	m_list_all.DeleteAllItems();
	CCourseScoreSet m_recordset(&m_database);
	m_recordset.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL);
	if(m_recordset.GetRecordCount()==0)
	{
		MessageBox("对不起,没有您所需要的结果,请核对后重新输入!","无此结果");
	}
	else
	{
	m_recordset.MoveFirst();	
	while(!m_recordset.IsEOF())
	{
		int temp = 0;
		//对字符串进行处理
		m_recordset.GetFieldValue(temp,varValue);
		m_list_all.InsertItem(i,varValue.m_pstring->GetBuffer(1));
		m_recordset.GetFieldValue(1,varValue);
		if( varValue.m_dwType != DBVT_NULL)
		m_list_all.SetItemText(i,1,varValue.m_pstring->GetBuffer(1));
		else m_list_all.SetItemText(i,1,0);
		m_recordset.GetFieldValue(2,varValue);
		if( varValue.m_dwType != DBVT_NULL)
		m_list_all.SetItemText(i,2,varValue.m_pstring->GetBuffer(1));
		else m_list_all.SetItemText(i,2,0);
		//对整型数据进行处理
		m_recordset.GetFieldValue(3,varValue);
		if( varValue.m_dwType != DBVT_NULL){
		sprintf(buf,"%d",varValue.m_iVal);
		m_list_all.SetItemText(i,3,buf);
		}
		else m_list_all.SetItemText(i,3,0);
		m_recordset.GetFieldValue(4,varValue);
		if( varValue.m_dwType != DBVT_NULL)
		{
		sprintf(buf,"%d",varValue.m_iVal);
		m_list_all.SetItemText(i,4,buf);
		}
		else m_list_all.SetItemText(i,4,0);
		m_recordset.GetFieldValue(5,varValue);
		if( varValue.m_dwType != DBVT_NULL)
		{
		sprintf(buf,"%d",varValue.m_iVal);
		m_list_all.SetItemText(i,5,buf);
		}
		else m_list_all.SetItemText(i,5,0);
		m_recordset.MoveNext();
		i++;
	}	
	m_recordset.Close();
	}
	//更新界面
	UpdateData(FALSE);

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/36905.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【HDU No. 2874】 城市之间的联系 Connections between cities

【HDU No. 2874】 城市之间的联系 Connections between cities 杭电OJ 题目地址 【题意】 由于大部分道路在战争期间已被完全摧毁,所以两个城市之间可能没有路径,也没有环。 已知道路状况,想知道任意两个城市之间是否存在路径。若答案是肯…

11.一键分析你的上网行为(web页面可视化)

## 一键分析你的上网行为, 看看你平时上网都在干嘛? ## Chrome浏览器历史记录文件可视化### 简介**想看看你最近一年都在干嘛?看看你平时上网是在摸鱼还是认真工作?想写年度汇报总结,但是苦于没有数据?现在,它来了。*…

国外顶尖程序员手写,402页汉译版微服务与事件驱动架构开发手册

为什么用事件驱动型微服务? Marshall McLuhan认为,影响人类并给社会带来根本性变革的不是媒介的内容,而是与媒介的互动过程。在我们的集体参与下,报纸、广播、电视、互联网、即时通信和社交媒体改变了人类的互动方式以及社会结构…

JDK17新特性

一.JEP 409: Sealed Classes 1.1简介 官网链接sealed class 从如下官网的简介与描述可以看出,这个新特性的目的是为了限制类与接口的 被继承与实现,比如说我有个 A类,那么我现在限定只有 B,C,D三个类可以继承 那么就需…

DRM架构介绍(一)

1、 DRM简介(Direct Rendering Manager)传统linux显示设备驱动开发时,通常使用FB驱动架构,随着显卡性能升级:显示覆盖(菜单层级)、GPU加速、硬件光标,传统FB架构无法很好支持&#x…

activiti-bpmn-converter

activiti-bpmn-converter目录概述需求:设计思路实现思路分析1.BpmnXMLConstants2.BpmnXMLConverter3.StartEventXMLConverter4.EndEventXMLConverter参考资料和推荐阅读Survive by day and develop by night. talk for import biz , show your perfect code,full bu…

C++调用OpenCV实现图像平滑处理

1 前言 图像的平滑处理,也叫做模糊处理,是在尽量保留原始图像信息的情况下,抑制或去除图像内的噪声、降低细节层次信息等一系列过程。是一种操作简单但使用频率很高的图像处理方法。由于实际的图像索引方式,与我们常用的x和y轴的…

2022年 SecXOps 安全智能分析技术白皮书 学习笔记 免费下载地址

核心能力 为了加快安全分析能力更全面、更深入的自动化 ,SecXOps 的目标在于创建一个集成的用于 Security 的 XOps 实践,提升安全分析的场景覆盖率和运营效率。SecXOps 技术并不 015 SecXOps 技术体系 是 Ops 技术在安全领域的简单加和,SecXO…

postman拦截浏览器请求

postman可以去浏览器请求进行拦截,并将请求存放至集合。 原理 postman内部有捕获http请求流量的代理; postman app 监听这客户端程序或者设备发出的调用请求;postman 代理端会捕获到请求并把它转发到服务器;服务器将响应返回给p…

双非大学改考408,软件工程专业考研报考人数较少!

南昌航空大学是一所双非大学,位于江西省南昌市。南昌航空大学计算机学科评估没有,软件工程学科评估C,计算机实力在双非大学中也并不算强。南昌航空大学今年计算机考研大变化,软件学院的所有专业(包括:软件工…

虚拟化性能优化系列-numatune

numatune是什么 numatune是libvirt的一个参数&#xff0c;可以用在numa架构的host上&#xff0c;以控制子机的内存访问策略。 使用方法如下&#xff0c;参考libvirt文档 <domain> ... <numatune> <memory mode"strict" nodeset"1-4,^3"/&…

多线程(1)

多线程 前言 &#xff1a; 上文主要了解到了进程&#xff0c; 那么为啥需要引入进程呢&#xff1f;   或者说为啥要有进程呢&#xff1f; 其实这里最主要的目的是为了解决 并发编程 这样的问题。 了解 &#xff1a;   这里 cpu 进入了多核心的时代&#xff0c;想要进一步提…

解决:给 VSCode 手动添加(解压压缩包)相关插件的问题

1、一般的添加方式为&#xff1a; 在 VSCode 里面扩展程序里面直接搜索添加即可&#xff1b; 2、如何手动添加一个 VSCode 相关插件&#xff1f; 其一、首先把相关文件解压&#xff0c;解压成一个文件夹&#xff1b; 其二、找到 VSCode 的 extensions 的地址并把 A 所述文件…

【Java 设计模式】创建者模式 之抽象工厂模式

抽象工厂模式1 概念2 角色3 甜品店案例3.1 类图3.2 实现4 优缺点1 概念 产品族&#xff1a;华为既有华为手机&#xff0c;也有华为电脑、华为平板&#xff0c;华为手机、华为电脑和华为平板属于一个产品族&#xff0c;因为他们都是华为品牌。产品等级&#xff1a;有华为手机&am…

骁龙咣咣咣三脚,再次改写格局

鱼羊 萧箫 发自 凹非寺量子位 | 公众号 QbitAI盆友们&#xff0c;骁龙&#xff0c;已经不再是以前那个骁龙了。就在大家吃瓜安卓新旗舰芯片谁家首发之际&#xff0c;骁龙峰会的绝对主角&#xff0c;却只差没把“时代变了”写在脸上&#xff1a;先是第一天直接挤爆AI牙膏管&…

创建Struts2项目并实现一个例子

文章目录一、创建Struts2项目二、struts2的一个例子一、创建Struts2项目 本人所用idea应用程序。以下全部内容&#xff0c;都是以idea为例 创建项目前&#xff0c;你需要下载Struts2所需要的jar包&#xff0c;你可以直接去官网下载&#xff0c;也可以点击https://pan.baidu.c…

LeetCode - 1419 数青蛙

题目来源 1419. 数青蛙 - 力扣&#xff08;LeetCode&#xff09; 题目描述 给你一个字符串 croakOfFrogs&#xff0c;它表示不同青蛙发出的蛙鸣声&#xff08;字符串 "croak" &#xff09;的组合。由于同一时间可以有多只青蛙呱呱作响&#xff0c;所以 croakOfFrog…

基于蜻蜓优化算法的认知无线电网络的服务质量研究附Matlab代码

✅作者简介&#xff1a;热爱科研的Matlab仿真开发者&#xff0c;修心和技术同步精进&#xff0c;matlab项目合作可私信。 &#x1f34e;个人主页&#xff1a;Matlab科研工作室 &#x1f34a;个人信条&#xff1a;格物致知。 更多Matlab仿真内容点击&#x1f447; 智能优化算法 …

葡萄糖-聚乙二醇-牛血清白蛋白,BSA-PEG-Glucose,牛血清白蛋白-PEG-葡萄糖

葡萄糖-聚乙二醇-牛血清白蛋白,BSA-PEG-Glucose,牛血清白蛋白-PEG-葡萄糖 牛血清白蛋白&#xff08;BSA&#xff09;&#xff0c;是牛血清中的一种球蛋白&#xff0c;包含607个氨基酸残基&#xff0c;分子量为66.446KDa&#xff0c;可以提供PEG接枝修饰葡萄糖&#xff0c;葡萄…

独家 | 人工智能的记忆与泛化(附链接)

作者&#xff1a;Manuel Brenner 翻译&#xff1a;陈之炎校对&#xff1a;赵茹萱本文约4500字&#xff0c;建议阅读8分钟本文为你介绍了人工智能 记忆与泛化相关知识。标签&#xff1a;人工智能&#xff0c;记忆&#xff0c;泛化“对不可见数据的泛化能力是机器学习的核心。”当…