学生学籍管理系统报告数据库课程设计_第1页
学生学籍管理系统报告数据库课程设计_第2页
学生学籍管理系统报告数据库课程设计_第3页
学生学籍管理系统报告数据库课程设计_第4页
学生学籍管理系统报告数据库课程设计_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

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

文档简介

1、数据库课程设计报告 设计题目:学生学籍管理系统 学生姓名: 同组成员: 系 别:计算机科学与技术学院 专 业: 网络工程 班 级: 学 号: 指导教师: 评阅意见:课 程 设 计 任 务 书题目 学生学籍管理系统 专业、班级 学号 姓名 主要内容: (1)主要的数据表学生基本情况数据表,学生成绩数据表,课程表等等。(2)主要功能模块1) 实现学生基本情况的录入、修改、删除等基本操作。2) 对学生基本信息提供灵活的查询方式。3) 完成一个班级的学期选课功能。4) 实现学生成绩的录入、修改、删除等基本操作。5) 能方便的对学生的个学期成绩进行查询。6) 具有成绩统计、排名等功能。7) 具有留级、休

2、学等特殊情况的处理功能。8) 能输出常用的各种报表。具有数据备份和数据恢复功能。基本要求: (1)学生成绩表的设计,要考虑到不同年级的教学计划的变化情况。(2)对于新生班级,应该首先进行基本情况录入、选课、然后才能进行成绩录入主要参考资料:1 钱雪忠,陶向东. 数据库原理及应用实验指导M. 北京:邮电大学出版社,20052 钱雪忠,黄建华. 数据库及应用(第2版)M. 北京:邮电大学出版社,20073 求是科技. 信息管理系统开发实例导航M. 北京:人民邮电出版社,20054 何文俊,马杰. 完 成 期 限: 二周 指导教师签名: 课程负责人签名: 年 月 日目录1 开发背景41.1 背景知识

3、41.2 开发环境与开发工具41.3 设计内容及时间42 功能描述52.1 系统需求分析52.2 功能需求分析52.3 系统功能模块设计63 数据流程分析83.1 数据流图83.2 数据字典94 概念模型设计115 逻辑模型设计和优化135.1 数据库初始关系模式135.2 规范化处理135.3 关系图146 物理设计和实施156.1 物理设计156.2 实施167 应用程序设计(前台)188 课程设计心得体会23参考文献241 开发背景1.1 背景知识1数据库原理及应用课程的学习,其主要目标是能利用课程中学习到的数据库知识与技术较好地开发设计出数据库应用系统,去解决各行各业信息化处理的要求。

4、本实验主要在于巩固学生对数据库基本原理和基础理论的理解,掌握数据库应用系统设计开发的基本方法,进一步提高学生综合运用所学知识的能力。数据库应用设计是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,有效存储数据,满足用户信息要求和处理要求。为了使数据库应用系统开发设计合理、规范、有序、正确、高效进行,现在广泛采用的是工程化6个阶段开发设计过程与方法,它们是需求分析阶段、概念结构设计阶段、逻辑结构设计阶段、物理结构设计阶段、数据库的实施、数据库系统运行与维护阶段。1.2 开发环境与开发工具系统开发环境为局域网或校园网网络环境,网络中有一台安装Windows 2000 Ser

5、ver 的服务器,服务器上安装 SQL Server 2000,本子系统使用Visual Basic 6.0基于C/S结构开发,网络上任一安装了Windows 98及以上版本的计算机可作为客户机,系统设计与运行均可在客户机上进行。1.3 设计内容及时间设计内容:我们这组,我负责设计的主要功能为学生学籍变更情况管理如休复学、退学及毕业等,系统维护如用户管理和备份还原。而整个系统,我负责的侧重点在前台设计部分。设计时间:第一个星期前三天做了我们一起需求分析、数据流图和功能模块部分,第四五天在图书馆和网上搜集VB开发的前台资料和建立数据库,第二个星期主要是用VB开始着手做和测试运行。2 功能描述 系

6、统需求分析 本系统的设计模拟一般学校特别是高校的学生学籍管理内容,经过充分地系统调研,发现本系统应包括学生信息、课程信息、学生专业信息等需管理信息。进一步发现信息实体间管理信息有:专业分期课程计划、学生选课及各科成绩统计等内容。(1)本系统需要管理的实体信息班级信息:班号、班级名称、班主任工号等;学生基本信息:学号、类别、姓名、性别、出生日期、 、入校日期、家庭地址、备注等;专业信息:专业编号、专业名称、创办年份、学生规模等;学期信息:编号、学期名等;课程基本信息:课程号、课程名、类型、学分等毕业信息:毕业证号、性别、学号、姓名、毕业时间、已修学分、需修学分等。(2)本系统要管理的实体联系信息

