收藏 分销(赏)

学生网上选课数据库优秀课程设计优质报告.doc

上传人:w****g 文档编号:2829504 上传时间:2024-06-06 格式:DOC 页数:45 大小:4.44MB
下载 相关 举报
学生网上选课数据库优秀课程设计优质报告.doc_第1页
第1页 / 共45页
学生网上选课数据库优秀课程设计优质报告.doc_第2页
第2页 / 共45页
学生网上选课数据库优秀课程设计优质报告.doc_第3页
第3页 / 共45页
学生网上选课数据库优秀课程设计优质报告.doc_第4页
第4页 / 共45页
学生网上选课数据库优秀课程设计优质报告.doc_第5页
第5页 / 共45页
点击查看更多>>
资源描述

1、 数据库应用课程设计汇报设计题目: 学生网上选课系统 班 级: 学 号: 姓 名: 指导老师: 完成日期: 成绩: 摘要本系统为学生网上选课系统,其开发关键包含数据库建立和维护和前端应用程序开发两个方面。 经过分析,我使用了java开发工具eclipse,开发了登录模块关键用于验证用户身份,进行有效操作。在我们所开发学生网上选课系统中创建了三个用户学生、老师和管理员,经过身份验证后方可进入。本系统还包含查询、添加、修改、删除等基础操作,在整个系统设计中充足利用了模块化设计思想和开发方法,用户在从主界面模块在验证后进入每个子模块进行各个子系统具体功效操作。在短时间内建立系统应用原型,然后,对初始

2、原型系统进行需求迭代,不停修正和改善,直到形成一个满意可行系统。目录第一章 系统概括5 1.1 课程设计选题5 1.2 项目背景5 1.3 课设汇报编写目标5 1.4 课设汇报组织5第二章 系统需求分析部分7 2.1 学生用户7 2.2 老师用户7 2.3 管理员用户7 2.4 数据流图8 2.5 数据字典11第三章 系统数据库设计部分16 3.1 数据库概念结构设计163.1.1 分E-R图143.1.2 局部E-R图163.1.3 合并E-R图163.1.4 实体及属性定义163.2 数据库逻辑结构设计163.2.1 逻辑转换163.2.2 细化表结构173.3 数据库物理结构设计和实施1

3、83.3.1 创建表183.3.2 建立视图213.3.3 建立索引233.3.4 建立外键24 3.3.5 建立约束253.3.6 存放过程建立263.3.7 创建触发器27第四章 界面设计和实现28 4.1 功效模块界面28 4.2 登录界面28 4.3 学生管理界面29 4.4 老师管理界面29 4. 5 管理员管理界面30第五章 系统测试31 5.1 用户登录测试31 5.2 学生管理信息测试315.2.1 密码修改305.2.2 学生选、退选课程325.2.3 个人信息、成绩查询33 5.3 老师管理信息测试345.3.1 选课成绩管理345.3.2 教学安排、个人信息查询36 5.

4、4 管理员管理信息测试375.4.1 查询学生信息375.4.2 添加学生信息375.4.3 修改学生信息385.4.4 删除学生信息38第六章 总结39关键参考文件39第一章 系统概括1.1 课程设计选题考虑到学生网上选课这个系统和我们大学生活是如此贴近,而且在我们平时选课时也常常出现部分不足,所以我选择“学生网上选课系统”这个课题。除了它比较贴近生活之外,这个项目也会让我对数据库有更新一步认识和巩固,对身边多种选课系统有一个更直观了解。1.2 项目背景伴随科技发展,高科技技术不停开发,数据处理在我们生活中尤为关键。教育不停改革和素质教育不停加强,学分制实施,选修课在一个学生培养计划中比重越

