学生信息管理系统(20211119180609)_第1页
学生信息管理系统(20211119180609)_第2页
学生信息管理系统(20211119180609)_第3页
学生信息管理系统(20211119180609)_第4页
学生信息管理系统(20211119180609)_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、学生信息管理系统第 - 1 - 页 共 30 页学生信息管理系统的分析、设计和实施报告小组成员:班级姓名学号角色工 083 刘雷089094082 系统实施工 083 李军089094080 系统分析工 083 王二喜089094090 系统规划工 083 潘云飞089094087 系统规划工 083 伊毛毛089094100 系统分析工 083 杜涛涛089094077 系统设计学生信息管理系统第 - 2 - 页 共 30 页目录一、系统规划. 31.1 开发系统的目的. . 31.2 开发工具的选择. . 3二、系统分析. 错误!未定义书签。2.1系统功能分析 . 错误!未定义书签。2.2

2、系统功能模块 . 错误!未定义书签。2.3数据库需求分析 . 62.4 各个实体具体的描述e-r图. 62.5数据结构 . 10 三系统设计. 错误!未定义书签。3.1系统目标设计 . 错误!未定义书签。3.2 新系统结构功能图 . 错误!未定义书签。四 系统实施. 13 4.1 登陆界面 . 13 4.2 程序主界面 . 14 4.2.1 系统设置 . 15 4.2.2 学籍管理 . 18 4.2.3 班级管理 . 24 4.2.4 课程设置 . 25 4.2.5 成绩管理 . 27 五 总结. 29 5.1 心得体会 . . 错误!未定义书签。5.2 收获 . 30 学生信息管理系统第 -

3、 3 - 页 共 30 页一. 系统规划1.1 开发系统的目的学 生 信 息 管 理 系 统 是 一 个 教 育 单 位 不 可 缺 少 的 部 分 。一 个 功 能 齐全 、简 单 易 用 的 信 息 管 理 系 统 不 但 能 有 效 地 减 轻 学 校 相 关 工 作 人 员 的工 作 负 担 ,它 的 内 容 对 于 学 校 的 决 策 者 和 管 理 者 来 说都 至关 重 要 。所以 学 生 信 息 管 理 系 统 应 该 能 够 为 用 户 提 供 充 足 的 信 息 和 快 捷 的 查 询手 段 。但 一 直 以 来 人 们 使 用 传 统 人 工 的 方 式 管 理 文 件档

4、 案 、统 计 和 查询 数 据 , 这 种 管 理 方 式 存 在 着 许 多 缺 点 , 如 : 效 率 低 、 保 密 性 差 , 人 工的 大 量 浪 费 ; 另 外 时 间 一 长 , 将 产 生 大 量 的 文 件 和 数 据 , 这 对 于 查 找 、更 新 和 维 护 都 带 来 了 不 少 困 难 。 随 着 科 学 技 术 的 不 断 提 高 , 计 算 机 科学 日 渐 成 熟 , 其 强 大 的 功 能 已 为 人 们 深 刻 认 识 , 它 已 进 入 人 类 社 会 的各 个 领 域 并 发 挥 着 来 越 重 要 的 作 用 。为了适应信息时代发展, 提高学校工作

5、效率和办学水平,实现现代化大学的运行机制和高水平的管理, 规划、组织建设。 开发后的学生信息管理系统包括学籍管理、成绩管理、选课管理等三大主要部分。开发学生信息管理系统的具体目的:升级、改造学校现有的学生信息管理系统,进一步提高学校的办公效率、工作水平。使学生信息管理系统成为学校信息化教学系统重要组成部分,进一步提高办学效益和现代化教学水平。1.2 开发工具的选择学生档案管理系统是典型的信息管理系统(mis), 其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者要求建立起数据一致性和完整性强、数据安全性好的库。而对于后者则要求应用程序功能完备, 易使用等特点。经过分析

