1、学生成绩管理系统数据库设计论文 作者: 日期:2 个人收集整理 勿做商业用途一、需求分析1、基本功能要求:(1) 学生信息管理 学生对自己的信息进行查询,老师对学生成绩进行录入、修改,学生基本信息包括:学号、姓名、性别、密码、系别、班级、各科成绩等。(2) 教师信息管理 老师自己信息的管理,教师基本信息包括:老师编号、姓名、性别、年龄、职称、联系方式、所教课程等数据项,可以学校人事部对教师任用、信息查询及更改.(3) 系统管理 系统管理员可以对学生、老师的信息进行注册和更新,对教师的权限进行管理,比如超过某一期限将不能修改学生成绩。2、实现要求:系统主要完成以下几个功能:(1)学生基本信息查询
2、;(2)教师基本信息查询;(3)学生成绩的录入和修改;(4)系统管理员对学生和教师基本信息的进行注册、更新;(5)学生只能通过登录系统对自己的成绩进行查询,老师可以查询自己所带科目的所有学生的成绩.3、安全性和完整性要求安全性先通过视图机制,不同的用户只能访问系统授权的视图,这样可提供系统数据一定程度上的安全性,再通过用户授权机制,用户登陆来识别用户级别,根据这个级别来分配用户权限,达到数据更高层次的安全保密功能.完整性要求用于描述学生基本信息、教师基本信息中数据项能否为null,以及一些用户自定义完整性(符合实际要求)。4、数据流图 学生登录查询查询基本数据流图教师密码正确密码错误查询注册学
3、生注册教师登录用户自身资料总体成绩(教师)所教课程(教师)所学课程(学生)退出系统扩充后的查询数据流图学生个人成绩5、数据字典(1) 数据项:数据项编号数据项含义别名存储结构1Sno学生学号学号String2Sname学生姓名姓名String3Ssex学生性别性别String4Sdept学生所在系别系别String5Sclass学生所在班级班级String6Scode学生登录密码密码int(10)7SCno学生所学课程的编号课程编号Int(10)8SCname学生所学课程的名称课程名称String9SCgrade学生所学课程的学分课程学分Int(2)10SGrade学生课程成绩成绩int(2)
4、11Tno教师编号编号String12Tname教师姓名姓名String13Tsex教师性别性别String14Tage教师年龄年龄Int(2)15Tpro教师职称职称String16Tdept教师所属系别系别String17Tcode教师登录密码密码int(10)18Tphone联系方式电话int(20)19TCno所教授课程的编号课程编号Int(10)20TCname所教授课程的名称课程名称String21TCgrade所教授课程的学分学分Int(2)(2) 数据结构:数据结构编号数据结构名含义组成1Student学生信息Sno,Sname,Ssex,Sdept,Sclass,Scode2
5、Teacher教师信息Tno,Tname,Tsex,Tdept,Tcode,Tphonr3Course1学生所学课程信息Scno、SCname、SCgrade、SGrade4Course2教师所教授课程信息TCno、TCname、TCgrade二、 概念结构设计1、抽象(1) 分类学生张三李四王五宁静。老师王敏李智何瑞。马杰(2) 聚集学 生学号姓名系别实体型属性教 师编号姓名职称实体型属性2、抽象数据并设计局部ER图 我们依据系统的当前用户进行自然划分。首先,学生数据库可以大致分成以下几类:(1) 学生档案信息(如姓名、性别、班级等)的维护。(2) 教师档案信息(如姓名、性别、年龄等)的维护
6、。(3) 课程档案信息(如课程编号、课程名称、课程学分等)的维护。(4) 学生成绩档案信息(每门课程的成绩)的维护。(5) 安全性(用户的登录密码)的维护。 由以上几类,我们可以得到下面的几个ER图:学号姓名性别密码系别班级选修课程编号名称学分mk“学生”与“课程”ER图学生编号姓名性别年龄职称电话教授课程编号名称学分pq“教师”与“课程”ER图教师编号姓名性别年龄职称电话班级学生姓名性别密码nm“教师”与“学生”ER图教师学号班级系别3、集成局部视图,得到全局概念结构学生课程老师选修班级教授编号名称学分学号姓名性别密码系别班级编号姓名性别年龄职称电话mknmpq全局E-R图三、 逻辑结构设计
7、1、ER图向关系模型转换由全局ER图可以将学生、教师、课程3个实体以及联系转换成关系模式为学生(学号,姓名,性别,密码,系别,班级)教师(教师编号,姓名,性别,年龄,职称,电话)课程(课程编号,名称,学分,班级,教师编号)成绩(学号,课程编号,成绩)2、关系模型的优化将关系数据库规范成第三级范式学生(学号,姓名,性别,密码,系别,班级)教师(教师编号,姓名,性别,年龄,职称,电话)课程(课程编号,名称,学分)课表(课程编号,班级,教师编号)成绩(学号,课程编号,成绩)四、 数据库的实施和维护1、数据库的录入(1)在数据库中新建关系模型中的表,然后录入数据。(2)视图 2、运行程序 (1)登陆界
8、面(学生和老师两种界面) (2)教师登陆界面 (3)添加学生成绩(4)查询学生成绩(5)修改学生成绩(6)课程表查询(7)教师个人信息查询(8)学生登录界面(9)学生个人信息查询(10)退出系统五、实验总结1、小结:(1)、掌握了系统软件的编程;(2)、学习了JDBC技术,实现了数据库形式的信息管理系统;(3)、掌握了系统软件的编程,进一步学习了图形界面的设计、面向对象的编程;2、不足:刚开始在数据库中建表的时候漏掉了 课表(课程编号,班级,教师编个表,所以在查询全班成绩的时候,不能约束老师只查询自己所教班级的成绩,经过修改之后这个问题都得到了解决。在调试程序的时候,在修改成绩模块,java与数据库连接出现问题,不能正常修改成绩,所以关于学生和教师修改个人信息方面也没有编写出可行的程序,但这并不影响整体程序的运行。3、改进 系统可以设立更高级的管理员模式,对学生和教师的总体信息进行管理,根据各班学生总体成绩对教师进行评比。由于时间仓促,技术有限,本程序没有进行编写.第10页