5、来越大。 现在我们选课和成绩查询全部是在网上进行,这个对于学生来说愈加自主、便捷。不过因为通常高校学生比较多,所以就带来很多如信息管理等问题。鉴于需要将学生信息、选课信息等信息数字化方便于维护管理,我们便想到了利用数据库愈加正确处理这类问题。所以我决定设计一个适适用于高校学生网上选课系统一共参考而且更深入了解高校选课步骤和数据保留。1.3 课设汇报编写目标 无纸化办公模式现在已经普遍存在,信息自动化处理和网络式信息交互方法已经普及而且被大家广泛应用,计算机管理学生信息在各大高校全部在主动进行,也是高校管理工作关键内容之一。学生网上选课和传统选课方法相比愈加智能便捷而且节省资源,也增加了学生学习

6、过程中自主权。 学生选课系统无疑是一个比较现代化教学技术,而且受到大家重视,是学校管理中不可获取额一部分。有了学生网上选课系统不仅方便了学生、老师,更关键是学校在管理数据方面会愈加方便和正确。学生网上选课系统使选课管理工作规范化、系统化、程序化,避免数据丢失,提升信息处理速度,能够正确立即查询及更改学生选课情况。编写课设汇报目标就在于将学生选课管理系统设计和实现和管理维护等工作愈加有条理展现出来,对开发设计学生选课系统过程进行统计而且概括,帮助愈加好了解、操作、利用学生网上选课系统。1.4 课设汇报组织课设汇报从学生网上选课系统需求分析到数据库设计,包含概念设计、逻辑设计、物理设计等,再到最终

7、实现和维护一一展现出来,包含最初设计理念,数据库具体认为建立和数据输入、管理及更新。包含实现学生选课功效、老师录入成绩功效,管理员对数据库信息增删改查功效一应俱全。在这次课程设计中我们全部主动参与各项步骤设计,但我们也有分工。初步列出以下:XX同学是用Java开发工具eclipse制作前台界面,建立数据库连接,用SQL语言建表、视图等;XX同学担任工作是对系统需求分析、构思画出数据流图、画出E-R图,把E-R图转化成关系模型并对其进行规范化处理,和文档编写、转化初始关系模型和内容摘要等编写,还担任了Word文档总结排版。这次数据库课程设计让我们对数据库操作有了深入了解,受益匪浅。第二章 系统需

8、求分析部分该系统能管理学校老师信息、学生信息、学校开设全部课程信息、学生选修课程信息等。选课系统关键满足三类用户要求,这三类用户分别是教务处学生、老师、系统管理员。她们所含有操作权限和操作内容是不一样。具体需求分析以下:2.1 学生用户(1)密码修改(2)进行选课和退选课程操作(3)个人信息查询和成绩查询2.2 老师用户(1)密码修改(2)选课成绩管理(查询、录入、修改和删除学生选课成绩)(3)个人信息查询、教学安排查询2.3 管理员用户(1)密码修改(2)学生信息管理(查询、添加、修改和删除学生信息)(3)课程信息管理(查询、添加、修改和删除课程信息)(4)老师信息管理(查询、添加、修改和删

9、除老师信息)(5)讲课信息管理(查询、添加、修改和删除讲课信息)2.4 数据流图输出结果输入查询请求查询信息正确信息学生界面验证信息用户名、密码选(退选)课程信息学生新密码错误信息用户名、密码修改成功密码密码修改修改信息验证结果修改成功选(退选)课程信息数据库更新密码新密码个人信息选课表添加(删除)选课信息输入查询请求输出结果 (1)查询结果老师成绩单成绩单录入学生成绩错误信息用户名、密码成绩教学安排录入成功成绩查询正确信息老师界面验证信息个人信息新密码选课表验证结果用户名、密码密码修改成绩查询查询信息新密码个人信息教学安排数据库更新密码讲课表讲课信息密码个人信息 (2)更新信息更新密码学生信