6、 , 我们使用 microsoft公司的 visual basic 和 access作为开发工具, 利用其提供的各种面向对象的开发工具, 尤其是数据窗口这一能方便而简洁操纵数据库的智能化对象, 首先在短时间内建立系统应用原型, 然后, 对初始原型系统进行需求迭代 , 不断修正和改进 , 直到形成用户满意的可行系统。 由于本系统管理的对象单一 , 都是在校学生,且每个数据内容具有较强的关联性,涉及的计算过程不是很复杂。因此,比较适合于采用数据库管理。数据库是 mis中的重要支持技术, 在 mis开发过程中, 如何选择数据库管理学生信息管理系统第 - 4 - 页 共 30 页是一个重要的问题, 目

7、前,数据库产品较多, 每种产品都具有各自的特点和适用范围,因此,在选择数据库时,应考虑数据库应用的特点及适用范围,本系统选用的数据库语言介绍如下:visual basic是一种可视化的、面对对象和调用事件驱动方式的结构化高级程序设计, 可用于开发 windows环境下的种类应用程序。 它简单易学、 效率高,且功能强大。在visual basic环境下,利用事件驱动的编程机制、新颖易用的可视化设计工具, 可以高效、 快速地开发出 windows环境下功能强大、 图形界面丰富的应用软件系统。二. 系统分析2.1 系统功能分析主要功能有:1.有关学籍等信息的输入,包括输入学生基本信息,所在班机,所学

8、课程和成绩等。2.学生信息的查询,包括查询学生基本信息,所在班级,已学课程,和成绩等3.学生信息修改4.班级管理信息的输入,包括输入班级设置,年级信息等。5.班级管理信息查询6.班级管理信息修改7.学校基本课程信息输入8.基本课程信息修改学生信息管理系统第 - 5 - 页 共 30 页9.学生课程的设置和修改10.学生成绩信息的输入11.学生成绩信息的修改12.学生成绩信息的查询13.学生成绩信息的统计2.2 系统功能模块图图 2.1 系统功能模块图学生信息管理系统第 - 6 - 页 共 30 页2.3 数据库需求分析1.学生基本信息:学号,姓名,性别,出生日期,班号,电话,入校日期,家庭住址

9、,备注等。2.班级信息:班号,所在年级,班主任姓名,所在教室3.课程基本信息:课程号,课程名称,课程类别,课程描述4.课程设置信息:年级信息,所学课程等。5.学生成绩信息:考试编号,所在班级,学生学号,学生姓名,所学课程,考试分数2.4 各个实体具体的描述e-r 图设计规划出的实体有:学生实体,班级实体,年级实体,课程实体各个实体具体的属性如下:学生信息管理系统第 - 7 - 页 共 30 页学生信息管理系统第 - 8 - 页 共 30 页实体和实体之间的关系e-r 如下成 绩 管 理 模 块 中 学 生 与 课 程 的 e-r 图教 师 与 课 程 e r 图学生信息管理系统第 - 9 -

10、页 共 30 页教 师 , 学 生 与 课 程 的 e-r 图学生信息管理系统第 - 10 - 页 共 30 页2.5 数据结构表 1 班级课程表字段名称数据类型字段大小允许空字符串班级编号 class_no 文本20 否课程名 course_name 文本20 否表 2 班级表字段名称数据类型字段大小允许空字符串班级编号 class_no 文本20 否班级名称 class_name 文本10 否导员姓名class_teacher 文本10 否备注信息class_remarks 文本60 表 3 课程表字段名称数据类型字段大小允许空字符串课程名 course_name 文本20 否备注 cou

11、rse_rem 备注表 4 奖惩表字段名称数据类型字段大小允许空字符串奖惩名称 prize_name 文本20 否备注信息 prize_rem 备注表 5 学生奖惩表字段名称数据类型字段大小允许空字符串奖惩编号 prize_no 文本14 否奖惩学生学号prize_stu 文本20 奖惩日期 prize_dat 日期/ 时间短日期奖惩名称 prize_nam文本20 学生信息管理系统第 - 11 - 页 共 30 页表 6 成绩表字段名称数据类型字段大小允许空字符串成绩号 score_no 文本14 否考试期号 score_per 文本20 学生班号 score_cls 文本20 学生编号 s