7、学生入学时需录入登记,并选定一专业,每学期注册后即可选课(分必修课和选修课),每位学生选多门课,一门课应有多名学生修读。学生考试后,要登记考试成绩。专业分学期课程计划情况(即专业教学计划),要反映是否必修课、是否学位课、是否考试课及备注信息。学生各科成绩需要登记,统计排名。学生毕业需计算学分,审核资格(学分、学习期数是否达到要求),顺利毕业的颁发毕业证。学生在校表现根据实际情况,进行奖惩记录。2.2 功能需求分析在数据库服务器如SQL Server 2000中,建立各关系模式对应的库表,并确定主键、索引、参照完整性、用户自定义完整性等。能对各库表进行输入、修改、删除、添加、查询、打印等基本操作

8、。新学期开学,能排定必修课程,能选定选修课程,并能对选课做必要调整。能明细实现如下各类查询:·能查询学生基本情况、能查询学生选课情况及各考试情况、能查询学生所在班级情况、能查询学生所学专业及专业课程安排情况。·能查询课程基本情况、能查询课程学生选修情况、能查询课程专业安排情况、能查询专业基本情况、能查询分专业、分学期课程安排情况。·能查询班级基本情况、分班级查询其相关各类信息、能动态输入SQL命令查询。能统计实现如下各类查询:·能统计学生基本情况如分班学生人数,分类别学生人数等。·能统计学生选课情况及学生的成绩单(包括总成绩、平均成绩、不及格门

9、数等)情况。·能统计课程综合情况,能统计课程选修综合情况课程的选课人数、最高、最低、平均成绩等,能统计课程专业使用状况。·能统计专业学生综合情况,能统计专业课程综合情况。·能统计院系中班级或学生综合情况如班级个数、学生人数等,能动态输入SQL命令统计。能分析出某学生的学习优良情况(可分学期根据该学生所学所有课优良数平均超过20%来粗略评定。用户管理功能,包括用户登录、注册新用户、更改用户密码等功能。要求所设计系统界面友好,功能安排合理,操作使用方便,并能进不步考虑子系统在安全性、完整性、并发控制、备份恢复等方面的功能要求。 系统功能模块设计对系统各项功能进行集中、

10、分块,按照结构化程序设计的要求,可得出系统的功能模块图(如图2-1所示)。(我们这组分工情况,由于篇幅所限我只说明自己负责的部分,我负责的部分为休复学、毕业和奖惩信息及系统维护功能。)学生学籍管理系统管 理 端学 生 端学籍信息管理课程信息管理成绩管理系统维护查询学生信息新生信息录入更新信息休学复学退学信息处理毕业信息处理奖惩信息处理计算学分审核资格输出名册计划安排课程更新查询课程选修课安排必修课安排查询更新统计排名备份还原用户管理查询选课个人信息成绩信息课程信息查询可选课程选修课程 图 2-1 系统的功能模块图3 数据流程分析 数据流图2经分析,本系统的数据流图如图3-1所示:输出选课结果选

11、课单课程信息信息正选结果学生名单已安排的课程(必修)课程表已有的课程表课程表统计表统计表所有课程成绩成绩单新生信息已通过的成绩单学籍信息学籍信息更新学生信息奖惩信息复学信息退学信息休学信息毕业信息新生信息系统信息备份/恢复信息管理员系统维护管理员输入新生信息更新学籍学籍记录查询管理员学生成绩管理成绩统计更新、查询课程表教学安排课程记录选课学生管理员学生 图 3-1 系统数据流图3.2 数据字典【3】数据字典的数据结构如下表3-1所示: 表3-1 数据结构数据结构名组成学生个人信息学号姓名+性别+学院编号+班级编号+出生日期+籍贯+ +联系 + +政治面貌+密码+总学分+备注学生成绩记录号+学号

12、+课程名+课程号+成绩+学分+考试时间+院系号+班级号学生课程课程名+课程号+学时+学分学籍变更代码代码+全称学籍变更记录号+记录时间+学号+变更代码班级代码班级代码+全称院系代码学院编码+全称管理员身份认证name + pwd +style处罚代码处罚代码+全称处罚记录记录号+学号+记录时间+级别代码+备注奖励代码奖励代码+全称奖励记录记录号+学号+记录时间+级别代码+备注数据字典的数据流如下表3-2所示: 表3-2 数据流数据流名数据来源数据去向组成新生信息管理员学籍记录表学生个人信息奖惩信息管理员奖惩信息记录表学生奖惩信息更新学生信息管理员学籍记录表学生个人信息学籍变更管理员学籍记录表学

13、生个人信息成绩信息管理员成绩记录表学生成绩信息课程信息管理员课程记录表学生课程信息选课信息学生课程记录表学生选课信息教学安排信息管理员课程记录表学生课程表选课学生名单选课记录表管理员学生选课记录所以课程记录成绩记录表成绩统计表学生成绩统计表成绩信息成绩记录表学生成绩记录表课程信息课程表学生学生课程表学籍信息学籍记录表学生学生个人信息学籍信息学籍记录表管理员学生个人信息学籍变更信息管理员学籍记录表学生个人信息数据字典的处理过程如下表3-3所示: 表3-3 处理过程处理过程名输入数据流输出数据流输入新生信息新生信息学籍信息更新学籍更新信息学籍信息系统维护备份恢复信息系统信息成绩管理成绩信息成绩信息

14、教学安排课程信息课程安排信息选课选择信息课程选择信息成绩统计成绩信息成绩排名信息学籍记录学籍信息学籍信息课程记录课程信息课程信息 4 概念模型设计数据库在一个信息管理系统中占有非常重要的地位,数据库结构设计的好坏将直接对应用系统的效率以及实现的效果产生影响。合理的数据库结构设计可以提高数据存储的效率,保证数据的完整和一致。同时,合理的数据库结构也将有利于应用系统程序的实现。在充分需求分析的基础上,经过逐步抽象、概括、分析、充分研讨,可画出如下反映教学管理系统数据的整体E-R图【4】(图4-1所示)。11nmnnnpm1n1属于毕业选修必修安排包含学生课程班级学期专业毕业生m图4-1 系统实体E

15、-R图我们的系统内容多,限于篇幅及纸张大小便不把图4-1中的实体属性都标出,在此我具体化我负责部分的E-R图,见下图4-2-1、图4-2-2:毕业生生毕业时间毕业证编号姓名已修学分必修学分学号图4-2-1 毕业生具体属性图学生姓名性别班号系号出生日期联系 政治面貌总学分备注密码 籍贯学号图4-2-2 学生具体属性图 5 逻辑模型设计和优化 数据库初始关系模式按照实体-联系图转化为关系模式的规则,本系统的E-R图可转化为相应的关系模式,由于我负责的是毕业生休学等学籍变更、学生奖惩信息处理和系统维维护的部分,在此只列出我负责部分的关系模式:学籍变更信息表(记录号,记录时间,学号,变更代码)学籍变更

16、代码表(代码,全称)处罚等级记录表(记录号,记录时间,学号,级别代码,备注)处罚等级代码表(代码,全称)奖励等级记录表(记录号,记录时间,学号,级别代码,备注)奖励等级代码表(代码,全称)管理员身份认证表(name, pwd, style) 规范化处理对上述初始关系模式进行规范化,经分析关系中不存在部分函数依赖和传递函数依赖,已达到3NF。(“_”代表主码)学籍变更信息表(记录号,记录时间,学号,变更代码)学籍变更代码表(代码,全称)处罚等级记录表(记录号,记录时间,学号,级别代码,备注)处罚等级代码表(代码,全称)奖励等级记录表(记录号,记录时间,学号,级别代码,备注)奖励等级代码表(代码,

17、全称)管理员身份认证表(name, pwd, style) 关系图上表关系图如下图5-1所示:图5-1 关系图6 物理设计和实施 物理设计我所负责部分的索引5建立后的图如下(同组者的部分省略了):下图为学籍变更信息表的索引: 图6-1 学籍变更信息表索引图下图为学籍变更代码表的索引: 图6-2 学籍变更代码表索引图下图为奖励等级代码表的索引:图6-3 奖励等级代码表索引图下图为奖励记录信息表的索引:图6-4 奖励记录信息表索引图下图为处罚等级代码表的索引:图6-5 处罚等级代码表索引图下图为处罚等级记录表的索引:图6-6 处罚等级记录表索引图 实施在SQL Server 里创建数据库及表后和用

18、VB做好前台设计后,便可以连接数据库了,我们连接数据库的方式选择的是ODBC数据源,如图6-7所示: 图6-7 连接数据库图在上图6-7连接数据库图中的“配置”属性里选择好所建数据库,测试成功,点击“确定”便连接成功,如下图6-8所示: 图6-8 测试连接图数据库与VB的前台设计连接好后,可以直接往里加载数据了,这样便于测试运行应用程序。为避免重复,测试运行截图不在此展示,见下文应用程序设计(前台)部分(下页开始)。7 应用程序设计(前台) 前台设计部分,我们这组采用的是VB开发工具,由于之前没接触过VB,做起来很是吃力,有些功能不是很完善。在此只对我负责的功能部分做详细说明,同组者的省略了。

19、学生奖励记录管理窗体运行截图如下图7-1所示,它能对指定学生进行奖励信息添加记录。图7-1 学生奖励记录管理窗体运行截图上图中,学生奖励记录管理窗体的关键代码【6】如下:Private Sub cmdFind_Click() Dim sqlXh As String If optXh.Value = True Then On Error GoTo errorXh rs_awardi.RecordSource = "select * from 奖励记录信息表 where 学号='" + Trim(txtXh.Text) + "'" Xh =

20、Trim(rs_awardi.Recordset.Fields("学号") txtXue.Text = Trim(Xh) stb.Panels.Item(3).Text=Str(rs_awardi.Recordset.RecordCount) Exit Sub End If上面这段关键代码,主要工作是通过学号来查找奖励信息表里的学生记录。学生奖处罚录管理窗体运行截图如下图7-2所示,它能对指定学生进行处罚信息添加记录。 图7-2 学生处罚记录管理窗体运行截图上图中,学生处罚记录管理窗体的关键代码如下:Private Sub cmdUpgrate_Click() rs_chu

21、fai.Recordset.Fields("学号") = Trim(txtXue.Text) rs_chufai.Recordset.Fields("级别代码") = Trim(txtCd.Text) rs_chufai.Recordset.Fields("记录时间 rs_chufai.Recordset.Fields("备注") = Trim(txtMemo.Text) MsgBox "保存成功!", vbInformation + vbOKOnly, "成功" txtMemo.Te

22、xt = "" txtMemo.Locked = True dpkAd.Enabled = False dgdChufa.Enabled = True cmdUpgrate.Enabled = False cmdClear.Enabled = FalseEnd Sub上面这段关键代码的主要工作是将处罚信息添加到处罚等级记录表中。选择登陆界面运行截图如下图7-3所示: 图7-3 选择登陆运行截图 系统用户登陆窗口运行截图如下图7-4所示:图7-4 系统用户登陆窗口运行截图选择登陆界面窗体的代码较为简单,而系统用户登录陆窗体的代码也简单,只牵涉到管理员身份认证表,便不在此贴代码

23、了。下图7-5为学生登陆窗体的运行截图:图7-5 学生登陆窗体运行截图学生登陆窗体的关键代码如下:Private Sub cmdOK_Click() If txtname.Text <> "" And txtname.Text <> "" Then rs_Sinf.RecordSource = "select * from 学生个人信息表 where 学号='" + Trim(txtname.Text) + "'" rs_Sinf.Refresh If TIM < 2

24、Then On Error GoTo errname '对不是合法用户的错误捕捉 If Trim(txtpwd.Text)= Trim(rs_Sinf.Recordset.Fields("密码") Then Valming=Trim(txtname.Text) '记录登陆用户用户名 Load frmStudent Unload Me Exit Sub上述关键代码的主要功能是核对学生个人信息表里是否输入的学号就密码。普通管理窗口运行截图如下图7-6所示: 图7-6 普通用户管理窗口运行截图 普通用户管理窗口的关键代码如下: Private Sub Form_A

25、ctivate() txtname.Text = Valming rs_Shenfen.RecordSource = "select * from 管理员身份认证表 where name='" + Trim(txtname.Text) + "'"End Sub上述关键代码,主要工作是修改管理员身份认证表的用户名和密码。8 课程设计心得体会经过这两周的数据库课程设计,收获了些许东西,感觉实践检验是所学理论知识的真理啊,上学期学了一学期的数据库原理及应用,结果一到实际操作起来跟没学差不多,幸得老师多次耐心的指导,终有所长进啊,对于面向一个数据库应用系统的开发过程大致清楚了。我们这组做的是学生学籍管理系统,因为是四个人一组,所以系统

温馨提示

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

评论

0/150

提交评论