10、息更新结果讲课信息课程信息老师信息个人信息查询/添加/修改/删除学生信息密码查询/添加/修改/删除讲课信息查询/添加/修改/删除课程信息查询/添加/修改/删除老师信息管理员用户名、密码错误信息学生/老师/课程/讲课信息查询学生/老师/课程/讲课信息添加用户名、密码验证信息学生/老师/课程/讲课信息修改学生/老师/课程/讲课信息查询验证结果数据库新密码修改信息添加信息查询信息正确信息删除信息信息查询信息添加新密码密码修改信息删除信息修改管理员界面 (3)2.5 数据字典数据元素数据类型长度数据起源学号nchar10学生表姓名nchar8学生表性别nchar1学生表年纪int2学生表入课时间dat

11、etime15学生表专业nchar20学生表系别nchar20学生表密码nchar20学生表老师工号nchar10老师表姓名nchar8老师表性别nchar1老师表密码nchar20老师表管理职员号nchar10管理员表姓名nchar8管理员表密码nchar20管理员表课程编号nchar10课程表课程名nchar8课程表学分float1课程表学号nchar10选课表课程编号nchar10选课表成绩numeric(4,2)选课表老师工号nchar10讲课表课程编号nchar10讲课表课时nchar10讲课表第三章 系统数据库设计部分3.1数据库概念结构设计3.1.1 分E-R图各个实体分E-R图

12、分别以下图所表示(1) 学生信息实体图学生学号姓名性别年纪入课时间系别专业密码(2) 老师信息实体图老师老师工号姓名性别密码(3)管理员信息实体图管理员 管理职员号姓名密码(4)课程信息实体图课程课程名课程编号学分(5)选课信息实体图选课学号成绩课程编号(6)讲课信息实体图讲课课时课程编号老师工号3.1.2 局部E-R图(1)学生课程关系E-R图学生选修课程成绩mn(2) 老师课程关系E-R图老师教授课程课时m1(3) 老师学生关系E-R图老师教授学生学分mn(4)管理员学生关系E-R图管理员管理学生mn(5)管理员老师关系E-R图管理员管理老师mn(6) 管理员课程关系E-R图管理员管理课程

13、mn3.1.3合并E-R图 管理员 学生老师课程管理管理管理教授选修mmmnnnmnmn教授m13.1.4 实体及属性定义实体:学生、老师、管理员、课程、选课、讲课学生实体属性:学号、姓名、性别、年纪、入课时间、系别、专业、密码老师实体属性:老师工号、姓名、性别、密码管理员属性:管理职员号、姓名、密码课程属性:课程编号、课程名、学分选课属性: 学号、课程编号、成绩讲课属性:老师工号、课程编号、课时多对多联络:管理、选修、教授3.2 数据库逻辑结构设计3.2.1 逻辑转换将E-R图转换成关系数据模式,其中,每个实体转换成一个关系模式,多对多联络转换成独立关系模式,一对多联络并入多端实体,得到以下

14、初始关系模式:学生(学号、姓名、性别、年纪、入课时间、系别、专业、密码)老师(老师工号、姓名、性别、密码、课时)管理员(管理职员号、姓名、密码)课程(课程编号、课程名、学分)选课(学号、课程编号、成绩)讲课(老师工号、课程编号、课时)管理(管理职员号、学号、老师工号、课程编号)选修(学号、课程编号、成绩)教授(学号、老师工号、学分)3.2.2 细化表结构(1)学生信息表属性名数据类型长度是否许可为空有没有索引说明 snonchar10不许可有学号snamenchar8不许可有姓名ssexnchar1许可有性别sageint2许可有年纪entrancetimedatetime15不许可有入课时间

15、smajornchar20许可有专业ssdeptnchar20许可有系别spasswordnchar20不许可有密码(2)老师信息表属性名数据类型长度是否许可为空有没有索引说明tnonchar10不许可有老师工号tnamenchar8不许可有姓名tsexnchar1许可有性别tpasswordnchar20不许可有密码(3)管理员信息表属性名数据类型长度是否许可为空有没有索引说明mnonchar10不许可有管理职员号mnamenchar8不许可有姓名mpasswordnchar20不许可有密码(4)课程信息表属性名数据类型长度是否许可为空有没有索引说明cnonchar10不许可有课程编号cna

