sql--网络选课系统实验报告

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

课程设计课程名称计算机网络与数据库(二)题目网上选课系统专业班级学号姓名成绩指导教师2017年6月12日至2017年6月16日课程设计任务书设计题目:网上选课系统设计目的本课程的设计的目的是通过实践使同学们经历数据库设计、应用系统开发的全过程和受到一次综合训练,以便能较全面地理解、掌握和综合运用所学的知识。结合具体的开发案例,理解并初步掌握系统分析、系统设计、系统实施的主要环节和步骤以及软件文档的制作能力。设计任务(在规定的时间内完成下列任务)1、系统主要功能网上选课系统实现了学生在网上就可完成选课的全过程。其功能如下:◆学生登陆验证密码功能为了避免在选课时出现乱选、错选情况,该系统在设计时考虑对学生身份的合法性进行验证,保证合法用户才能选课。◆查看可供选择的课程,及上该课程教师的情况学生能在网上查看课程的情况,如课程的介绍、课程有那些教师上,上课的时间、上课的地点。◆选择某门课程◆学生可查看当前自己已选课程、如果对某门课程不满意,可注销该课程◆研究生处可以查看当前某门课,某教师有那些学生选,并能打印。◆能打印学生自己的选课清单时间安排消化资料、系统调查1天系统分析、总体设计,实施计划、撰写报告3天演示、验收1天具体要求1、明确课程设计的目的和重要性,认真领会课程设计的题目,读懂课程设计指导书的要求,学会设计的基本方法与步骤,学会如何运用前修知识与收集、归纳相关资料解决具体问题的方法。严格要求自己,要独立思考,按时、独立完成课程设计任务。2、设计报告:要求层次清楚、整洁规范、不得相互抄袭,凡正文内容有整段完全相同者一律以抄袭论处。设计报告正文字数不少于0.2万字(不包括附录)指导教师签名:2017年2月19日教研室主任(或责任教师)签名:年月日课程设计报告书11..概概述述1.1课题简介随着无纸化办公的一步步实现,信息的自动处理以及网络式的信息交互方式越来越被人们认可和应用。网上选课与传统的选课方式相比更加节约资源,同时,随着学生选课自主权的增加,使教学更加透明。如果仍然通过传统的纸上选课方式选课,既浪费大量人力物力,有浪费时间。同时在人为的统计过程中会不可避免的出现错误,因此,通过借助网络系统,让学生只要在电脑中输入自己的个人选课信息来替代有纸化的手工操作成为高效管理的必然趋势。该系统能够为学生提供方便的选课功能,也能够提高高校对学生和教学管理的效率。1.2设计目的应用对数据库系统原理的理论学习,通过上机实践的方式将理论知识与实践更好的结合起来,巩固所学知识。数据库应用课程实践:实践和巩固在课堂教学中学习有关知识,熟练掌握对于给定结构的数据库的创建、基本操作、程序系统的建立和调试以及系统评价。数据库原理软件设计实践:实践和巩固在课堂教学中学习的关于关系数据库原理的有关知识和数据库系统的建立方法,熟练掌握对于给定实际问题,为了建立一个关系数据库信息管理系统,必须得经过系统调研、需求分析、概念设计、逻辑设计、物理设计、系统调试、维护以及系统评价的一般过程,为毕业设计打下基础。1.3设计内容运用基于E-R模型的数据库设计方法和关系规范化理论做指导完成从系统的分析到设计直至系统的最终实现,开发网上选课系统,完成网上选课管理系统的全部功能。首先做好需求分析,并完成数据流图和数据字典。其次做概念分析,利用实体联系的方法将需求分析的用户需求抽象为信息结构,得到E-R图。然后就是逻辑结构设计,将E-R图转换为计算机系统所支持的逻辑模型22..需需求求分分析析2.1功能分析首先,建立一些基本表(尽可能满足3N),对大部分基本信息组合、存储;其次通过建立视图实现对冗余数据的有必要保留(查询并计算基本表属性得到新的作为视图属性)并实现对以下基本信息的显示。系表:系编号、系名专业表:专业编号、专业名称、系编号学生表:学号、姓名、口令、性别、专业编号教师表:教师编号、教师姓名、系编号、职称课程表:课程编号、课程名称、课程简介选课表:学号、教师编号、课程编号讲课表:课程编号、教师编号、上课地点、上课时间在此基础上进行以下目标查询,由于有些查询常用且较复杂,为了简化其应用,所以将它们定义为存储过程。查询课程表中的课程名称(普通查询)查询某名同学选修的课程(普通查询)根据需要建立触发器、存储过程、索引,实现对数据库的优化。最后,进行过程功能的验证。允许具有权限者对数据库进行数据更新和查询等合法操作。2.2数据流图用流程图来描述处理过程与数据的关系数据流图如下:学生记录注销退出选课记录课程教师记录选课记录显示课程及教师的信息选课注销选课信息打印已选课程信息学生学生验证身份查看已选课程信息选课记录33..概概念念结结构构设设计计3.1概念结构设计的方法概念结构设计就是从现实概念中抽象出概念模型,即对信息世界建模,所以概念模型应该能方便、准确的表示信息世界中的常用概念。概念模型的表示方法最著名的是实体—联系方法,在该方法中实体型用矩形表示,矩形框内写明实体名;属性用椭圆表示,并用无向边将其与相应的实体连接起来;联系用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体型连接起来,同时在无向边旁表上联系的类型(1:1,1:n或n:m)。3.2概念结构设计的步骤第一步:抽象数据;第二步:设计局部E-R图;第三步:把各分E-R图综合成总体E-R图,消除各种冲突;第四步:对总体E-R图进行优化,消除冗余数据和冗余联系;(1)抽象数据实体:系、专业、教师、学生、课程、选课、讲课联系:在不同院系的不同专业的学生选择课程,老师教学生课程的关系。院系与专业的关系是一对多的关系;专业与学生的关系是一对多的关系;教师与学生的关系是多对多的关系。属性:系的属性:系编号、系名(主码为系编号)专业的属性:专业编号、专业名称、系编号(主码为专业编号)学生的属性:学号、姓名、口令、性别、专业编号(主码为学号)教师的属性:教师编号、教师姓名、系编号、职称(主码为教师编号)课程的属性:课程编号、课程名称、课程简介(主码为课程编号)选课的属性:学号、教师编号、课程编号(主码为学号、教师编号、课程编号)讲课的属性:课程编号、教师编号、上课地点、上课时间(主码为课程编号、教师编号)(2)局部E-R图图2-1系E-R图系系编号系名图2-2专业E-R图图2-3学生E-R图图2-4教师E-R图图2-5课程E-R图专业专业编号专业名称系编号学生学号姓名密码专业编号性别教师教师编号教师姓名系编号职称课程表课程编号课程名称课程简介图2-6选课E-R图图2-7讲课E-R图(3)总E-R图图2-8总E-R图选课学号教师编号课程编号讲课课程编号教师编号上课时间上课地点选择系系编号系名专业学生教师课程包含有讲授有专业编号专业名学号姓名性别口令教师编号姓名职称课程号课程名简介时间地点44..逻逻辑辑设设计计阶阶段段逻辑设计阶段:将系统E-R模型转换为关系模式,并对给出的关系模式进行关系规范化处理(尽量满足3NF),得到系统全部的关系模式,并标明主键、外键。设置每一数据表的属性名,类型,宽度。4.1将E-R模式转换为以下关系模式:(1)系:系编号、系名(主键为系编号)(2)专业:专业编号、专业名称、系编号(主键为专业编号,外键为系编号)(3)学生:学号、姓名、口令、性别、专业编号(主键为学号,外键为专业编号)(4)教师:教师编号、教师姓名、系编号、职称(主键为教师编号,外键为系编号)(5)课程:课程编号、课程名称、课程简介(主键为课程编号)(6)选课:学号、教师编号、课程编号(主键为学号、教师编号、课程编号)(7)讲课:课程编号、教师编号、上课地点、上课时间(主键为课程编号、教师编号)发现这七个关系模式3N都满足。因为元组中都是不可分割的数据,且所有非主属性完全依赖其主码,且它的任何一个非主属性都不传递于任何主关键字。55..物物理理设设计计阶阶段段物理设计阶段:为一个逻辑数据模型选取一个最适合应用环境的物理结构(存储结构与存取方法),数据库的物理设计通常分为两步:A、确定数据库的物理结构;B、对物理结构进行时间和空间效率评价。下面列出选课系统所有表的结构和索引,为了便于理解,将部分数据列出。(1)系表包括系编号、系名,设主键为系编号。其属性如表5-1所示CREATETABLE[dbo].[系表]([系编号][char](2)NOTNULL,[系名][char](20)NOTNULL,CONSTRAINT[PK_系表]PRIMARYKEYCLUSTERED([系编号]ASC)WITH(PAD_INDEX=OFF,STATISTICS_NORECOMPUTE=OFF,IGNORE_DUP_KEY=OFF,ALLOW_ROW_LOCKS=ON,ALLOW_PAGE_LOCKS=ON)ON[PRIMARY])ON[PRIMARY]表5-1系表(2)专业表包括专业编号、专业名称、系编号,主键为专业编号,外键为系编号。其属性如表5-2所示CREATETABLE[dbo].[专业表]([专业编号][char](2)NOTNULL,[专业名称][char](20)NOTNULL,[系编号][char](2)NOTNULL,CONSTRAINT[PK_专业表]PRIMARYKEYCLUSTERED([专业编号]ASC)WITH(PAD_INDEX=OFF,STATISTICS_NORECOMPUTE=OFF,IGNORE_DUP_KEY=OFF,ALLOW_ROW_LOCKS=ON,ALLOW_PAGE_LOCKS=ON)ON[PRIMARY])ON[PRIMARY]表5-2专业表(3)学生表包括学号、姓名、口令、性别、专业编号,主键为学号,外键为专业编号。其属性如表5-3所示CREATETABLE[dbo].[学生表]([学号][char](10)NOTNULL,[姓名][char](20)NOTNULL,[口令][char](8)NOTNULL,[性别][char](10)NOTNULL,[专业编号][char](2)NOTNULL,CONSTRAINT[PK_学生表]PRIMARYKEYCLUSTERED([学号]ASC)WITH(PAD_INDEX=OFF,STATISTICS_NORECOMPUTE=OFF,IGNORE_DUP_KEY=OFF,ALLOW_ROW_LOCKS=ON,ALLOW_PAGE_LOCKS=ON)ON[PRIMARY])ON[PRIMARY]表5-3学生表(4)教师表包括教师编号、教师姓名、系编号、职称,主键为教师编号,外键为系编号。其属性如表5-4所示CREATETABLE[dbo].[教师表]([教师编号][char](5)NOTNULL,[教师姓名][char](5)NOTNULL,[系编号][char](2)NOTNULL,[职称][char](6)NOTNULL,CONSTRAINT[PK_教师表]PRIMARYKEYCLUSTERED([教师编号]ASC)WITH(PAD_INDEX=OFF,STATISTICS_NORECOMPUTE=OFF,IGNORE_DUP_KEY=OFF,ALLOW_ROW_LOCKS=ON,ALLOW_PAGE_LOCKS=ON)ON[PRIMARY])ON[PRIMARY]表5-4教师表(5)课程包括课程编号、课程名称、课程简介,设主键为课程编号。其属性如表5-5所示。CREATETABLE[dbo].[课程表]([课程编号][char](8)NOTNULL,[课程名称][char](20)NOTNULL,[课程简介][char](100)NULL)ON[PRIMARY]表5-5课程表(6)选课表包括学号、教师编号、课程编号,设主键为学号、教师编号、课程编号。其属性如表5-6所示。CREATETABLE[dbo].[选课表]([学号][char](10)NOTNULL,[教师编号][char](8)NOTNULL,[课程编号][char](8)NOTNULL)ON[PRIMARY]表5-6课程表(7)讲课表包括课程编号、教师编号、上课地点、上

1 / 18
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功