学生成绩管理系统数据库设计_第1页
学生成绩管理系统数据库设计_第2页
学生成绩管理系统数据库设计_第3页
学生成绩管理系统数据库设计_第4页
学生成绩管理系统数据库设计_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

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

文档简介

1、武汉理工大学华夏学院课程设计报告书课程名称:数据库系统原理课程设计 题 目:学生成绩管理系统数据库设计 系 名: 信息工程系 专业班级: 软件1111班 姓 名: 学 号: 指导教师: 张玉蓉 2013年 12 月 27日武汉理工大学华夏学院信息工程系课 程 设 计 任 务 书课程名称: 数据库课程设计 指导教师: 张玉蓉 班级名称: 软件1111 开课系、教研室: 软件与信息安全 一、课程设计目的与任务数据库课程设计是数据库原理与应用课程的后续实践课程,旨在通过一周的实践训练,加深学生对理论课程中数据库的基础知识,原理和使用方法的理解,加强学生综合运用sql语言以及数据库设计进行实际应用,包

2、括数据库设计,数据库实现,sql语言查询和sql server数据库应用及管理的能力,进一步提高学生进行数据库设计,分析问题和解决问题的能力。学生将在指导老师的指导下,完成从需求分析,总体设计,实现到测试的全过程。二、课程设计的内容与基本要求本课程设计将设计和开发一个小型的数据库实用系统。要求数据功能模块划分合理,数据库表设计合理,查询语句优化,数据处理正确。根据所学的数据库原理与程序设计的知识,能够针对一个小型的图书管理系统,进行数据库系统的需求分析,概念结构设计、逻辑结构设计、物理结构设计,数据录入及测试等,完成题目要求的功能。主要任务:() 需求分析 根据设计任务书给出的背景资料,查找相

3、关资料,结合自己的生活经验,对数据和处理过程进行分析,编写详细的数据词典(如数据项、记录的说明、它们的标识符、同义名及有关信息)。写出需求分析说明,包括系统的功能分析、系统的功能模块设计、数据库的数据字典、数据流图等。() 概念结构设计说明本数据库将反映的现实世界中的实体、属性和它们之间的关系等的原始数据形式,包括各数据项、记录、表的标识符、定义、类型、度量单位和值域,建立本数据库的每一幅用户视图和全局视图(E-R图,可以用基本E-R图或扩展E-R图),消除不必要的冗余。() 逻辑结构设计与物理结构设计将概念结构映射为数据库全局逻辑结构(关系模型),包括所确定的关键字和属性、重新确定的记录结构

4、和所建立的各个表文件之间的相互关系。其中提请注意: a. 关系模式的优化 指出关系模式的范式级别及设计原则 b安全保密设计 说明在数据库的设计中,将如何通过区分不同的访问者、不同的访问类型和不同的数据对象,进行分别对待而获得的数据库安全保密的设计考虑。 c物理结构设计 说明在数据库的设计中,是否需要索引及如何设置索引,设置索引的原则。 目录1 概述.41.1设计题目.41.2可行性分析.42 需求分析.43 概念结构设计.43.1开发工具. 43.2.1功能模块. 43.2.2功能描述. 43.2.3功能结构图.54 逻辑结构设计.54.1数据分析.54.2数据库E-R图.55 物理结构设计.

5、65.1数据库表设计.65.2数据库表.76 实现及测试.97 结论:特点和不足.148 心得体会.159 参考文献.161.概述1.1设计题目: 学生成绩管理系统数据库设计 1.2可行性分析整个项目开发过程中,主要从经济可行性和技术可行性来分析:经济可行性:系统开发过程中,所需要的工具如计算机等所有工具均有自己承担技术可行性:目前该小组已经掌握java语言,能熟练编写jsp,数据库的设计与维护,软件工程,在开发过程中对遇到未知的技术问题还将会进行深一步的学习与研究。2.需求分析 能实现对数据库的增删查改操作,能登陆学生系统,完成对学生系统的操作,能实现数据库的调用和存储。 本需求分析包含了初

6、步分析设计各功能模块、提供性能要求、对用户影响的信息、以及对各功能模块功能的描述;同时也是规范开发人员进行设计和部署实施的基础和依据,为整体工作组的工作流程做出明确指导,引导工作组员之间、工作组员与用户之间的沟通。最终作为总体审核、验证、确认和结项验收的依据;为开发方与客户方提供合法的合同保障。3.概念结构设计3.1开发工具Windows环境下使用Myeclipse和mysql3.2.1功能模块功能一:管理员 CRUD学生信息 CRUD教师信息 CRUD课程信息 课程和老师分配功能二:老师 添加/修改/删除/查询学生成绩 查询学生 查询所带课程功能三:学生 查询成绩 查询课程/选课 个人信息管

7、理3.2.2 功能描述功能编号1-1功能名称学生信息管理功能描述:管理员登录之后,添加学生信息,添加到系统的学生才能够进行使用此系统进行选课、查询成绩等功能输入项学号、姓名、性别、年龄、院系、专业输出项操作提示: 图13.2.3项目结构图增删查改学生信息查询成绩学生管理学生成绩管理系统管理员 老师学生老师管理课程管理查看课程学生成绩选课增删查改老师信息增删查改课程信息增删查改学生信息 图24.逻辑结构设计4.1数据分析管理员(用户名,密码)老师(工号,姓名,密码,性别,年龄,课程方向,备注信息)学生(学号,姓名,密码,性别,年龄,院系,专业,备注信息)课程(课程号,课程名,学分,课时)成绩(课

8、程号,学号,分数)老师-课程(工号,课程号)学生-课程(学号,课程号) 4.2数据库E-R图管理员老师课程学生成绩管理管理管理登陆查询管理选择产生 图35.物理结构设计5.1数据库表设计表1: tb_admin表字段类型约束说明idint主键,自动增长管理员信息主键usernamevarcharNOT NULL管理员用户名passwordvarcharNOT NULL管理员密码表2: tb_teacher表字段类型约束说明idchar(7)主键老师工号,登录用户名namevarchar(30)NOT NULL老师真实姓名passwordvarchar(16)NOT NULL老师登录密码sexc