16、menchar8不许可有课程名ccreditfloat1不许可有学分(5)选课信息表属性名数据类型长度是否许可为空有没有索引说明snonchar10不许可有学号cnonchar10不许可有课程编号gradenumeric(4,2)不许可有成绩(6)讲课信息表属性名数据类型长度是否许可为空有没有索引说明tnonchar10不许可有老师工号cnonchar10不许可有课程编号ctimenchar10不许可有课时3.3 数据库物理结构设计和实施3.3.1 创建表本系统共创建了六个表:学生信息表、老师信息表、系统管理员信息表、课程信息表、选课信息表、讲课信息表。(1)创建student表以下(2)创建

17、teacher表以下(3)创建manager表以下(4)创建course表以下(5)创建sc表以下(6)创建tc表以下各表之间关系图:3.3.2 建立视图本系统共创建了八个视图以下是本系统关键视图:(1)学生选课总学分视图以下USE 网上选课系统GOSET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGOcreate view dbo.v_sum_ccredit(sno,sumcredit)as select sno,sum(ccredit)from tb_course,tb_selecting_coursewhere tb_o=tb_selecting_og

18、roup by sno(2) 课程视图以下 USE 网上选课系统GOSET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGOcreate view dbo.v_course(cno,cname,ccredit)as select cno,cname,ccreditfrom tb_course(3)学生平均成绩视图以下USE 网上选课系统GOSET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGOcreate view dbo.v_aver_grade(sno,avggrade)as select sno,avg(grade)f

19、rom tb_selecting_coursegroup by sno3.3.3 建立索引索引是关系数据库中用于存放每一条统计一个对象,关键目标是加紧数据读取速度和完整性检验,主键全部会自动生成,为了愈加快查找索引所以建立了以下索引。(1)课程编号索引以下(2)学生姓名和学生学号索引以下(3)老师工号和老师姓名索引以下(4)学生学号和课程号索引以下(5)管理职员号和管理员姓名索引以下(6)课程编号和课程名索引以下3.3.4 建立外键及级联外键是表示两个关系之间相关联络,以另一个关系外键作主关键字表被称为主表,含有另外键表被称为主表从表。级联是当删除主键时外键也会跟着删除,更新时外键也会跟着更新

20、。(1)tb_selecting_course表上外键及级联以下USE 网上选课系统GOALTER TABLE dbo.tb_selecting_course WITH CHECK ADD CONSTRAINT FK_tb_selecting_course_tb_course FOREIGN KEY(cno)REFERENCES dbo.tb_course (cno)ON UPDATE CASCADEUSE 网上选课系统GOALTER TABLE dbo.tb_selecting_course WITH CHECK ADD CONSTRAINT FK_tb_selecting_course_t

21、b_student FOREIGN KEY(sno)REFERENCES dbo.tb_student (sno)ON UPDATE CASCADEON DELETE CASCADE(2) tb_teaching_course表上外键及级联以下USE 网上选课系统GOALTER TABLE dbo.tb_teaching_course WITH CHECK ADD CONSTRAINT FK_teaching_class_tb_course FOREIGN KEY(cno)REFERENCES dbo.tb_course (cno)ON UPDATE CASCADEUSE 网上选课系统GOAL

