1、数据库课程设计报告设计题目:教务辅助管理系统 学生姓名: 系 别: 专 业: 班 级: 学 号: 指引教师: 评阅意见:参照意见见李靖目 录2、功能描述33、数据流分析43.1、数据流图43.2、数据字典64、概念模型设计155. 逻辑模型设计和优化166. 物理设计和实行187、应用程序设计(前台)188、课程设计心得体会181、开发背景随着学校发展,越来越多学生来学校求学,班级数量教师数量以及教室资源数量庞大给学校为班级手动排课带来了许多不便,为理解决该问题,咱们小组开发该教务辅助管理系统,可以用于自动排课以及教师工作量查询等用途。为以便在各种客户端使用该系统,故将该系统设计成网站形式,让
2、各种顾客可以在不同地点试用。2、功能描述 通过调研及分析,该教务辅助管理系统重要可以完毕如下功能:1) 教师基本信息管理:重要完毕教师号,教师名,所专家课程等信息管理。2) 课程信息管理:重要对课程名课程号进行管理。3) 教室基本信息管理:管理某个教室在星期几第几节课与否有课信息。4) 实现自动排课功能:依照教学筹划中某个班由各个教师专家各门课程等信息对该班进行排课。5) 简朴计算工作量:依照课程表中信息对教师工作量进行记录。6) 可以输出相应报表。7) 具备数据备份和数据恢复功能。3、数据流分析3.1、数据流图通过需求分析,得出教务辅助管理系统中,教师使用该系统时数据流如图1所示:图1 教师
3、使用系统时数据流图以及管理员使用时数据流图如下所示: 图2管理员使用时数据流图1 图3管理员使用时数据流图23.2、数据字典对图1中各项进行描述:(1)数据流描述数据流编号: D001数据流名称: 教师登录信息简 述:教师登录顾客信息数据流来源:教师数据流去向:教师信息判断数据流构成:教师顾客名+密码数据流编号: D002数据流名称: 教师信息简 述:教师顾客有关信息数据流来源:教师信息判断数据流去向:排课状态查询数据流构成:教师号+教师名等数据流编号: D003数据流名称: 无排课信息简 述:发现当前教师顾客未进行排学时提示信息数据流来源:排课状态查询数据流去向:教师数据流构成:教师号+教师
4、名等数据流编号: D004数据流名称: 教师工作量信息简 述:当前教师工作量信息数据流来源:工作量查询数据流去向:教师数据流构成:教师号+教师名+工作量等数据流编号: D005数据流名称: 课程表信息简 述:当前教师课程表信息数据流来源:课程表查询数据流去向:教师数据流构成:教师号+教师名+课程表等(2) 解决逻辑描述解决逻辑编号:P001解决逻辑名称:教师信息判断简 述:判断教师信息合法性输入数据流:教师登陆信息解决描述: 依照顾客提供教师信息,判断该信息与否对的,如果对的,则可以进行下一步操作,否则返回。输出数据流: D003教师信息、D002无效提示信息解决逻辑编号:P002解决逻辑名称
5、:排课状态查询简 述:查询对当前教师顾客与否已进行排课 输入数据流:D003教师信息解决描述:依照提供教师信息,查询该教师课程与否排课,有则可以进行查询,如没有则返回教师无排课信息。输出数据流: D003教师信息+D004无排课信息解决逻辑编号:P003解决逻辑名称:工作量查询简 述:查询当前教师工作量 输入数据流:D003教师信息解决描述:依照提供教师信息,对该教师一周工作量进行查询输出数据流: D005教师工作量信息解决逻辑编号:P004解决逻辑名称:课程表查询简 述:查询当前教师课程表输入数据流:D003教师信息解决描述:依照提供教师信息,对该教师课程表进行查询输出数据流: D006教师
6、课程表信息解决逻辑编号:P005解决逻辑名称:生成报表简 述:将教师查询信息生成报表输入数据流:D003教师信息解决描述:依照教师所需要信息,将该信息生成报表输出数据流: 查询信息(3) 数据存储描述数据存储编号:F001数据存储名称:教师信息简 述:教师基本信息数据存储构成:教师号+姓名+性别+学院+登录密码核心字:教师号有关联解决:P001数据存储编号:F002数据存储名称:课程信息简 述:当前教师所专家课程安排信息数据存储构成:教师号+课程安排核心字:教师号有关联解决:P003+P004对图2中各项进行描述: (1)数据流描述数据流编号: D001数据流名称: 管理员信息简 述:管理员登
7、录信息数据流来源:管理员数据流去向:管理员信息判断数据流构成:管理员号+登录密码数据流编号: D002数据流名称: 未排课信息简 述:提示有教师没有进行排课或者没有信息用来排课数据流来源:排课状态查询数据流去向:管理员数据流构成:教师号等数据流编号: D003数据流名称: 教师信息简 述:教师顾客有关信息数据流来源:排课状态查询数据流去向:录入教师信息数据流构成:教师号+教师名等数据流编号: D004数据流名称: 课程信息简 述:课程有关信息数据流来源:排课状态查询数据流去向:录入课程信息数据流构成:课程号+课程名等数据流编号: D005数据流名称: 教室资源信息简 述:教室资源使用有关信息数
8、据流来源:排课状态查询数据流去向:录入教室资源信息数据流构成:教室号+空闲时间(2) 逻辑解决描述解决逻辑编号:P001解决逻辑名称:管理员信息判断简 述:判断管理员信息合法性输入数据流:管理员信息解决描述: 依照管理员提供信息,判断对的与否,如果对的则可进行排课状态查询,否则返回。输出数据流: D001管理员登陆信息解决逻辑编号:P002解决逻辑名称:排课状态查询简 述:判断管理员对教师,课程,教室资源等信息与否已进行排课输入数据流:管理员信息解决描述: 通过管理员信息,查看教师课程以及教室资源表中信息,判断与否排课,若有信息而没排课则可进行排课,若没信息则提示输入信息。输出数据流: D00
9、4教师信息、D005课程信息、D006教室资源信息解决逻辑编号:P003解决逻辑名称:录入教师信息 简 述:将管理员输入教师信息录入表中输入数据流:教师信息解决描述: 把教师信息录入表中。输出数据流: D004教师信息解决逻辑编号:P004解决逻辑名称:录入课程信息简 述:将管理员输入课程信息录入表中输入数据流:课程信息解决描述: 把课程信息录入表中。输出数据流: D005课程信息解决逻辑编号:P005解决逻辑名称:录入教室资源信息简 述:将管理员输入教室资源信息录入表中输入数据流:教室资源信息解决描述: 把教室资源信息录入表中。输出数据流: D006教室资源信息(3) 数据存储描述数据存储编
10、号:F001数据存储名称:管理员表简 述:管理员基本信息数据存储构成:管理员号+姓名+性别+密码核心字:管理员号有关联解决:P001数据存储编号:F002数据存储名称:教师信息表 简述:教师基本信息数据存储构成:教师号+姓名+身份证号+性别+学院核心字:教师号有关联解决:P003数据存储编号:F003数据存储名称:课程信息表简 述:课程基本信息数据存储构成:课程号+课程名核心字:课程号有关联解决:P004数据存储编号:F004数据存储名称:教室资源表 简 述:教室资源基本信息数据存储构成:教室号+无空余时间核心字:教室号有关联解决:P005数据存储编号:F003数据存储名称:课程表简 述 :各
11、个课程任课教师和上课地点数据存储构成:课程号+教师号+教室号+时间核心字:课程号+教师号+教室号+时间有关联解决:P004对图3中各项进行描述:(1)数据流描述数据流编号: D001数据流名称: 管理员信息简 述:管理员登录信息数据流来源:管理员数据流去向:管理员信息判断数据流构成:管理员号+登录密码数据流编号: D002数据流名称: 课程表信息简 述:课程表内排课状况信息数据流来源:查看课程表信息数据流去向:数据记录数据流构成:课程表内,管理员所需要信息数据流编号: D003数据流名称: 记录信息简 述:管理员记录出来有关信息数据流来源:数据记录数据流去向:生成报表数据流构成:课程表内,管理
12、员所需要信息(2)逻辑解决描述解决逻辑编号:P001解决逻辑名称:管理员信息判断简 述:判断管理员信息合法性输入数据流:管理员信息解决描述: 依照管理员提供信息,判断对的与否,如果对的则可进行排课状态查询,否则返回。输出数据流: D001管理员登陆信息解决逻辑编号:P002解决逻辑名称:查看课程表信息简 述:查看课程表内信息输入数据流:管理员信息解决描述: 通过管理员信息,查看课程表中信息,判断与否有信息,若有信息则可以进行记录,若没信息则输出提示信息。输出数据流: D002课程表信息解决逻辑编号:P003解决逻辑名称:进行记录简 述:将管理员所需要信息记录出来输入数据流:课程表信息解决描述:
13、将管理员所需要信息记录出来输出数据流: D003记录信息解决逻辑编号:P004解决逻辑名称:生成报表简 述:将管理员记录出来信息生成报表,输出输入数据流:记录信息解决描述: 将管理员记录出来信息生成报表,输出输出数据流: D003记录信息(4) 数据存储描述数据存储编号:F001数据存储名称:管理员表简 述:管理员基本信息数据存储构成:管理员号+姓名+性别+密码核心字:管理员号有关联解决:P001数据存储编号:F002数据存储名称:课程表简 述:对所有班级教师课程进行安排后表数据存储构成:教师号+课程号+班级+教室号+上学时间核心字:教师号+课程号+班级+教室号+上学时间有关联解决:P002+
14、P0034、概念模型设计依照系统数据流图和数据字典,得出系统总体概念模型(E-R)如下图所示。图4 教师关系ER图图5管理员关系ER图5. 逻辑模型设计和优化依照系统总体概念设计模型、E-R图向关系模式转化规则和数据库范式理论,得到系统优化后逻辑模型,如下表所示。 表1 教师信息表字段名字符类型长度备注tno整型教师号,主码tname字符20教师名,非空tdept字符20所属系别,非空tcourse字符20所教课程,非空 表2 课程信息表字段名字符类型长度备注cno整型课程号,主码cname字符20课程名,非空 表3 教室资源表字段名字符类型长度备注rno整型教室号,主码rname字符20教室
15、名,非空 表4教室安排表 字段名字符类型长度备注section整型某一天第几节课,非空week整型表达星期几,非空status整型当前天当前节数与否被安排 表5班级信息表字段名字符类型长度备注Classno整型班级号,非空classname字符20班级名,非空 表6顾客登录信息表字段名字符类型长度备注userId整型主码username字符20非空password字符20非空grade整型用于辨别顾客级别 表7 教学筹划表字段名字符类型长度备注tno整型哪位教师课,非空cno整型上什么课,非空classno整型给哪个班上,非空ctime整型所需要学时数,非空 表8教室安排规则表字段名字符类型长
16、度备注Section整型第几节课,非空Week整型星期几,非空Degress整型安排级别,非空Status整型安排与否,非空 表9 总课程表 字段名字符类型长度备注tno整型哪位教师rno整型在那个教室classno整型给哪个班cno整型上什么课Section整型在一天哪节课week整型在星期几6. 物理设计和实行数据库建立如上表所示,存储途径等均采用系统默认设立。7、应用程序设计(前台)我负责SQL Server上表设计和创立工作,还负责SQL语句设计。下面为各表截图状况:arrangementRule表classInfo 表courseInfo 表roomInfo 表roomStatus
17、表syllabusInfo 表teacherInfo 表tplanInfo 表Users 表一下是某功能模块增删改查SQL语句:select count(*) from roomInfoinsert into roomInfo values(rname)select count(*) from roomInfoselect top pageSize from roomInfo where rno not in(select top pageSize*(pageNow-1) rno from roomInfo)update roomInfo set rname=rname where rno=r
18、noselect * from tableName where columnName=rnodelete from roomInfo where rno=rno其她模块SQL语句类似。8、课程设计心得体会通过这次课程设计,让我发现了诸多,vc+难度,而难度并没有难道咱们,组长提建议说要用java完毕这次任务,而对于从前一无所知我面对这个重大任务还是做出了知难而进做法。我发现我所懂得专业知识还是太少,不懂得该如何面对后来路,而我觉得后来路还会更艰难,后来要学习还太多太多,宇宙是无限大,知识也是无限大,我还需要花更多时间去学习,去学习诸多东西,诸多有用,和自己感兴趣,有东西通过自己去理解去摸索,才会有更深印象,才会掌握更好,前景是美好,我是这样以为。参照文献 1 李尊朝.Java语言程序设计(第二版).中华人民共和国铁道出版社. 2 钱雪忠.数据库原理及应用(第2版).北京邮电大学出版社.