9、har(2)NOT NULL性别ageint年龄course_directionvarchar(30)NOT NULL课程方向descvarchar(200)描述信息表3:tb_student表字段类型约束说明snumchar(11)主键学号,登录用户名namevarchar(30)NOT NULL真实姓名passwordvarchar(16)NOT NULL登录密码sexchar(2)NOT NULL性别ageint年龄departmentvarchar(30)NOT NULL学生所属的院系majorvarchar(30)NOT NULL学生所属的专业descvarchar(200)描述信息

10、表4:tb_course表字段类型约束说明course_numchar(10)主键课程编号course_namevarchar(50)NOT NULL课程名course_xfnumberNOT NULL学分course_ksintNOT NULL课时表5:tb_grade表字段类型约束说明grade_course_numchar(10)联合主键,外键关联tb_course(course_num)grade_student_numchar(11)联合主键,外键关联tb_student(snum)grade_scoreintnot null表6:tb_teacher_course表字段类型约束说明

11、teacher_idchar(7)老师工号course_numchar(10)课程号表7:tb_student_course表字段类型约束说明student_numchar(11)学生学号course_numchar(10)课程号 5.2数据库表 图4 图5 图6 图7 图86.实现及测试 6.1功能实现截图第一步:登陆学生管理系统 图9第二步:输入密码和学号 图10第三步:添加学生信息 图11第四步:填写学生信息 图12第五步:添加学生信息成功 图13第六步;添加老师信息 图14第七步:分配教师信息成功 图15分配教师课程可以选择课程编号和工号: 图16添加学生信息列表 图17删除其中一条信

12、息,系统会提示是否删除 图137.结论:特点和不足7.1特点: 通过以下程序链接数据库public class DBManager /* 准备连接数据库的字符串 */ 数据库不同,那么数据库的DRIVER和URL也不相同/ 数据库连接驱动(我们连接任何一种数据库都需要驱动jar包)private static final String DRIVER = com.mysql.jdbc.Driver;private static final String URL = jdbc:mysql:/localhost:3306/db_sgms;private static final String USE

13、RNAME = root;private static final String PASSWORD = 123;/ 在静态块中通过反射机制加载驱动static try Class.forName(DRIVER); catch (Exception e) /通过驱动管理器获取数据库连接public static Connection getConn()Connection conn = null;try conn = DriverManager.getConnection(URL,USERNAME,PASSWORD); catch (Exception e) e.printStackTrace(

14、);return conn;7.2不足之处:还有一部分功能未能完成,例如,学生登陆界面么有做,老师登陆界面没有完成,另外许多界面没有优化,没有达到好的效果,不能给人以美感。8.心得体会总的来说这次计算机网络课程设计让我收获良多,这次又让我们重新认识了数据库,以前我们也做过数据库的实验,不过我都是零散的东西,但这次我们系统的完成了学生成绩管理系统的操作,学到了很多以前没学到的东西,同时也明白了我们真正要学的东西还很多,不要因为考试通过了就放松学习。 这次的实训同样是由外面的老师带领我们来做,因此我们更深层次的了解整个过程的操作流程,认识到了各个代码的作用,如何调用数据库,如何完整的将数据存储到数

15、据库中来,同时让我们认识了这么新的课程,给了我们以后更大的发展空间,另外我也感觉这次的课程设计老师很负责,给我们很多自由练习的机会。 另外,我们常常因为一个小错误,吃了很多苦,常常是一个单词的错误而走了很多弯路,程序不能正常运行,搞得很窝火,但凡事有苦也会有甜,看着自己的写的程序能正常运行,在自己手里一点一点的写出来,并能展示出结果,我心里有说不出来的高兴,确实我也学到了很多,以前没学好的,现在得到了巩固,而且我发现我们也需要细心和耐性,我想这也是这次实训的目的,我也能体会到老师的用心良苦,数据库对我们来说也是一门基础,这样做也是为了让我们更好掌握它,也为了我们在以后的学习中更

16、好的发挥。 最后,虽然程序大体运行的没有问题,但也存在很多实际问题没解决,如果真正要把它运用于实际还很难,毕竟我们学的知识还不够完善,不能将设计做的尽善尽美。9.参考文献10.1 周绪SQL Server2000入门与提高(中文版)北京:清华大学出版社,2004年2月10.2 于松涛SQL Server2000数据库管理与开发技术大全北京:人民邮电出版社,2005年5月10.3 Steven FeuersteinOracle PL/SQL最佳实践北京:机械工业出版社,2009年10.4 黄河racle9iForWindowsNT_2000数据库系统培训教程北京:清华大学出版社,2005年设计过程及答辩回答问题记载:(至少三个问题)1.问:数据库不同,那么数据库的DRIVER和URL也相同吗? 答:不会相同2问:数据库连接驱动程序是? 答:private static final String DRIVER = com.mysql.jdbc.Driver

温馨提示

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

评论

0/150

提交评论