22、TER TABLE dbo.tb_teaching_course WITH CHECK ADD CONSTRAINT FK_teaching_class_tb_teacher FOREIGN KEY(tno)REFERENCES dbo.tb_teacher (tno)ON UPDATE CASCADEON DELETE CASCADE3.3.5 建立约束(1)课程表学分约束以下USE 网上选课系统GOALTER TABLE dbo.tb_course WITH CHECK ADD CONSTRAINT CK_ccredit CHECK (ccredit=(1) AND ccredit=(0)

23、 AND grade=(17)(4)老师表成绩约束以下USE 网上选课系统GOALTER TABLE dbo.tb_teacher WITH CHECK ADD CONSTRAINT CK_tsex CHECK (tsex=女 OR tsex=男)3.3.6 存放过程建立存放过程是多条SQL集合,并要求集合中SQL全部成功实施,不然就全部不实施,有利于进行同时操作。USE 网上选课系统GOSET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGOcreate proc dbo.ProcInsertsno nchar(10),cno nchar(10),grade

24、 numeric(5,2)asinsert into tb_selecting_course(sno, cno,grade)values(sno,cno,grade)select sname,cname,gradefrom tb_selecting_course join tb_student on(tb_selecting_course.sno=tb_student.sno)join tb_course on(tb_selecting_o=tb_o)where tb_selecting_course.sno=sno3.3.7 创建触发器选课成绩更新触发器。功效:一旦对选课成绩进行更改操作,就

25、将更改前后数据统计到cs_log表中。 第四章 界面设计和实现4.1 功效模块界面登录界面学生管理员老师 系统管理 选课管理 查询管理系统管理学生管理课程管理老师管理讲课管理系统管理选课成绩管理查询管理4.2 登录界面4.3 学生管理界面以学生身份登录后,就进入学生权利模块,学生能够在系统管理里进行密码修改,选课管理里进行选课、退选课程,查询管理里进行成绩查询和个人信息查询,以下图:4.4 老师管理界面以老师身份登录后,就进入老师权利模块,老师能够在系统管理里进行密码修改,录入管理里进行录入学生成绩处理,查询管理里查询教学安排、学生成绩、个人信息。4. 5 管理员管理界面以管理员身份登录后,就

26、进入管理员权利模块,管理员能够在系统管理里进行密码修改,在学生管理里查询、添加、修改、删除学生信息,在课程管理里查询、添加、修改、删除课程信息,在老师管理里查询、添加、修改、删除老师信息,在选课管理里查询、添加、修改、删除选课信息。第五章 系统测试5.1 用户登录测试登录信息验证测试:5.2 学生管理信息测试5.2.1 密码修改5.2.2 学生选、退选课程5.2.3 个人信息、成绩查询5.3 老师管理信息测试5.3.1 选课成绩管理(查询、录入、修改和删除学生选课成绩)5.3.2 教学安排、个人信息查询5.4 管理员管理信息测试5.4.1 查询学生信息5.4.2 添加学生信息5.4.3 修改学

27、生信息5.4.4 删除学生信息第六章 总结自从开设了数据库原理和应用这门课,经过学习,我对数据库原理和使用有了一定了解,不过对于数据库实际应用并不是那么清楚明白,不过有了这次数据库课程设计,我对数据库有了新认识。“学生网上选课系统”这个课题确实给我带来了很大挑战,开始认为只是建立多个表,以后才知道数据库设计是一个系统,还存在着表和表之间联络,所以我必需要有一个宏观上认识。 在此次课程设计中,我学到了很多新知识,比如怎样使用SQL Server创建完整数据库、怎样使用java设计页面、怎样将页面合理和数据库进行连接等等。在课程设计过程当中也会碰到很多自己不能处理问题,经过自己查阅资料,向同学老师寻求帮助,最终这些问题全部处理了,我“学生网上选课系统”也愈加完整合理。同时也提升了我自学能力,在设计过程中,查阅了不少资料,包含网络资料和书籍等,让我收获了很多意想不到东西,对以后数据库学习和应用有了很大程度上提升!关键参考文件1数据库系统概论 作者:王珊 萨师煊 (第五版 高等教育出版社) 2Java应用开发和实践 作者:刘乃琦 苏畅 (人民邮电出版社)3软件工程 作者:钱乐秋 赵文耘 牛军钰 (第二版 清华大学出版社)

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 教育专区 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服