12、core_stu 文本20 考试课程 score_cou 文本20 考试分数 score_sco 数字单精度型自动(小数位)表 7 学生表字段名称数据类型字段大小允许空字符串学号 student_no 文本20 否姓名 student_name 文本10 性别 student_sex 文本2 出生日期 student_bir 日期/ 时间短日期学生编号 student_cla 文本20 联系电话 student_tel 文本13 入学日期 student_esd 日期/ 时间短日期家庭住址 student_add 文本60 备注信息 student_rem 备注学生信息管理系统第 - 12 -

13、 页 共 30 页三. 系统设计31 系统目标设计要求有良好的人机界面;较好的权限管理;原始数据修改简单方便 , 支持多条件修改;方便的数据查询,支持多条件查询;相应的权限下,删除数据方便简单,数据稳定性好;数据计算自动完成,尽量减少人工干预;32 新系统功能结构图学生信息管理系统第 - 13 - 页 共 30 页四. 系统实施4.1 登录界面用户登录添加用户修改用户密码系统启动后, 将首先出现如下图所示的用户登录窗体,用户首先输入用户名,然后输入密码,登录系统。登录界面代码如下private sub cmdok_click() data1.recordsource = select * fr

14、om 用户where 用户名= & trim(text1) & and 密码= & trim(text2) & data1.refresh if data1.recordset.recordcount 0 then if data1.recordset.fields( 权限类别 ) = 系统管理员 then formmain.cx.enabled = true formmain.jcsjbj.enabled = true formmain.crkgl.enabled = true formmain.tjbb.enabled = true formmain.tch

15、.enabled = true formmain.xtgl.enabled = true unload me 学生信息管理系统第 - 14 - 页 共 30 页frmmain.show else formmain.cx.enabled = true formmain.jcsjbj.enabled = false formmain.crkgl.enabled = true formmain.tjbb.enabled = false formmain.tch.enabled = true formmain.xtgl.enabled = false unload me frmmain.show en

16、d if else msgbox 姓名或密码错! end if end sub 4.2 程序主界面主界面菜单系统设置学籍管理班级管理课程设置成绩管理帮助学生信息管理系统第 - 15 - 页 共 30 页主界面截图4.2.1 系统设置功能如下:添加用户修改密码退出系统学生信息管理系统第 - 16 - 页 共 30 页添加用户窗体代码:private sub cmdcancel_click() unload me end sub private sub cmdok_click() dim txtsql as string dim mrc as adodb.recordset dim msgtext

