



全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
学生在线考试系统1.需求说明要实现一个简化的在线考试系统,在此在线考试系统中涉及学生,教师的管理,此系统要求能够记录学生的考试情况,老师的审查情况以及学生的考试成绩。该系统的业务要求为:1. 教师可以对考题进行查询、录入、修改与删除。2.考试时间限制在20分钟内。3.选择时可以在点击“下一题”按钮前改动。4.对于学生考试选择科目和成绩进行存储。 5.考试科目分为:数据库设计和网络编程。学生基本信息:姓名、密码。 教师基本信息:姓名、密码。 学生考试成绩报表:每个学生考试结束时以姓名为单位生成一份该学生的考试成绩,内容包括:姓名、考试成绩。 2数据库结构设计2.1概念结构实际设计概念结构设计是根据需求分析的结果产生概念结构设计的E-R模型。由于这个系统比较简单,因此这里采用自顶向下的设计方法。自顶向下设计的关键是首先要确定系统的核心活动。 所谓核心活动就是系统中的其他活动都要围绕这个活动展开或与此活中密切相关。确定了核心 活动之后,系统就有了可扩展的余地。对于这个在线考试系统,其核心活动是科目,学生与科目之间是通过学生选挥发生联系的,教师与课程之间是通过教师授课发生联系的。至此,此系统包含的实体有:课程:用于描述课程的基本信息,用课程号标识。 学生:用于描述学生的基本信息,由学号标识。 教师:用于描述教师的基本信息,由教师号标识。 由于一名学生可以选修多门课程,并且一门课程可以被多个学生选修。因此,学生和课程之间是多对多的联系。又由于一门课程可由多名教师讲授,而且一名教师可以讲授多门课 程,因此,教师和课程之间也是多对多联系。 学生选择科目成绩考试其基本E-R模型如图l所示: 录入教师如果实体的属性比较多,在构建E-R模型时不一定要把所有的属性都标识在E-R模型上,可以另外用文字说明,这样也使得E-R模型简明清晰,便于分析。 根据需求分析的结果,该E-R模型中各实体所包含的属性如下: 学生:姓名,密码。教师:教师名,密码。 各联系本身应具有的属性为: 选择:学生,考试,成绩。其中考试时间为20分钟。 2.2 逻辑结构设计 2.2.1 设计关系模式 有了基本的E-R模型之后,下一步就可以进行逻辑结构设计了,也就是设计基本的关系模式。设计关系模式主要是从E-R模型出发,将其直接转换为关系模式。根据第8章数据库设计介绍的转换规则,这个E-R模型转换出的关系模式如下,其中主码用下划线标识:学生(姓名,密码) 课程(课程名,题目,选项) 教师(教师名,密码) (1)确定各关系模式是否是第三范式的 在将E-R图转换为关系之后,首先要分析各关系模式是否符合第三范式的要求,如果不符合,则需要将这些关系模式分解为符合第三范式要求的。 经过分析发现,“学生”,“课程”,“教师”3个关系模式中,都不存在部分依赖 和传递依赖关系.因此都属于第三范式。 (2)确定信息的完整性确定好关系模式的结构后,接下来需要分析一下这些关系模式是否满足生成报表的信息需求。 该教学管理系统要产生:学生选课情况、学生选课成绩、学生累计修课总学分3个报表,分别分析如下: “学生选课情况报表”,内容包括:姓名、课程名。其中的姓名可由“学生”关系摸式得到,课程名可由课程关系模式得到, 因此可以满足学生选课情况表报表的要求。 “学生考试成绩报表”,内容包括:姓名、课程名、考试成绩,这些信息 可从学生.、课程和“成绩 3个关系模式得到。 “学生累计修课总学分报表”,内容包括:姓名、总学分。其中姓名可从“学生”关系模式得到,而总学分信息在所有关系模式中都 没有,但这个信息可以跟据学生选的课程,从课程关系模式中的学分累计得到。 因此,所设计的关系模式插足所有报表的信息要求。至此,关系模式设计完毕。 下面给出创建这些关系表的SQL语句示例,其中的数据类型可根据实际情况调整,为方便 理解,表名、列名均用中文表示。CREATE TABLE 学生表(姓名char(8) PRIMARY KEY, 性别char(2) CHECK (性别IN (男,女) ,所在系char (20), 专业char (20), 班号char(6) )CREATE TABLE课程表( 课程号char(8) PRIMARY KEY, 课程名varchar(30) NOT NULL, 学分tinyint CHECK(学分BETWEEN 1 AND 8) )CREATE TABLE教师表(教师号char(10) PRIMARY KEY, 教师名char(8) NOT NULL )CREATE TABLE选课表(学号char(8) NOT NULL, 课程号char(8) NOT NULL, PRIMARY KEY(学号,课程号) , FOREIGN KEY (学号) REFERENCES学生表(学号) , FORE工GN KEY(课程号) REFERENCES课程表(课程号) )CREATE TABLE成绩表(学号char(8) NOT NULL, 课程号char(8) NOT NULL, 考试成绩t工nyint CHECK(考试成绩BETWEEN 0 AND 100), PRIMARY KEY(学号,课程号,考试次数) , FOREIGN KEY(学号) REFERENCES学生表(学号) , FORE工GN KEY(课程号) REFERENCES课程表(课程号) )2.2.2 设计外模式在数据库应用系统中,用户需要产生大量的报表,而报表的内容均来自数据库中的关系模式。我们可以将报表看成是满足不同用户需求的外模式,而且在实际实现过程中,报表也常常 用外模式来定义。在设计关系模式阶段我们已经确定了教学管理系统所包含的全部关系模式的 结构,并且这些关系模式能够满足生成报表的需求。因此在设计外模式阶段,我们具体确定生 成各报表的方法。 (1)学生选课情况报表 由于要求每个学期开学初以班为单位生成一份该学年和学期某班学生的选课情况表,因此,用定义视图的方法就不太合适。因为视图没有设置参数的功能,而该报表的内容是某个指定学年 和学期的,是动态条件的查询,而视图本身并不支持动态条件的查询。因此,我们将该报表直接 用查询语句的形式生成,将动态查询条件作为查询语句中的数据筛选条件。 例如,假设要为1201001班生成2010学年第l学期学生选课情况报表,则语句如下: SELECT班号,学生表.学号,姓名,课程名 FROM学生表JOIN选课表ON学生表.学号=选课表.学号JOIN课程表ON课程表.课程号=选课表.课程号 WHERE班号= J201001 AND选i果学期=冒2010 AND选课学期= 1 (2)学生考试成绩报表 该报表要求每个学期结束时以班为单位生成,并且是生成指定学年和学期中指定班学生的考试成绩表,因此,同学生选课情况报表一样也不适合用视图来定义。也应该直接用查询语句 来生成。 例如,假设要为1201001班学生生成2010学年第1学期考试成绩报表,则语句如下: SELECT班号,学生表.学号,姓名,课程名,考试成绩 FROM学生表JOIN考试表ON学生表.学号=考试表.学号JOIN课程表ON课程表.课程号=考试表.课程号 JOIN选课表ON课程表.课程号=选课表.课程号 WHERE班号二J201001 AND选课学期= 2010 AND选课学期= 1 (3)学生累计修课总学分报表 该报表是为全体学生生成的,而且是统计每个学生全部课程的累计总学分,没有动态查询条件,因此可以将该报表用视图形式实现。 由于该报表的总学分需要根据每个学生的学号累计得到,因此需要用到分组子句,若 将查询语句写为: 3.数据库行为设计 对于数据库应用系统来说,最常用的功能是安全控制功能,数据的增、删、改、查功能以及生成报表的功能。本系统也应包含这些基本的操作。 在实现时,可将每一类用户定义为一个角色,这样在授权时只需对角色授权,而无需对每个具体的用户授权。 3.2数据操作功能 数据操作功能包括对这些数据的录入、删除、修改功能。具体如下: (1)数据录入 只有具有相应权限的用户才能录入相应表中的数据。(2)数据删除 数据的删除。只有具有相应权限的用户才能删除相应表中的数据。数据 的删除要注意表之间的关联关系,比如当某个学生未交卷时,在删除题目中的数据之前,应先删除该学生在选课表和考试表中的信息,然后再在学生表中删除该学生,以保证 不违反参照完整性约束。另外,在实际执行删除操作之前应该提醒用户是否真的要删除数据,以免发生误操作。(3)数据修改 当某些数据发生变化或某些数据录入不正确时,应该允许用户对数据库中的数据进行修 改。修改数据的操作一般是先根据定的条件查询出要修改的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 魔法师动漫课件观看
- 高龄孕妇课件
- 济宁市2024-2025学年九年级下学期语文期末测试试卷
- 高速换护栏安全知识培训课件
- 高职生国防教育配套课件
- 电脑知识培训记录课件
- 电脑知识培训学堂心得课件
- 计算机信息系统集成服务合同
- 第1课《消息二则》课件-2025-2026学年统编版(2024)语文八年级上册
- 电缆安全小知识培训内容课件
- 北师大版五年级下册数学口算题题库1200道带答案可打印
- 托管老师岗前培训
- 新苏教版六年级上册《科学》全一册全部课件(含19课时)
- 护理品管圈QCC之提高手术物品清点规范执行率
- 二年级上册生命.生态.安全 全册教案
- 高尔夫基础培训ppt课件
- 有机化学第五章 脂环烃
- 微型钢管桩专项施工方案
- 铁路货物装载加固规则
- 机械加工的常用基础英语名词术语翻译对照大全
- Would-you-mind和Do-you-mind讲解学习
评论
0/150
提交评论