【VB开源代码栏目提醒】:网学会员为广大网友收集整理了,实用软件课程设计-VB+ACCESS学生信息管理系统(附源程序) - 课程设计,希望对大家有所帮助!
郑州大学西亚斯学院 实用软件课程设计说明书 源程序
代码,联系 153893706开发小组:组 长:小组成员:随着信息技术在管理上越来越深入而广泛的应用,管理信息系统的实施在技术上已逐步成熟。
管理信息系统是一个不断发展的新型学科,任何一个单位要生存要发展,要高效率地把内部活动有机地组织起来,就必须建立与自身特点相适应的管理信息系统。
1.系统概述本学生信息管理系统可以说是一个综合性的学校学生管理系统,这它集成了学生学籍管理系统、学生成绩管理系统、学生档案管理系统、学生缴费管理系统等多种功能,因而具有较强的实用性和先进性。
1.1 系统及需求分析1.1.1 系统需求 通过调查要求系统需要有以下功能: ⑴ 要求有良好的人机界面 ⑵ 较好的权限管理 ⑶ 原始数据修改简单方便支持多条件修改 ⑷ 方便的数据查询,支持多条件查询 ⑸ 相应的权限下,删除数据方便简单,数据稳定性好; ⑹ 数据计算自动完成,尽量减少人工干预1.1.2 可行性分析 由于本系统管理的对象单一都是在校学生,且每个数据内容具有较强的关联性,涉及的计算过程不是很复杂。
因此,比较适合于采用数据库管理。
且学校用于学生管理的微机都是 PIII 以上的机器,在存储量、速度方面都能满足数据库运行的要求。
在技术难度方面,由于有指导老师的指导和相关参考文献,特别是网上资料,特别是参考其它程序的功能,因此完全可以实现。
数据库是 MIS 中的重要支持技术,在 MIS 开发过程中,如何选择数据库管理是一个重要的问题,目前,数据库产品较多,每种产品都具有各自的特点和适用范围,因此,在选择数据库时,应考虑数据库应用的特点及适用范围,本系统选用的数据库语言介绍如下: Vis ual Ba sic 是一种可视化的、面对对象和条用事件驱动方式的结构化高级程序设计,可用于开发 Windows 环境下的种类应用
程序。
它简单易学、效率高,且功能强大。
在Visual Basic 环境下,利用事件驱动的编程机制、新颖易用的可视化设计工具,可以高效、快速地开发出 Windows 环境下功能强大、图形界面丰富的应用软件系统。
1.2 项目开发计划 对于项目开发中需要完成的各项工作,从需求分析、设计、实现、测试,指明每项任务的负责人和参加人员。
2 任务 负责人 提交日期 系 1.1 系统概述及需求分析 11 月 15 日 统 1.2 项目开发计划 11 月 18 日 概 述 1.3 功能简介 11 月 18 日 系 2.1 业务流程分析 11 月 19 日 统 2.2 数据流程分析 11 月 22 日 分 析 2.3 数据存储分析 11 月 30 日 2.4 功能分析 12 月 2 日 系统 3.1
软件模块结构设计 12 月 3 日 设计 3.2 数据库
设计 12 月 5 日 系统 3.1 测试计划 12 月 3 日 测试 3.2 调试 12 月 25 日 系 4.1 详细设计 12 月 10 日 统 4.2 打包测试 12 月 25 日 实 施 4.2 总结 12 月 30 日1.3 系统的功能简介 本系统主要可以实现以下的管理功能:班级管理、学生档案管理、课程管理、成绩管理、奖惩信息管理、个人信息查询等。
1.3.1 项目规划 学生信息
管理系统是一个典型的数据库应用程序由班级管理、学生档案管理、课程管理、成绩管理、奖惩信息管理、个人信息查询等模块组成特规划如下: 31.3.2 系统管理模块 该模块的主要任务是维护系统的正常运行和安全性设置包括添加用户、修改密码、删除用户等等。
1.3.3 班级管理模块 该模块的功能是实现对全校班级的管理工作,包括:班级游览、班级添加、班级修改等,这三个功能模块各自独立,完成学校的全部班级的管理。
1.3.4 学生学籍管理模块 该模块的主要功能是实现对学生的个人信息的管理
工作,包括学籍添加、学籍查询、学籍修改等功能,从而方便学校管理部门对学校的基本情况的快速查询和了解。
1.3.5 课程管理模块 该模块对各个班级的课程进行设置,并可在其中设置各门课程的教材选用情况,方便了学校教材管理部门和教务处的教学管理人员的工作。
该模块包括基本课程设置和班级课程设置两个模块。
1.3.6 成绩管理模块 学校的成绩管理工作是检验学生学习情况的一个主要手段,本模块包括考试类型设置,共有期中考试和期未考试两种类型,还设置了成绩添加、成绩查询、成绩浏览、成绩修改等功能模块。
1.3.7 奖惩信息管理模块 奖惩信息是用来督促学习学习活动的一种手段,包括奖惩信息的添加和修改。
1.3.6 个人信息
查询模块 用于学生个人信息的查询,分为奖惩信息查询和成绩查询两个模块。
2. 系统分析2.1 业务流程分析 班级管理业务流程图: 输出 教务处 输入计算机 学 班 生 级 4 班级 班主任 教务处档案管理业务流程图: 输出 教务处 输入计算机 学 档 生 案课程管理业务流程图: 档案 班主任 教务处 输出 教务处 输入
计算机 学 课 生 程 课程 教师 教务处成绩管理业务流程图: 输出 教务处 输入计算机 学 成 生 绩 教师 教师 教务处 输出 教务处 输入计算机 学 班 生 级 班级 班主任 教务处 52.2 数据流程分析:2.2.1 数据流程图: 学 学籍 学生情况 生 管理 成 部门 教务处 绩 查询 学生 管 统计分析 教师 理 学生成绩 系 教师 统 学生成绩管理
系统 0 层数据流程图 管理 1.0 D1 学生 部门 学生管理 2.0 D2 课程 教 务 课程管理 3.0 教师 查 询 成绩管理 D3 成绩 4.0 统计分析 管 理 6 学生成绩管理系统 1 层数据流程图2.3 数据存储分析:实体联系图 1、数据模型设计。
首先来做出学生成绩管理系统的 E-R 图,分析这个
问题的实体,从系统分析可以知道,学生的成绩是由任课教师按照课程给出的,学生、课程、教师组成了这个系统的三个实体。
2、再分析三个实体之间的联系。
首先,这三个实体不是一个统一体,学生成绩与教师没有内在联系,教师必须通过课程实体才能与学生建立联系,因而先不考虑。
课程与学生这两个实体是多对多联系;一位学生要学习多门课程,一门课程有多位学生共同学习。
而
学习成绩是这两个实体“学生”和“成绩”共有的属性,应填在二者的联系“学习”边。
因为成绩既不是学生独有的,也不是课程独有的;“学生甲 70 分”或“英语 70 分”是不完全的,说“学生甲英语 70 分”才是正确的,因为 70 分是学生甲和英语课二者共有的。
这个 E-R图可画成下图。
m n 学生 学习
课程 成绩 学生成绩管理系统中学生与课程的 E-R 图 教师与课程这两个实体之间,是一对多联系;一位教师可以都多门课程,而一门课程对于学生成绩来说只能有一位教师英语、高等数学有多位教师教,但对某个固定的学生来说只能有一位教师。
其 E-R 图,如下所示。
l n 教师 教学 课程 7 教师与课程的 E-R 图组合到一起,得到最后的 E-R 图,有了 E-R 图,就可以设计数据库。
下图为数据模型图。
实体模型 数据模型 学生 教师 教师 m l 课程 学生 数据库 学习 学习 n m 学习 课程2.4 功能分析:功能层次图 学生信息管理系统 登录 系 班 学 课 成 奖 个 统 级 籍 程 绩 惩 人 管 管 管 管 管 管 信 理 理 理 理 理 理 息 查 询 基 班 学 学 学 学 添 修 删 班 添 修 添 学 修 本 级 生 生 生 生 信 信 加 改 除 级 加 改 加 籍 改 课 课 成 成 成 成 息 息 用 密 用 浏 班 班 学 查 学 程 程 绩 绩 绩 绩 查 修 户 码 户 览 级 级 籍 询 籍 设 设 录 查 修 浏 询 改 置 置 入 询 改 览 8 3.系统设计3.1 软件模块结构设计3.1.1 系统
方案确定 通过对系统的调研与分析,系统主要应完成的功能有:班级管理、学生档案管理、课程管理、成绩管理、奖惩信息管理、个人信息查询等功能。
3.1.2 软件结构设计 本系统在执行时,先根据不同的操作人员的需要来进行相应的模块,然后可以输入数据或者进行其它的查询或浏览等操作;总体来说,本系统属于一个事务型管理系统。
接受数 处理中 班级管 学籍管 课程管 成绩管 奖惩管 个人信3.2 数据库设计 数据库采用了 Microsoft 推出的 Access 数据库,这是微软集成到 Office 中的一个桌面数据库,能够快速方便的和 Office 的其他套件综合使用。
由于 Access 具有显著的简易性和有效性,大量的桌面数据库系统都采用 Access 作为后台数据库。
使用 Access 的好处还在于,如果你的系统扩展到 Client/Server 模式的时候,可以使用 Microsoft 的数据库服务器软件 SQL 9Server,此时,程序只需要简单的修改一下链接(ADO 的数据源)就可以,这样,为程序的平滑扩展提供了非常有力的条件。
3.2.1 本系统中所涉及到的主要实体共有八个数据表:class_Cour 班级课程表: class_NO 班级编号course_Name 课程名 class_Form 班级表: class_NO 班级编号class_Name 班级名称class_Teacher 导员姓名class_Remarks 备注信 息course_Form 课程表: course_Name 课程名course_Rem 备注prize_Form 奖惩表: prize_Name 奖惩名称prize_Rem 备注信息prize_Stud 学生奖惩表: prize_NO 奖惩编号prize_Stu 奖惩学生学号prize_Dat 奖惩日期prize_Nam 奖惩名称score_Form 成绩表: score_NO 成绩号score_Per 考试期号score_Cla 学生班号 score_Stu 学生编号score_Cou 考试课程score_Sco 考试分数student_Form 学籍表: student_NO 学号 student_Name 姓名 student_Sex 性别 student_Bir 出生日期 student_Cla 学生编号 student_Tel 练习电话 student_Esd 入学日期 student_Add 家庭住址 student_Rem 备注信息user_Form 用户表: user_ID 用户名称 user_PWD 用户密码 user_DATE 创建日期3.2.2 各表的物理结构如下:班级课程表(class_Cour):字段名称 数据类型 字段大小 允许空字符串班级编号 class_NO 文本 20 否课程名 course_Name 文本 20 否班级表(class_Form):字段名称 数据类型 字段大小 允许空字符串班级编号 class_NO 文本 20 否班级名称 class_Name 文本 10 否导员姓名 class_Teacher 文本 10 否备注信息 class_Remarks 文本 60课程表(course_Form):字段名称 数据类型 字段大小 允许空字符串 10课程名 course_Name 文本 20 否备注 course_Rem 备注奖惩表(prize_Form):字段名称 数据类型 字段大小 允许空字符串奖惩名称 prize_Name 文本 20 否备注信息 prize_Rem 备注 :学生奖惩表(prize_Stud)字段名称 数据类型 字段大小 允许空字符串奖惩编号 prize_NO 文本 14 否奖惩学生学号 prize_Stu 文本 20奖惩日期 prize_Dat 日期/时间 短日期奖惩名称 prize_Nam 文本 20成绩表(Score_Form):字段名称 数据类型 字段大小 允许空字符串成绩号 score_NO 文本 14 否考试期号 score_Per 文本 20学生班号 score_Cls 文本 20学生编号 score_Stu 文本 20考试课程 score_Cou 文本 20考试分数 score_Sco 数字 单精度型 自动(小数位)学生表(student_Form):字段名称 数据类型 字段大小 允许空字符串学号 student_NO 文本 20 否姓名 student_Name 文本 10性别 student_Sex 文本 2出生日期 student_Bir 日期/时间 短日期学生编号 student_Cla 文本 20联系电话 student_Tel 文本 13入学日期 student_Esd 日期/时间 短日期家庭住址 student_Add 文本 60备注信息 student_Rem 备注user_Form 用户表: 11字段名称 数据类型 字段大小 允许空字符串用户名称 user_ID 文本 20 否用户密码 user_PWD 文本 10创建日期 user_DATE 日期/时间 短日期 4.系统的功能 本部分主要内容为本系统的运行界面以及主要界面的源
代码。
系统的运行界面以及主要界面的源
代码。
4.1 系统登陆界面: 本界面的主要功能是为了对系统进行安全性管理,本系统的用户名和密码保存在 USE 表中,本系统根据不同的用户而设置了不同的权限,可以用 IDPWD(大写)为用户名和密码来
登陆本系统。
Option Explicit Private Declare Function GetUserName Lib quotadvapi32.dllquot Alias quotGetUserNameAquotByVal lpbuffer As String nSize As Long As Long Public OK As Boolean Dim txtSQL As String Dim mrc As ADODB.Recordset Dim MsgText As String Dim miCount As Integer Private Sub Form_Load Dim i As Integer i 0 txtSQL quotselect from user_Formquot Set mrc ExecuteSQLtxtSQL MsgText With txtUserName 12 Do While Not mrc.EOF i i 1 .AddItem Trimmrcuser_ID mrc.MoveNext Loop .ListIndex i - 1 End With mrc.Close OK False miCount 0 End Sub Private Sub cmdCancel_Click OK False Me.Hide End Sub Private Sub cmdOK_Click txtSQL quotselect from user_Form where user_ID quot .