17、 as string if trim(text1(0).text) = then msgbox 请输入用户名称!, vbokonly + vbexclamation, 警告 exit sub text1(0).setfocus else txtsql = select * from user_info set mrc = executesql(txtsql, msgtext) 判断数据集是否为空while (mrc.eof = false) 判断是否有重复记录if trim(mrc.fields(0) = trim(text1(0) then msgbox 用户已经存在, 请重新输入用户名!

18、, vbokonly + vbexclamation, 警告 text1(0).setfocus text1(0).text = text1(1).text = text1(2).text = exit sub else 移动到下一条记录mrc.movenext end if wend end if 判断两次输入密码是否一致if trim(text1(1).text) trim(text1(2).text) then msgbox 两次输入密码不一样,请确认!, vbokonly + vbexclamation, 警告 text1(1).setfocus text1(1).text = tex

19、t1(2).text = exit sub 学生信息管理系统第 - 17 - 页 共 30 页else 判断输入密码是否为空if text1(1).text = then msgbox 密码不能为空!, vbokonly + vbexclamation, 警告 text1(1).setfocus text1(1).text = text1(2).text = else mrc.addnew mrc.fields(0) = trim(text1(0).text) mrc.fields(1) = trim(text1(1).text) mrc.update mrc.close me.hide ms

20、gbox 添加用户成功!, vbokonly + vbexclamation, 添加用户 end if end if end sub 学生信息管理系统第 - 18 - 页 共 30 页4.2.2 学籍管理功能如下1添加学籍信息2修改学籍信息3查询学籍信息添加学籍信息窗体代码如下:添加学籍信息窗体创建private sub command1_click() 定义数据集对象dim mrc as adodb.recordset 定义字符串变量,表示查询语句dim txtsql as string 定义字符串变量,返回查询信息dim msgtext as string 是否输入学号if not tes

21、ttxt(txtsid.text) then msgbox 请输入学号!, vbokonly + vbexclamation, 警告 txtsid.setfocus 学生信息管理系统第 - 19 - 页 共 30 页exit sub end if if not testtxt(txtname.text) then msgbox 请输入姓名!, vbokonly + vbexclamation, 警告 txtname.setfocus exit sub end if 判断是否输入姓名if not testtxt(combosex.text) then msgbox 请选择性别!, vbokonl

22、y + vbexclamation, 警告 combosex.setfocus exit sub end if 判断是否输入性别if not testtxt(txtborndate.text) then msgbox 请输入出生日期!, vbokonly + vbexclamation, 警告 txtborndate.setfocus exit sub end if 判断是否输入出生日期if not testtxt(comboclassno.text) then msgbox 请选择班号!, vbokonly + vbexclamation, 警告 comboclassno.setfocus

23、exit sub end if 判断是否选择班号if not testtxt(txttel.text) then msgbox 请输入联系电话!, vbokonly + vbexclamation, 警告 txttel.setfocus exit sub end if 判断是否输入联系电话if not testtxt(txtrudate.text) then msgbox 请输入入校日期!, vbokonly + vbexclamation, 警告 txtrudate.setfocus exit sub end if if not testtxt(txtaddress.text) then m

24、sgbox 请输入家庭住址!, vbokonly + vbexclamation, 警告 txtaddress.setfocus exit sub 学生信息管理系统第 - 20 - 页 共 30 页end if if not isnumeric(trim(txtsid.text) then msgbox 请输入数字!, vbokonly + vbexclamation, 警告 exit sub txtsid.setfocus end if txtsql = select * from student_info where student_id = & trim(txtsid.text)

25、 & set mrc = executesql(txtsql, msgtext) if mrc.eof = false then msgbox 学号重复,请重新输入!, vbokonly + vbexclamation, 警告 mrc.close txtsid.setfocus else mrc.close if not isdate(txtborndate.text) then msgbox 出 生 时 间 应 输 入 日 期 格 式 ( yyyy-mm-dd ) ! , vbokonly + vbexclamation, 警告 txtborndate.setfocus else t

26、xtborndate = format(txtborndate, yyyy-mm-dd) if not isdate(txtrudate.text) then msgbox 入 校时间应输入日期格式(yyyy-mm-dd ) ! , vbokonly + vbexclamation, 警告 txtrudate.setfocus else txtrudate = format(txtrudate, yyyy-mm-dd) txtsql = select * from student_info set mrc = executesql(txtsql, msgtext) mrc.addnew mrc

27、.fields(0) = trim(txtsid.text) mrc.fields(1) = trim(txtname.text) mrc.fields(2) = trim(combosex.text) mrc.fields(3) = trim(txtborndate.text) mrc.fields(4) = trim(comboclassno.text) mrc.fields(5) = trim(txttel.text) mrc.fields(6) = trim(txtrudate.text) mrc.fields(7) = trim(txtaddress.text) mrc.fields

28、(8) = trim(txtcomment.text) mrc.update 学生信息管理系统第 - 21 - 页 共 30 页msgbox 添加学籍信息成功!, vbokonly + vbexclamation, 警告 mrc.close me.hide end if end if end if 程序首先对是否输入内容进行判断,然后进行格式判断,使用了下面两个函数判断数据是否日期格式isdate(txtborndate.text) 判断数据是否日期格式isdate(txtrudate.text) 判断是否有重复记录是很重要的,否则数据库中将发生错误。查询学生信息窗体代码如下:private

29、sub cmdexit_click() unload me end sub private sub cmdinquire_click() dim txtsql as string dim msgtext as string dim dd(4) as boolean 学生信息管理系统第 - 22 - 页 共 30 页dim mrc as adodb.recordset 组合 sql 语句txtsql = select * from student_info where 判断是否选择学号查询方式if check1(0).value then if trim(txtsid.text) = then

30、smeg = 学号不能为空 msgbox smeg, vbokonly + vbexclamation, 警告 txtsid.setfocus exit sub else 判断输入学号是否为数字if not isnumeric(trim(txtsid.text) then msgbox 请输入数字! , vbokonly + vbexclamation, 警告 exit sub txtsid.setfocus end if dd(0) = true 组合查询语句txtsql = txtsql & student_id = & trim(txtsid.text) & en

31、d if end if 判断是否选择姓名查询方式if check1(1).value then 判断是否输入姓名if trim(txtname.text) = then smeg = 姓名不能为空 msgbox smeg, vbokonly + vbexclamation, 警告 txtname.setfocus exit sub else dd(1) = true if dd(0) then 组合查询语句txtsql = txtsql & and student_name = & txtname.text & else txtsql = txtsql & st

32、udent_name = & txtname.text & end if end if end if 判断是否选择班号查询方式if check1(2).value then 学生信息管理系统第 - 23 - 页 共 30 页判断是否输入班号if trim(txtclassno.text) = then smeg = 班号不能为空 msgbox smeg, vbokonly + vbexclamation, 警告 txtclassno.setfocus exit sub else dd(2) = true if dd(0) or dd(1) then 组合查询语句txtsql =

33、 txtsql & and class_no = & txtclassno.text & else txtsql = txtsql & class_no = & txtclassno.text & end if end if end if 判断是否设置查询方式if not (dd(0) or dd(1) or dd(2) or dd(3) then msgbox 请设置查询方式!, vbokonly + vbexclamation, 警告 exit sub end if 查询所有满足条件内容txtsql = txtsql & order

34、by student_id 执行查询语句set mrc = executesql(txtsql, msgtext) 将查询内容显示在表格控件中with myflexgrid .rows = 2 .cellalignment = 4 .textmatrix(1, 0) = 学号 .textmatrix(1, 1) = 姓名 .textmatrix(1, 2) = 性别 .textmatrix(1, 3) = 出生日期 .textmatrix(1, 4) = 班号 .textmatrix(1, 5) = 联系电话 .textmatrix(1, 6) = 入校日期 .textmatrix(1, 7)

35、 = 家庭住址 判断是否移动到数据集对象的最后一条记录do while not mrc.eof .rows = .rows + 1 .cellalignment = 4 .textmatrix(.rows - 1, 0) = mrc.fields(0) .textmatrix(.rows - 1, 1) = mrc.fields(1) 学生信息管理系统第 - 24 - 页 共 30 页.textmatrix(.rows - 1, 2) = mrc.fields(2) .textmatrix(.rows - 1, 3) = format(mrc.fields(3), yyyy-mm-dd) .t

36、extmatrix(.rows - 1, 4) = mrc.fields(4) .textmatrix(.rows - 1, 5) = mrc.fields(5) .textmatrix(.rows - 1, 6) = format(mrc.fields(6), yyyy-mm-dd) .textmatrix(.rows - 1, 7) = mrc.fields(7) 移动到下一条记录mrc.movenext loop end with mrc.close end sub private sub form_load() with myflexgrid .cellalignment = 4 .textmatrix(1, 0) = 学号 .textmatrix(1, 1) = 姓名 .textmatrix(1, 2)

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论