考试系统数据库设计
- 格式:doc
- 大小:331.00 KB
- 文档页数:8
考试系统数据模型设计文档目录一、项目背景 (2)二、术语和缩写词 (2)2.1 术语 (2)2.2 缩写词 (3)三、数据模型概述 (3)3.1 模型范围 (3)3.2 模型目标 (3)四、概念数据模型(CDM) (3)4.1 实体关系图(ERD) (3)4.2 实体说明 (4)五、逻辑数据模型(LDM) (5)5.1 表结构设计 (5)5.2 视图设计 (6)5.3 存储过程设计 (6)六、物理数据模型(PDM) (7)6.1 数据库选型 (7)6.2 数据库架构设计 (7)6.3 数据存储和性能优化 (7)七、数据安全设计 (8)7.1 用户和权限管理 (8)7.2 数据加密 (8)八、数据备份和恢复策略 (8)8.1 备份计划 (8)8.2 恢复策略 (8)九、数据模型验证和维护 (9)9.1 验证计划 (9)9.2 维护计划 (9)十、附录 (9)10.1 参考资料 (9)10.2 数据字典 (9)一、项目背景随着教育信息化的发展,考试的形式和方式也在不断变革。
为了满足在线考试的需求,提高考试的效率和质量,开发一款功能强大、稳定可靠的考试系统至关重要。
本数据模型设计文档旨在为考试系统的数据库设计提供详细的规划和说明。
二、术语和缩写词2.1 术语✓考生:参与考试的人员。
✓试题:考试中呈现给考生的问题。
✓试卷:一组试题的集合,用于一次考试。
✓考试:考生在规定时间内完成试卷答题的过程。
✓成绩:考生完成考试后获得的分数。
2.2 缩写词✓UID:用户标识(User Identifier)✓SID:试卷标识(Sheet Identifier)✓TID:试题标识(Test Identifier)三、数据模型概述3.1 模型范围本数据模型涵盖了考试系统中与考生信息、试题管理、试卷生成、考试安排、成绩统计等相关的功能模块。
3.2 模型目标✓支持高效的试题录入、存储和检索。
✓实现灵活的试卷生成和管理。
✓准确记录考试过程和结果。
目录1 引言 (1)1.1课程设计选题 (1)1.2课程设计的目的 (1)1.3本选题的设计背景 (1)2 系统分析与设计 (1)2.1 功能及性能分析 (1)2.1.1 功能需求 (1)2.1.2 性能需求 (2)2.1.3 数据流图 (2)2.2 系统的开发运行环境 (3)2.3 系统总体设计 (3)3 数据库设计 (4)3.1 数据库概念结构 (4)3.2 数据库逻辑结构 (5)3.2.1 关系模型及优化 (5)3.2.2 视图的设计 (5)3.3 数据库的实现 (6)3.3.1表 (6)3.3.2 安全性设计 (7)3.3.3 一致性设计 (7)3.3.4触发器的设计 (8)4 详细设计与实现 (9)4.1 登录模块 (9)4.2 考生注册模块 (9)4.3 在线考试模块 (10)4.4 后台功能模块 (13)I4.4.1试题管理模块 (13)4.4.2考生管理模块 (13)4.4.3成绩管理模块 (14)结论 (15)参考文献 (15)II1 引言1.1课程设计选题《在线考试系统》1.2课程设计的目的通过数据库系统课程设计,熟悉了SQL SERVER数据库管理系统的结构与组成;掌握了SQL SERVER数据库管理系统的应用技术和的使用;应用ASP开发工具实践了《在线考试系统》的数据库应用系统的设计方法、开发过程和SQL SERVER数据库的管理与维护。
最终达到掌握数据库管理系统的使用和开发,提高分析问题、解决问题和实践应用能力。
1.3本选题的设计背景随着计算机技术的发展和互联网时代的到来,人们已经进入了信息时代,亦或是数字化时代。
在数字化的网络环境下,学生希望得到个性化的满足,根据自己的情况进行学习,同时希望能够得到科学的评价;教育机构也希望给网上的学生提供更灵活的服务。
在线考试系统正是迎合这一需求而开发的,它旨在探索一种以互联网为基础的考试模式。
通过这种新的模式,为考生创造一种新的考试环境,提高考试工作效率和标准化水平。
甘肃科技Gansu Science and Technology第36卷第18期2020年9月Vol.36 No. 18Sep. 2020数据库原理在线考试系统核心功能研究与设计张旭东,杨鹏斐彳(兰州财经大学信息工程学院,甘肃兰州730000)摘要:数据库原理课程是信息管理类专业核心课程,学习该课程的学生人数较多,对在线考试需求比较迫切。
现有相关系统的侧重点集中在考试系统的整体设计和组卷问题上,很少提及该课程具有特殊性的知识点的考试功能设计。
文章分析数据库原理中SQL 语句、关系代数、最小函数依赖和E-R 图四种题型的特点,并详细研究和设计这四种题型的在线考试功能,将其组合到现有的考试系统中,弥补了数据库原理课程在线考试系统的缺陷。
关键词:在线考试;SQL ;关系代数;E-R 图;函数依赖中图分类号:TP3911概述数据库原理课程是信息管理类专业的核心课程,学生人数较多,对在线考试需求比较迫切。
随着 互联网技术的发展,B/S 结构的在线考试系统已经在高校的部分课稈中得到应用,如计算机基础、C 语言、数据库基础等课程,对通用考试系统的研究从未停 止g,但数据库课程内容和考核方式的不同,考试系统的研究和设计仍停留在客观题方面,主观题方面 的由于以简答和论述题目以文字的方式呈现答案, 数理类课程以字符和采用字符的逻辑推理为参考答案,计算机和信息管理类课程以图表或程序的方式呈现叫对主观题自动考试和阅卷研究和系统,目前 基本采用半自动化设定评分项、由教师在线评分的 半自动化阅卷方式叫文章以数据库原理课程的在线考试和自动阅卷为背景,研究数据库原来在线考试系统的核心功能。
以SQL 语句、E-R 图关系代数和关系规范化四类主观题型的在线考试和阅卷为核心,提出实现数据原 理课程在线考试系统的核心功能设计和实现方法。
2国内外研究现状国外大量应用了软件系统进行考试。
GerardSalton 在提出的向量空间模型用于分析简答问题中的英文文本相似度“。
考试系统数据库设计说明书四组成员:张佳明尹俏俏万超徐玉川薛亮亮黄衍樟何建辉路海川陈伟张佳明尹俏俏万超徐玉川薛亮亮黄衍樟何建辉路海川陈伟目录1 基本信息 (3)2 数据表 (4)2.1用户表 (4)2.2 班级表 (5)2.3 权限表 (5)2.4 角色表 (6)2.5 试题表 (6)2.6 答案表 (7)2.7 试题—答案关系表 (7)2.8 考试表 (8)2.9 考试—试题关系表 (8)2.10 方向表 (9)2.11 成绩表 (9)3 步骤要求 (10)1 基本信息题目:考试系统某公司为了考察实习生的实习成果,要求建立一个网上考核系统1.角色的增删改查2.增加试题,方向,班级便于管理。
3.学生考试●学生参加考试。
●考试开始后自动计时。
●学员可以主动交卷,或时间结束强制交卷。
●交卷之后计算成绩并显示。
4.成绩查询●学员以及工程师可以通过成绩记录表对自己或者全体学员进行成绩查询。
5.作好必要的注释,生成项目API文档语言和环境1 Eclipse3.2+MyEclipse5.52 SQL Server 2000数据库设计SQL Server 数据库名称:examDB数据表如下2 数据表2.1用户表系统名称学生在线考试系统完成日期版本设计者审核者2008-8-23 1.1表名users 实体名称用户表主键id估计记录数(条/月)100 估计数据量(MB/月) 1序号字段名称字段说明类型位数属性备注1 id 用户编号bigint 8 主键标识列2 usn 用户序号varchar 20 必填,非空3 uname 用户名称varchar 20 必填,非空4 usex 性别char 1必填,非空0-男1-女5 pwd 密码varchar 20 必填,非空6 cid 班级编号varchar 4 可为空外键7 pwdq 提示问题varchar 50 可为空8 pwda提示问题答案varchar 100可为空9 rid 权限smallint 2 必填,非空2.2 班级表完成日期版本设计者审核者系统名称学生在线考试系统2008-8-23 1.1表名classes 实体名称班级表主键id估计记录数(条/月)100 估计数据量(MB/月) 1序字段名称字段说明类型位数属性备注号1 id 班级编号int 4 主键标识列2 csn 班级序号varchar 20 必填,非空3 cname 班级名称varchar 20 必填,非空4 sid 方向编号tinynit 1 必填,非空外键5 cdesc 描述varchar 50 可为空2.3 权限表完成日期版本设计者审核者系统名称学生在线考试系统2008-8-23 1.1表名power 实体名称权限表主键id估计记录数(条/月)100 估计数据量(MB/月) 1序字段名称字段说明类型位数属性备注号1 id 权限编号smallint2 主键标识列2 psn 权限序号varchar 20 必填,非空3 pname 权限名称varchar 20 必填,非空4 rid 角色序号smallint 2 外键5 pdesc 角色描述char 10 可为空2.4 角色表完成日期版本设计者审核者系统名称学生在线考试系统2008-8-23 1.1表名roles 实体名称角色表主键id估计记录数(条/月)100 估计数据量(MB/月) 1序字段名称字段说明类型位数属性备注号1 id 角色编号smallint2 主键标识列2 rsn 角色序号varchar 20 必填,非空3 rname 角色名称varchar 20 必填,非空4 rdesc 角色描述varchar 50 可为空2.5 试题表完成日期版本设计者审核者系统名称学生在线考试系统2008-8-23 1.1表名test 实体名称试题表主键id估计记录数(条/月)100 估计数据量(MB/月) 1序字段名称字段说明类型位数属性备注号1 id 试题编号bigint 8 主键标识列2 usn 试题序号varchar 20 必填,非空3 tcon 试题提干varchar 300 可为空4 tsub 试题方向tinyint 1 外键2.6 答案表完成日期版本设计者审核者系统名称学生在线考试系统2008-8-23 1.1表名answers 实体名称选项表主键id估计记录数(条/月)100 估计数据量(MB/月) 1序字段名称字段说明类型位数属性备注号1 id 选项编号bigint 8 主键标识列2 asn 选项序号varchar 20 必填,非空3 acon 选项内容varchar 200 必填,非空必填,非空0-错误4 aok 选项真值tinyint 11-正确2.7 试题—答案关系表完成日期版本设计者审核者系统名称学生在线考试系统2008-8-23 1.1表名test_answers 实体名称试题—答案关系表主键tid+aid估计记录数(条/月)100 估计数据量(MB/月) 1序字段名称字段说明类型位数属性备注号1 tid 试题序号bigint 8 联合主键标识列2 aid 选项序号bigint 83 isok 选项真值tinyint 1 必填,非空2.8 考试表系统名称学生在线考试系统完成日期版本设计者审核者2008-8-23 1.1表名exam 实体名称考试表主键id估计记录数(条/月)100 估计数据量(MB/月) 1序号字段名称字段说明类型位数属性备注1 id 考试编号bigint 8 主键标识列2 esn 考试序号varchar 20 必填,非空3 etype 考试方向tinyint 1 必填,非空4 edate 考试日期Smalldate-time 4必填,非空5 edif 考试难度char 1 必填,非空2.9 考试—试题关系表系统名称学生在线考试系统完成日期版本设计者审核者2008-8-23 1.1表名exam_test 实体名称考试—试题关系表主键id估计记录数(条/月)100 估计数据量(MB/月) 1序号字段名称字段说明类型位数属性备注1 eid 考试编号bigint 8 联合主键标识列2 tid 试题编号bigint 82.10 方向表完成日期版本设计者审核者系统名称学生在线考试系统2008-8-23 1.1表名subject 实体名称方向表主键id估计记录数(条/月)100 估计数据量(MB/月) 1序字段名称字段说明类型位数属性备注号1 id 方向编号tinyintint 1 主键标识列2 ssn 方向序号varchar 20 必填,非空3 sname 方向名称varchar 20 必填,非空4 sdesc 方向描述varchar 50 可为空2.11 成绩表完成日期版本设计者审核者系统名称学生在线考试系统2008-8-23 1.1表名score 实体名称成绩表主键id估计记录数(条/月)100 估计数据量(MB/月) 1序字段名称字段说明类型位数属性备注号1 eid 用户编号bigint 8 联合主键标识列2 uid 用户序号bigint 83 sscore 用户名称float 8 必填,非空3 步骤要求1 建立数据库建立名为examDB的SQl Server数据库,名为users, classes, test, exam, answer, exam_answer, exam_test, power, roles, score, subject的数据表.数据库连接驱动采用JTDS2建立名为exam的web应用3 创建exam.jsp或exam.html。
浅析考试系统的数据库设计与实现作者:刘锦培来源:《海峡科学》2012年第10期[摘要] 数据库的应用设计在软件开发中的应用日趋广泛,它是数据库应用系统开发生命周期中的重要一环和系统开发成败的决定性一步。
该文通过“考试系统”实例,深入分析数据库设计的基本原则和相关技巧。
[关键词] 数据库设计主外键检索数据字典数据库设计是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,有效存储数据,满足用户信息要求和处理要求。
本文对数据库应用设计介绍以下几个方面内容:1 主外键的使用数据库中的主键是为了使记录能惟一标识,外键用来关联表与表之间的联系,主键和外键是把多个表组织为一个有效的关系数据库。
可以通过主键和外键来了解数据库的设计架构,因此就出现以数据库为驱动的开发方式。
开发人员根据数据库的设计和流程顺序开发程序,软件设计人员只需严格控制数据库的设计方向即可控制开发人员的开发过程。
目前多数ERP或MIS系统都是按照这种模式进行,因为系统本身的特点就是过程化的,数据库驱动方式就是一种过程化的开发方式,也是一种较为简捷快速的开发方式。
这里,通过“考试系统”中的试题管理模块来体现主外键的使用。
试题编号作为惟一标识来标识每道试题,而试题中的试题选项不该与试题放在同一张表中,而是通过另一张试题选项表来管理,此时试题选项表中的试题编号就要外键关联试题表中的试题号,试题选项表再通过试题编号和其自身的选项编号来组合起来作为主键惟一标识,详细表设计如下:Create table T_Subject(SubjectID int,Descriptions textPrimary key(SubjectID))Create table T_SubjectOption(SubjectID int,OptionID int,Descriptions textPrimary key(SubjectID,OptionID),Foreign key(SubjectID) references T_Subject(SubjectID))通过以上表设计,可以保证在试题选项表T_Subject— Option中的试题号都可以在试题表T_Subject中找到,体现了数据的相互依赖关系,同样通过这样的表结果可以看出试题表与试题选项表之间的关系。
网络在线考试系统的数据库设计作者:雷晓敏来源:《中小企业管理与科技·上旬刊》2011年第11期摘要:为了建立一个新型的、安全可靠的网络在线考试系统,数据的安全性和完整性应有较高的要求。
该文介绍了在线考试系统数据库的概念设计、物理结构设计、逻辑结构、数据库连接池技术,对于在线考试系统的数据库设计有一定的参考价值。
关键词:在线考试系统SQL Server 2000数据库连接池技术众所周知,当今社会各种领域与计算机互联网技术越来越密切相关,计算机信息技术的快速发展正在改变着世界。
随着计算机网络及网络应用软件的日益普及,现代化教育蓬勃发展,建立一个新型的、安全可靠的在线考试系统已成为可能。
1 数据库开发工具的选取由于网络在线考试系统对于数据的安全性及完整性要求比较高,并且为了增加程序的适用范围,还要保证系统可以拥有存储足够多的数据能力。
因此需要选择一种可靠、安全和易用的数据库开发工具,SQL Server 2000作为一种高性能的关系型数据库管理系统,有着较好的可靠性、安全性和易用性。
SQL server 2000是Microsoft公司在2000年推出的,它继承了SQL Server 7.0版本的优点同时又比它增加了许多更先进的功能,具有使用方便,可伸缩性好与相关软件集成程度高等优点,共有4个版本,分别是个人版,标准版,企业版和开发版。
SQL server 2000的特点:①Internet集成。
②可伸缩性和可用性。
③企业级数据库功能。
④易于安装、部署和使用。
2 数据库设计2.1 数据库概念设计2.1.1 考生档案实体考生档案实体包括编号、姓名、密码、性别、专业、班级、提示问题、问题答案、注册时间、身份证号属性。
2.1.2 教师档案实体教师档案实体包括编号、姓名、密码、性别、所属院系、注册时间、联系电话属性。
2.1.3 管理员档案实体教师档案实体包括编号、姓名、密码。
2.1.4 套题实体套题实体包括编号、套题名称、所属课程和添加时间属性。
1. 数据库管理系统(DBMS)的主要功能不包括以下哪一项?A. 数据定义B. 数据操作C. 数据分析D. 数据控制2. 关系型数据库中的“关系”指的是什么?A. 数据表之间的连接B. 数据表内部的连接C. 数据表的结构D. 数据表的行和列3. 在SQL中,用于创建数据库的命令是?A. CREATE DATABASEB. MAKE DATABASEC. NEW DATABASED. INIT DATABASE4. 以下哪个不是数据库设计的基本步骤?A. 需求分析B. 概念设计C. 物理设计D. 用户培训5. 数据库中的范式主要用于?A. 提高查询速度B. 减少数据冗余C. 增加数据安全性D. 简化数据结构6. 第三范式(3NF)要求一个表中的所有非主键字段?A. 必须依赖于主键B. 必须依赖于所有其他字段C. 必须直接依赖于主键D. 必须直接依赖于所有其他字段7. 在数据库中,事务的ACID属性不包括以下哪一项?A. 原子性B. 一致性C. 隔离性D. 持久性8. 以下哪个SQL命令用于从数据库中删除数据?A. DELETEB. REMOVEC. ERASED. DROP9. 在数据库设计中,E-R图用于表示?A. 数据流程B. 数据结构C. 实体关系D. 数据操作10. 以下哪个不是数据库索引的类型?A. 主键索引B. 唯一索引C. 全文索引D. 逻辑索引11. 数据库中的视图(View)是?A. 物理存储的数据B. 逻辑存储的数据C. 动态生成的数据D. 静态生成的数据12. 在SQL中,用于更新数据的命令是?A. UPDATEB. MODIFYC. CHANGED. ALTER13. 数据库中的存储过程(Stored Procedure)是?A. 预编译的SQL语句B. 动态生成的SQL语句C. 静态生成的SQL语句D. 临时存储的SQL语句14. 以下哪个不是数据库备份的类型?A. 完全备份B. 增量备份C. 差异备份D. 逻辑备份15. 在数据库中,用于创建表的命令是?A. CREATE TABLEB. MAKE TABLEC. NEW TABLED. INIT TABLE16. 数据库中的触发器(Trigger)是?A. 预定义的SQL语句B. 动态生成的SQL语句C. 静态生成的SQL语句D. 临时存储的SQL语句17. 以下哪个不是数据库性能优化的方法?A. 索引优化B. 查询优化C. 数据压缩D. 数据加密18. 在数据库中,用于删除表的命令是?A. DELETE TABLEB. REMOVE TABLEC. DROP TABLED. ERASE TABLE19. 数据库中的外键(Foreign Key)用于?A. 确保数据的唯一性B. 确保数据的完整性C. 确保数据的一致性D. 确保数据的安全性20. 在SQL中,用于插入数据的命令是?A. INSERTB. ADDC. PUTD. SET21. 数据库中的事务隔离级别不包括以下哪一项?A. 读未提交B. 读已提交C. 可重复读D. 可序列化22. 在数据库中,用于创建索引的命令是?A. CREATE INDEXB. MAKE INDEXC. NEW INDEXD. INIT INDEX23. 数据库中的锁机制主要用于?A. 提高查询速度B. 减少数据冗余C. 增加数据安全性D. 防止数据冲突24. 在SQL中,用于选择数据的命令是?A. SELECTB. CHOOSEC. PICKD. GET25. 数据库中的并发控制主要用于?A. 提高查询速度B. 减少数据冗余C. 增加数据安全性D. 防止数据冲突26. 在数据库中,用于创建视图的命令是?A. CREATE VIEWB. MAKE VIEWC. NEW VIEWD. INIT VIEW27. 数据库中的数据字典是?A. 存储数据的物理文件B. 存储数据的逻辑文件C. 存储数据定义的文件D. 存储数据操作的文件28. 在SQL中,用于创建存储过程的命令是?A. CREATE PROCEDUREB. MAKE PROCEDUREC. NEW PROCEDURED. INIT PROCEDURE29. 数据库中的数据仓库是?A. 存储数据的物理文件B. 存储数据的逻辑文件C. 存储历史数据的文件D. 存储实时数据的文件30. 在数据库中,用于创建触发器的命令是?A. CREATE TRIGGERB. MAKE TRIGGERC. NEW TRIGGERD. INIT TRIGGER31. 数据库中的数据挖掘是?A. 数据存储技术B. 数据查询技术C. 数据分析技术D. 数据操作技术32. 在SQL中,用于创建用户的命令是?A. CREATE USERB. MAKE USERC. NEW USERD. INIT USER33. 数据库中的数据备份是?A. 数据存储技术B. 数据查询技术C. 数据恢复技术D. 数据操作技术34. 在数据库中,用于创建角色的命令是?A. CREATE ROLEB. MAKE ROLEC. NEW ROLED. INIT ROLE35. 数据库中的数据恢复是?A. 数据存储技术B. 数据查询技术C. 数据恢复技术D. 数据操作技术36. 在SQL中,用于创建权限的命令是?A. CREATE PERMISSIONB. MAKE PERMISSIONC. NEW PERMISSIOND. INIT PERMISSION37. 数据库中的数据加密是?A. 数据存储技术B. 数据查询技术C. 数据安全技术D. 数据操作技术38. 在数据库中,用于创建约束的命令是?A. CREATE CONSTRAINTB. MAKE CONSTRAINTC. NEW CONSTRAINTD. INIT CONSTRAINT39. 数据库中的数据压缩是?A. 数据存储技术B. 数据查询技术C. 数据优化技术40. 在SQL中,用于创建序列的命令是?A. CREATE SEQUENCEB. MAKE SEQUENCEC. NEW SEQUENCED. INIT SEQUENCE41. 数据库中的数据分区是?A. 数据存储技术B. 数据查询技术C. 数据优化技术D. 数据操作技术42. 在数据库中,用于创建同义词的命令是?A. CREATE SYNONYMB. MAKE SYNONYMC. NEW SYNONYMD. INIT SYNONYM43. 数据库中的数据聚合是?A. 数据存储技术B. 数据查询技术C. 数据分析技术D. 数据操作技术44. 在SQL中,用于创建包的命令是?A. CREATE PACKAGEB. MAKE PACKAGEC. NEW PACKAGED. INIT PACKAGE45. 数据库中的数据分片是?A. 数据存储技术B. 数据查询技术C. 数据优化技术D. 数据操作技术46. 在数据库中,用于创建类型的命令是?A. CREATE TYPEB. MAKE TYPEC. NEW TYPED. INIT TYPE47. 数据库中的数据复制是?A. 数据存储技术B. 数据查询技术D. 数据操作技术48. 在SQL中,用于创建函数的命令是?A. CREATE FUNCTIONB. MAKE FUNCTIONC. NEW FUNCTIOND. INIT FUNCTION49. 数据库中的数据同步是?A. 数据存储技术B. 数据查询技术C. 数据优化技术D. 数据操作技术50. 在数据库中,用于创建表空间的命令是?A. CREATE TABLESPACEB. MAKE TABLESPACEC. NEW TABLESPACED. INIT TABLESPACE51. 数据库中的数据迁移是?A. 数据存储技术B. 数据查询技术C. 数据优化技术D. 数据操作技术52. 在SQL中,用于创建数据库链接的命令是?A. CREATE DATABASE LINKB. MAKE DATABASE LINKC. NEW DATABASE LINKD. INIT DATABASE LINK53. 数据库中的数据集成是?A. 数据存储技术B. 数据查询技术C. 数据优化技术D. 数据操作技术54. 在数据库中,用于创建物化视图的命令是?A. CREATE MATERIALIZED VIEWB. MAKE MATERIALIZED VIEWC. NEW MATERIALIZED VIEWD. INIT MATERIALIZED VIEW55. 数据库中的数据清洗是?A. 数据存储技术C. 数据优化技术D. 数据操作技术56. 在SQL中,用于创建外部表的命令是?A. CREATE EXTERNAL TABLEB. MAKE EXTERNAL TABLEC. NEW EXTERNAL TABLED. INIT EXTERNAL TABLE57. 数据库中的数据转换是?A. 数据存储技术B. 数据查询技术C. 数据优化技术D. 数据操作技术58. 在数据库中,用于创建目录的命令是?A. CREATE DIRECTORYB. MAKE DIRECTORYC. NEW DIRECTORYD. INIT DIRECTORY59. 数据库中的数据加载是?A. 数据存储技术B. 数据查询技术C. 数据优化技术D. 数据操作技术60. 在SQL中,用于创建同义词的命令是?A. CREATE SYNONYMB. MAKE SYNONYMC. NEW SYNONYMD. INIT SYNONYM61. 数据库中的数据卸载是?A. 数据存储技术B. 数据查询技术C. 数据优化技术D. 数据操作技术62. 在数据库中,用于创建表空间的命令是?A. CREATE TABLESPACEB. MAKE TABLESPACEC. NEW TABLESPACED. INIT TABLESPACE63. 数据库中的数据归档是?B. 数据查询技术C. 数据优化技术D. 数据操作技术64. 在SQL中,用于创建数据库链接的命令是?A. CREATE DATABASE LINKB. MAKE DATABASE LINKC. NEW DATABASE LINKD. INIT DATABASE LINK答案:1. C2. A3. A4. D5. B6. C7. D8. A9. C10. D11. C12. A13. A14. D15. A16. A17. D18. C19. B20. A21. D22. A23. D24. A25. D26. A27. C28. A29. C30. A31. C32. A33. C34. A35. C36. A37. C38. A39. C40. A41. C42. A43. C44. A45. C46. A47. C48. A49. C50. A51. C52. A53. C54. A55. C56. A57. C58. A59. C60. A61. C62. A63. C64. A。
北方民族大学课程设计报告系(部、中心)计算机科学与工程学院姓名于淼学号20113185专业计算机科学与技术班级(2)班同组人员尚娜、农晓蕾、杨柳课程名称网络程序设计设计题目名称在线考试系统起止日期 2013.10.10-2013.12.8 成绩________________________________指导老师签名________________________在线考试系统摘要基于Web的在线考试系统——随着计算机及网络技术的飞速发展,Internet/Intranet应用在全球范围内日益普及,当今社会正快速向信息化社会前进,信息自动化的作用也越来越大,从而使我们从繁杂的事务中解放出来,提高了我们的工作效率。
在众多的网络服务中,Web 给人耳目一新的感觉,而在这其中,JSP技术和基于Struts框架技术则因为可以进行复杂的数据库操作、很强的交互性以及方便用户控制和管理备受青睐。
目前存在各级各类的考试,而它们的各种工作主要还是依赖于手工完成,手工管理还存在这许多弊端,由于不可避免的人为因素,造成数据的遗漏、误报。
计算机信息化管理有着储存量大,速度快等许多优点,因此我们可以利用计算机网络,利用ASP技术实现动态的管理。
随着计算机网络技术的进一步发展和普及,利用JSP技术开发的各种网络在线考系统必将大行其道。
关键字:JSP技术;Struts ;在线考试系统目录:1、在线考试系统的需求分析 (4)1.1硬件,软件环境说明 (4)1.1.1硬件环境说明 (4)1.1.2软件环境说明 (4)1.1.3在线考试系统网站的技术说明 (7)1.1.3.1关于对B/S架构的理解 (7)1.1.3.2B/S架构带来的巨大好处 (8)1.2功能需求分析 (8)2、在线考试系统的总体规划与结构框图 (8)2.1在线考试系统总体设计 (8)2.2在线考试系统的总体规划设计 (8)2.2.1学生模块 (9)2.2.2管理员模块 (9)2.3在线考试系统各个模块之间的关系图及动作分解 (10)2.3.1各个子模块之间的关系和操作动作分解 (10)2.3.2管理员模块下各个子模块之间的关系及动作分解 (10)3、在线考试系统数据库设计 (11)3.1数据库的需求分析 (11)3.2在线考试系统概念结构设计 (11)3.2.1在线考试系统数据库的实体设计 (11)3.2.2在线考试系统数据库的E-R图 (12)3.3数据库的逻辑结构设计 (13)3.3.1在线考试系统数据库逻辑结构设计 (13)4、针对具体的功能模块写出设计流程图与关键的程序代码 (14)4.1在线考试系统设计流程图 (14)4.2在线考试系统管理模块设计流程图 (14)4.3在线考试系统用户登录模块设计 (15)4.4系统关键程序代码 (16)4.4.1dl.jsp源代码 (16)4.4.2zc.jsp源代码 (18)4.4.3zxks(1).jsp源代码 (23)4.4.4xgzl.jsp源代码 (26)4.4.5htdl.jsp源代码 (31)4.4.6gl_student.jsp源代码 (33)4.4.7gl_addstudent.jsp源代码 (35)4.4.8gl_lesson.jsp源代码 (40)4.4.9gl_addlesson.jsp源代码 (42)4.4.10gl_timu.jsp源代码 (46)4.4.11gl_addtimu源代码 (48)5.测试和演示系统并抓取图形界面 (53)5.1系统开发与运行环境的配置 (53)5.1.1JDK的安装与配置 (53)5.1.2Tomcat的安装与配置 (53)5.1.3Dreamweaver CS3的站点的配置 (53)5.2演示系统并抓取系统图形界面 (58)6、测试结果及存在的问题 (65)6.1测试的结果 (65)6.2存在的问题 (66)7、参考文献 (66)1.在线考试系统的需求分析1.1硬件、软件环境说明1.1.1硬件环境说明在线考试系统的硬件环境是:CPU采用的是Inter(R)Core(TM)i3-2330M CPU@2.20GHz;硬盘容量:500GB;显示器的分辨率是1366×768。
1.计算机系统知识1.1硬件知识1.1.1计算机体系结构和主要部件的基本工作原理· CPU 和存储器的组成、性能、基本工作原理·常用 I/O设备、通信设备的性能,以及基本工作原理·I/O 接口的功能、类型和特点·CISC/RISC ,流水线操作,多处理机,并行处理1.1.2存储系统·虚拟存储器基本工作原理,多级存储体系· RAID 类型和特性1.1.3安全性、可靠性与系统性能评测基础知识·诊断与容错·系统可靠性分析评价· 计算机系统性能评测方法1.2数据结构与算法1.2.1常用数据结构·数组(静态数组、动态数组)·线性表、链表(单向链表、双向链表、循环链表)·栈和队列·树(二叉树、查找树、平衡树、遍历树、堆)、图、集合的定义、存储和操作· Hash (存储位置计算、碰撞处理)1.2.2常用算法·排序算法、查找算法、数值计算、字符串处理、数据压缩算法、递归算法、图的相关算法·算法与数据结构的关系,算法效率,算法设计,算法描述(流程图、伪代码、决策表),算法的复杂性1.3软件知识1.3.1操作系统知识·操作系统的类型、特征、地位、内核(中断控制)、进程、线程概念·处理机管理(状态转换、同步与互斥、信号灯、分时轮转、抢占、死锁)·存储管理(主存保护、动态连接分配、分段、分页、虚存)·设备管理( I/O 控制、假脱机、磁盘调度)·文件管理(文件目录、文件的结构和组织、存取方法、存取控制、恢复处理、共享和安全)·作业管理(作业调度、作业控制语言( JCL )、多道程序设计)·汉字处理,多媒体处理,人机界面·网络操作系统和嵌入式操作系统基础知识·操作系统的配置1.3.2程序设计语言和语言处理程序的知识· 汇编、编译、解释系统的基础知识和基本工作原理· 程序设计语言的基本成分:数据、运算、控制和传输,程序调用的实现机制· 各类程序设计语言的主要特点和适用情况1.4计算机网络知识·网络体系结构(网络拓扑、OSI/RM、基本的网络协议)·传输介质,传输技术,传输方法,传输控制·常用网络设备和各类通信设备· Client/Server结构、Browser/Server结构、Browser /Web/Datebase结构· LAN 拓扑,存取控制,LAN 的组网, LAN 间连接,LAN-WAN连接·因特网基础知识及应用·网络软件·网络管理·网络性能分析·网络有关的法律、法规2.数据库技术2.1数据库技术基础2.1.1数据库模型精品资料·数据库系统的三级模式(概念模式、外模式、内模式),两级映像(概念模式/ 外模式、外模式/ 内模式)·数据库模型:数据模型的组成要素,概念数据模型ER 图(实体、属性、关系),逻辑数据模型(关系模型、层s 次模型、网络模型)2.1.2数据库管理系统的功能和特征·主要功能(数据库定义、数据库操作、数据库控制、事务管理、用户视图)·特征(确保数据独立性、数据库存取、同时执行过程、排它控制、故障恢复、安全性、完整性)· RDB(关系数据库), OODB (面向对象数据库),ORDB (对象关系数据库), NDB (网状数据库)·几种常用Web 数据库的特点2.1.3数据库系统体系结构· 集中式数据库系统· Client/Server数据库系统· 并行数据库系统· 分布式数据库系统· 对象关系数据库系统2.2数据操作2.2.1关系运算·关系代数运算(并、交、差、笛卡儿积、选择、投影、连接、除)·元组演算·完整性约束2.2.2关系数据库标准语言(SQL )· SQL 的功能与特点·用 SQL 进行数据定义(表、视图、索引、约束)·用 SQL 进行数据操作(数据检索、数据插入/ 删除 / 更新、触发控制)·安全性和授权·程序中的API ,嵌入 SQL2.3数据库的控制功能·数据库事务管理(ACID 属性)·数据库备份与恢复技术(UNDO 、 REDO )·并发控制2.4数据库设计基础理论2.4.1关系数据库设计·函数依赖·规范化(第一范式、第二范式、第三范式、BC 范式、第四范式、第五范式)·模式分解及分解应遵循的原则2.4.2对象关系数据库设计·嵌套关系、复杂类型,继承与引用类型·与复杂类型有关的查询· SQL 中的函数与过程·对象关系2.5数据挖掘和数据仓库基础知识·数据挖掘应用和分类·关联规则、聚类·数据仓库的成分·数据仓库的模式2.6多媒体基本知识2.6.1多媒体技术基本概念·多媒体系统基础知识·常用多媒体文件格式2.6.2多媒体压缩编码技术·多媒体压缩编码技术·统计编码·预测编码·编码的国际标准2.6.3多媒体技术应用·简单图形的绘制,图像文件的处理方法·音频和视频信息的应用·多媒体应用开发过程2.7系统性能知识·性能计算(响应时间、吞吐量、周转时间)·性能指标和性能设计·性能测试和性能评估2.8计算机应用基础知识·信息管理、数据处理、辅助设计、科学计算,人工智能等基础知识·远程通信服务及相关通信协议基础知识3.系统开发和运行维护知识3.1软件工程、软件过程改进和软件开发项目管理知识·软件工程知识·软件开发生命周期阶段目标和任务·软件开发项目基础知识(时间管理、成本管理、质量管理、人力资源管理、风险管理等)及其常用管理工具·主要的软件开发方法(生命周期法、原型法、面向对象法、 CASE )·软件开发工具与环境知识·软件质量管理基础知识·软件过程改进基础知识·软件开发过程评估、软件能力成熟度评估的基础知识3.2系统分析基础知识精品资料·系统分析的目的和任务·结构化分析方法(数据流图( DFD )和数据字典( DD ),实体关系图( ERD ),描述加工处理的结构化语言)·统一建模语言(UML )·系统规格说明书3.3系统设计知识·系统设计的目的和任务·结构化设计方法和工具(系统流程图、HIPO 图、控制流程图)·系统总体结构设计(总体布局,设计原则,模块结构设计,数据存取设计,系统配置方案)·系统详细设计(代码设计、数据库设计、用户界面设计、处理过程设计)·系统设计说明书3.4系统实施知识·系统实施的主要任务·结构化程序设计、面向对象程序设计、可视化程序设计·程序设计语言的选择、程序设计风格·系统测试的目的、类型,系统测试方法(黑盒测试、白盒测试、灰盒测试)·测试设计和管理(错误曲线、错误排除、收敛、注入故障、测试试用例设计、系统测试报告)·系统转换基础知识3.5系统运行和维护知识·系统运行管理知识·系统维护知识·系统评价知识4.安全性知识·安全性基本概念(网络安全、操作系统安全、数据库安全)·计算机病毒的防治,计算机犯罪的防范,容灾·访问控制、防闯入、安全管理措施·加密与解密机制·风险分析、风险类型、抗风险措施和内部控制5.标准化知识·标准化意识,标准化的发展,标准出台过程·国际标准、国家标准、行业标准、企业标准基本知识·代码标准、文件格式标准、安全标准软件开发规范和文档标准·标准化机构6.信息化基础知识·信息化意识·全球信息化趋势、国家信息化战略、企业信息化战略和策略·有关的法律、法规·远程教育、电子商务、电子政务等基础知识·企业信息资源管理基础知识7.计算机专业英语·掌握计算机技术的基本词汇·能正确阅读和理解计算机领域的英文资料考试科目 2 :数据库系统设计与管理1.数据库设计1.1理解系统需求说明·了解用户需求、确定系统范围·确定应用系统数据库的各种关系·现有环境与新系统环境的关系·新系统中的数据项、数据字典、数据流1.2系统开发的准备·选择开发方法,准备开发环境,制订开发计划1.3设计系统功能·选择系统机构,设计各子系统的功能和接口,设计安全性策略、需求和实现方法,制定详细的工作流和数据流1.4数据库设计1.4.1设计数据模型·概念结构设计(设计ER 模型)·逻辑结构设计(转换成DBMS所能接收的数据模型)·评审设计1.4.2物理结构设计·设计方法与内容·存取方法的选择·评审设计与性能预测1.4.3数据库实施与维护·数据加载与应用程序调试·数据库试运行·数据库运行与维护1.4.4数据库的保护·数据库的备份与恢复·数据库的安全性·数据库的完整性·数据库的并发控制1.5编写外部设计文档·编写系统说明书(系统配置图、各子系统关系图、系统流程图,系统功能说明、输入输出规格说明、数据规格说明、用户手册框架)·设计系统测试要求1.6设计评审2.数据库应用系统设计2.1设计数据库应用系统结构·信息系统的架构(如Client/Server)与DBMS·多用户数据库环境(文件服务器体系结构、Client/Server体系结构)·大规模数据库和并行计算机体系结构(SMP 、 MPP )·中间件角色和相关工具·按构件分解,确定构件功能规格以及构件之间的接口2.2设计输入输出·屏幕界面设计,设计输入输出检查方法和检查信息·数据库交互与连接(掌握 C 程序设计语言,以及Java 、Visual Basic、Visual C++、PowerBuilder、Delphi中任一种开发工具与数据库互连的方法(如何与数据库服务器沟通))2.3设计物理数据·分析事务在数据库上运行的频率和性能要求,确定逻辑数据组织方式、存储介质,设计索引结构和处理方式·将逻辑数据结构变换成物理数据结构,计算容量(空间代价),确定存取方法(时间效率)、系统配置(维护代价)并进行优化2.4设计安全体系·明确安全等级·数据库的登录方式·数据库访问·许可(对象许可、命令许可、授权许可的方法)2.5应用程序开发2.5.1应用程序开发·选择应用程序开发平台·系统实施顺序·框架开发·基础小组的程序开发·源代码控制·版本控制2.5.2模块划分(原则、方法、标准)2.5.3编写程序设计文档·模块规格说明书(功能和接口说明、程序处理逻辑的描述、输入输出数据格式的描述)·测试要求说明书(测试类型和目标,测试用例,测试方法)2.5.4程序设计评审2.6编写应用系统设计文档·系统配置说明、构件划分图、构件间的接口、构件处理说明、屏幕设计文档、报表设计文档、程序设计文档、文件设计文档、数据库设计文档2.7设计评审3.数据库应用系统实施3.1整个系统的配置与管理3.2常用数据库管理系统的应用(SQL Server、Oracle、Sybase 、 DB2 、 Access 或 Visual Foxpro)·创建数据库·创建表、创建索引、创建视图、创建约束、创建UDDT (用户自定义类型)·创建和管理触发器·建立安全体系3.3数据库应用系统安装·拟定系统安装计划(考虑费用、客户关系、雇员关系、后勤关系和风险等因素)·拟定人力资源使用计划(组织机构安排的合理性)·直接安装(安装新系统并使系统快速进入运行状态)·并行安装(新旧系统并行运行一段时间)·阶段安装(经过一系列的步骤和阶段使新系统各部分逐步投入运行)3.4数据库应用系统测试·拟定测试目标、计划、方法与步骤·数据加载,准备测试数据·指导应用程序员进行模块测试进行验收·准备系统集成测试环境测试工具·写出数据库运行测试报告3.5培训与用户支持4.数据库系统的运行和管理4.1数据库系统的运行计划·运行策略的确定·确定数据库系统报警对象和报警方式·数据库系统的管理计划(执行,故障/ 恢复,安全性,完整性,用户培训和维护)4.2数据库系统的运行和维护·新旧系统的转换·收集和分析报警数据(执行报警、故障报警、安全报警)·连续稳定的运行·数据库维护(数据库重构、安全视图的评价和验证、文档维护)·数据库系统的运行统计(收集、分析、提出改进措施)·关于运行标准和标准改进一致性的建议·数据库系统的审计4.3数据库管理·数据字典和数据仓库的管理·数据完整性维护和管理(实体完整性、参照完整性)·数据库物理结构的管理(保证数据不推迟访问)·数据库空间及碎片管理·备份和恢复(顺序、日志(审计痕迹)、检查点)·死锁管理(集中式、分布式)·并发控制(可串行性、锁机制、时间戳、优化)·数据安全性管理(加密、安全、访问控制、视图、有效性确认规则)·数据库管理员(DBA )职责4.4性能调整· SQL 语句的编码检验·表设计的评价·索引的改进·物理分配的改进·设备增强·数据库性能优化4.5用户支持·用户培训·售后服务5. SQL5.1数据库语言·数据库语言的要素·数据库语言的使用方式(交互式和嵌入式)5.2 SQL概述·SQL 语句的特征·SQL 语句的基本成分5.3数据库定义·创建数据库( Create Datebase)、创建表(Create Table )精品资料·定义数据完整性·修改表( Alter Table )、删除表( Drop Table )·定义索引( Create Index )、删除索引( Drop Index )·定义视图( Create View )、删除视图( Drop View )、更新视图5.4数据操作· Select 语句的基本机构·简单查询·SQL 中的选择、投影·字符串比较,涉及空值的比较·日期时间,布尔值,输出排序·多表查询·避免属性歧义·SQL 中的连接、并、交、差·SQL 中的元组变量·子查询5.5完整性控制与安全机制·主键( Primary Key)约束·外键( Foreign Key)约束·属性值上的约束(Null 、Check 、 Create Domain)·全局约束( Create Assertions)·权限、授权( Grant )、销权( Revoke )5.6创建触发器(Create Trigger)5.7 SQL使用方式·交互式 SQL·嵌入式 SQL·SQL 与宿主语言接口( Declare 、共享变量、游标、卷游标)·动态 SQL·API5.8 SQL标准化6.网络环境下的数据库6.1分布式数据库6.1.1分布式数据库的概念·分布式数据库的特点与目标6.1.2分布式数据库的体系结构·分布式数据库的模式结构·数据分布的策略(数据分片、分布透明性)·分布式数据库管理系统6.1.3分布式查询处理和优化6.1.4分布式事务管理·分布式数据库的恢复(故障、恢复、 2 段提交、 3 段提交)·分布式数据库的透明性(局部、分裂、复制、处理、并发、执行)6.1.5分布式数据库系统的应用6.2网络环境下数据库系统的设计与实施·数据的分布设计·负载均衡设计·数据库互连技术6.3面向Web的DBMS技术·三层体系结构·动态 Web 网页·ASP、 JSP 、 XML 的应用7.数据库的安全性7.1安全性策略的理解·数据库视图的安全性策略·数据的安全级别(最重要的、重要的、注意、选择)7.2数据库安全测量·用户访问控制(采用口令等)·程序访问控制(包含在程序中的SQL 命令限制)·表的访问控制(视图机制)精品资料·控制访问的函数和操作·外部存储数据的加密与解密8.数据库发展趋势与新技术8.1面向对象数据库(OODBMS )8.1.1 OODBMS的特征8.1.2面向对象数据模型·对象结构、对象类、继承与多重继承、对象标识、对象包含、对象嵌套8.1.3面向对象数据库语言8.1.4对象关系数据库系统(ORDBMS )·嵌套关系·复杂类型·继承、引用类型·与复杂类型有关的查询·函数与过程·面向对象与对象关系·ORDBMS 应用领域8.2企业资源计划(ERP)和数据库8.2.1 ERP概述·基本 MRP (制造资源计划)、闭环MRP 、ERP精品资料·基本原理、发展趋势· ERP 设计的总体思路(一个中心、两类业务、三条干线)8.2.2 ERP与数据库·运行数据库与ERP 数据模型之间的关系·运行数据库与ERP 数据库之间的关系8.2.3案例分析8.3决策支持系统的建立·决策支持系统的概念·数据仓库设计·数据转移技术·联机分析处理(OLAP )技术·企业决策支持解决方案·联机事务处理(OLTP )。
数据库课程设计-在线考试系统(共29页)--本页仅作为文档封面,使用时请直接删除即可----内页可以根据需求调整合适字体及大小--数据库课程设计一、课程设计题目学生在线考试系统二、开发环境选择整个系统开发完全采用Browser/Server模式,开发平台为Java平台,以Tomcat为JSP引擎和Web服务器,后台数据库使用。
在开发模式上选择Browser/Server模式,是因为B/S模式有以下优点:1.开发成本及维护成本降低。
由于B/S架构管理软件只安装在服务器端(Server)上,网络管理人员只需要管理服务器就行了,用户界面主要事务逻辑在服务器(Server)端完全通过WWW浏览器实现,极少部分事务逻辑在前端(Browser)实现,所有的客户端只有浏览器,网络管理人员只需要做硬件维护。
2.良好的安全性能,采三大框架Struts+Hibernate+Spring降低程序的耦合性。
因此系统的架构就采用了B/S设计模式。
三、数据库设计1、7张表(学生表、课程表、选课表、教师表、题库表、试卷表、新闻表)课程表:CREATE TABLE `subj` (`sj_id` int(11) NOT NULL AUTO_INCREMENT,`sj_name` varchar(15) COLLATE utf8_bin NOT NULL,`date` date NOT NULL,PRIMARY KEY (`sj_id`))学生表CREATE TABLE `student` (`s_id` int(11) NOT NULL AUTO_INCREMENT,`s_num` varchar(15) COLLATE utf8_bin NOT NULL,`s_name` varchar(10) COLLATE utf8_bin NOT NULL,`s_major` varchar(20) COLLATE utf8_bin NOT NULL,`s_class` int(11) NOT NULL,`date` date NOT NULL,PRIMARY KEY (`s_id`))学生成绩表CREATE TABLE `student_grade` (`sc_id` int(11) NOT NULL AUTO_INCREMENT,`s_id` int(11) DEFAULT NULL,`sj_id` int(11) DEFAULT NULL,`grade` int(11) NOT NULL,`sj_date` date NOT NULL,PRIMARY KEY (`sc_id`),KEY `FKDCA1CCD39B735348` (`s_id`),KEY `FKDCA1CCD36A65347` (`sj_id`),CONSTRAINT `FKDCA1CCD36A65347` FOREIGN KEY (`sj_id`) REFERENCES`subj` (`sj_id`),CONSTRAINT `FKDCA1CCD39B735348` FOREIGN KEY (`s_id`) REFERENCES`student` (`s_id`),CONSTRAINT `student_grade_ibfk_1` FOREIGN KEY (`s_id`) REFERENCES `student` (`s_id`),CONSTRAINT `student_grade_ibfk_2` FOREIGN KEY (`sj_id`) REFERENCES `subj` (`sj_id`))题库表CREATE TABLE `exam` (`exam_id` int(11) NOT NULL AUTO_INCREMENT,`exam_mg` text COLLATE utf8_bin NOT NULL,`exam_da` varchar(10) COLLATE utf8_bin NOT NULL,`exam_type` int(11) NOT NULL,`exam_grade` int(11) NOT NULL,`type_a` varchar(100) COLLATE utf8_bin DEFAULT NULL,`type_b` varchar(100) COLLATE utf8_bin DEFAULT NULL,`type_c` varchar(100) COLLATE utf8_bin DEFAULT NULL,`type_d` varchar(100) COLLATE utf8_bin DEFAULT NULL,`sj_id` int(11) DEFAULT NULL,`exam_date` date NOT NULL,PRIMARY KEY (`exam_id`),KEY `FK2FB81F6A65347` (`sj_id`),CONSTRAINT `exam_ibfk_1` FOREIGN KEY (`sj_id`) REFERENCES `subj` (`sj_id`),CONSTRAINT `FK2FB81F6A65347` FOREIGN KEY (`sj_id`) REFERENCES`subj` (`sj_id`))试卷表CREATE TABLE `epaper` (`ep_id` int(11) NOT NULL AUTO_INCREMENT,`ep_grade` int(11) NOT NULL,`ep_pw` varchar(20) COLLATE utf8_bin NOT NULL,`ep_date` int(11) NOT NULL,`ep_xnum` int(11) NOT NULL,`ep_pnum` int(11) NOT NULL,`ep_pgrade` int(11) NOT NULL,`ep_xgrade` int(11) NOT NULL,`date` date NOT NULL,`sj_id` int(11) DEFAULT NULL,`ep_type` int(11) DEFAULT NULL,PRIMARY KEY (`ep_id`),KEY `FKB2B188476A65347` (`sj_id`),CONSTRAINT `epaper_ibfk_1` FOREIGN KEY (`sj_id`) REFERENCES `subj` (`sj_id`),CONSTRAINT `FKB2B188476A65347` FOREIGN KEY (`sj_id`) REFERENCES`subj` (`sj_id`))新闻表CREATE TABLE `news` (`news_id` int(11) NOT NULL AUTO_INCREMENT,`news_mg` text COLLATE utf8_bin NOT NULL,`date` date NOT NULL,PRIMARY KEY (`news_id`))教师表CREATE TABLE `teacher` (`t_id` int(11) NOT NULL AUTO_INCREMENT,`t_name` varchar(15) COLLATE utf8_bin NOT NULL,`t_password` varchar(15) COLLATE utf8_bin NOT NULL,PRIMARY KEY (`t_id`))2、7张表(学生表、课程表、选课表、教师表、题库表、试卷表、新闻表)说明学生表课程表选课成绩表教师表题库表试卷表新闻表二、课程设计内容需求(Java EE项目)(1)、项目流程图(1)、课程设计题目学生在线考试系统、(2)、课题要求:1.学生登录验证(需要在数据库中验证)2.查询课程3.删除课程4.查询分数5.查询不及格分数(小于60为不及格)附加功能:6.老师输入一次测试题目后生成密码。
西南财经大学Southwestern University of Finance and Economics课程实验报告课程名称:数据库学生姓名:周小钰、李佳颖学院:经济信息工程学院专业:计算机科学与技术指导教师:李玉荣.2016年12月1.课程设计题目与要求1.1数据库设计题目设计和实现一个网上在线考试系统,系统应完成以下基本的业务:a.至少两个教师,每个教一门课程b.每个班至少包含十名学生。
c.教师能够修改试卷的题目并模仿一名同学参加一门考试d.教师可提取一份试卷查卷e.教师可检查其所教班级的成绩、任一学生的成绩以及查询全班的平均成绩和总成绩。
f.每一套题至少包括十道选择题g.选择题自动阅卷,书写题人工阅卷以上很粗略描述了网上考试系统的基本要求,你们可以根据实际问题的需要,补充和细化系统的要求。
本课程设计包括两个部分:数据库和用户界面(用户图形化界面基本要求就是登录加试卷内容的提取)1.2数据库设计要求a.使用java/c语言,源程序要有适当的注释,使程序易于阅读b.建议作出用户界面c.学生可自动增加新功能模块2.数据库设计过程2.1需求分析2.1.1业务范围a.增加、删除、维护学生账号,老师账号,课程信息和选课信息b.在线出题、出题过程可修改试题、答题、分数c.学生若有疑问可以由老师提出自己的答卷查卷d.统计一个班的学生的成绩情况供老师分析e.提取试题2.1.2业务流程a.进入在线考试系统b.通过输入账号密码判断身份,分别进入不同界面:(1)进入管理员界面后获取管理员身份。
管理员具有对整个系统的管理权限,可以管理所有账户,管理课程,以及对选课过程控制。
(2)进入教师界面后获取教师身份。
教师有权自出题、对题库进行管理以及对学生试卷进行查询。
进入出题模块后,教师可自主命题,命题内容分为单选题和填空题。
进入改题模块后,首先判断是否已有人做题,若已存在完成题目的记录,则执行修改题目功能;若无学生完成题目的记录,则执行修改题目和答案两项功能。
题目:考试管理系统的数据库设计说明书1. 背景介绍考试管理系统是学校、培训机构或企业等组织用来管理考试相关信息的系统。
它涉及到考试安排、考试成绩、题库管理等多个方面的内容。
在这篇文章中,我们将探讨考试管理系统的数据库设计,包括系统的需求分析、数据库表的设计、关系建立等方面。
2. 系统需求分析考试管理系统的数据库设计首先需要进行系统的需求分析。
这其中包括对系统功能的详细了解,例如考试安排、试题管理、成绩统计等。
还需要考虑到用户的需求,包括管理员、教师和学生等不同角色的需求。
在数据库设计中,需求分析非常重要,它能够决定系统的功能和性能。
3. 数据库表的设计基于对系统需求的分析,我们需要设计数据库的表结构。
这包括考试安排表、试题信息表、成绩统计表等。
每个表需要包括哪些字段,字段的数据类型和长度是多少,以及字段之间的关系等都需要进行详细的设计。
为了提高系统的效率,还需要考虑到索引的设计和表的规范化处理。
4. 关系的建立在数据库设计中,关系的建立是非常重要的一环。
这涉及到表与表之间的关联,包括一对一关系、一对多关系和多对多关系等。
在考试管理系统中,不同的信息之间存在着复杂的关系,我们需要设计好表之间的关系,以确保数据的完整性和一致性。
5. 系统的安全性在考试管理系统的数据库设计中,系统的安全性也是需要重点考虑的问题。
这包括对用户权限的管理、数据的加密和备份等内容。
只有设计好数据库的安全机制,才能够保护系统不受到非法入侵和数据泄露的威胁。
6. 个人观点和理解在设计考试管理系统的数据库时,我认为需要充分考虑到系统的实际需求和用户的使用习惯,确保系统能够方便、高效地运行。
数据库设计不仅仅是一种技术活动,更是对系统整体架构的思考,需要考虑到系统的可扩展性和稳定性。
7. 总结考试管理系统的数据库设计是一个复杂而又精细的工作。
它需要结合实际需求,通过需求分析、表设计、关系建立和安全性保障等环节,才能够设计出一套高效、安全的数据库系统。
数据库设计与实现考试(答案见尾页)一、选择题1. 数据库系统的基本概念是什么?A. 数据库系统是由数据库、数据库管理系统、应用程序和用户组成的B. 数据库系统是由数据库、数据库管理系统、数据库管理员、硬件平台和软件平台组成的C. 数据库系统是由数据库、数据库管理系统、数据库管理员、硬件平台和数据模型组成的D. 数据库系统是由数据库、数据库管理系统、数据库管理员、硬件平台和数据库语言组成的2. 关系数据库中的关系模式至少包含什么?A. 主键B. 外键C. 候选键D. 主键和外键3. 数据库设计通常遵循哪个阶段进行?A. 需求分析阶段B. 概念设计阶段C. 逻辑设计阶段D. 物理设计阶段4. 在关系数据库中,哪一个操作属于数据完整性约束?A. 设置默认值B. 设置唯一约束C. 设置检查约束D. 设置外键约束5. 数据库管理系统的主要功能是什么?A. 数据定义B. 数据查询C. 数据更新D. 数据控制6. 在数据库设计中,哪一个术语用来描述数据的逻辑结构?A. 实体-联系图B. 数据字典C. 结构图D. 模式7. 关系数据库中的关系模型是什么?A. 二维表格模型B. 树形模型C. 图形模型D. 波浪模型8. 数据库系统中,哪一个角色负责管理数据库中的数据?A. 数据库管理员(DBA)B. 系统分析师C. 应用程序员D. 数据库开发者9. 在数据库设计中,哪一个步骤用来构建物理数据库结构?A. 概念设计阶段B. 逻辑设计阶段C. 物理设计阶段D. 实施阶段10. 数据库管理系统中,哪一个命令可以用来创建一个新的数据库?A. CREATE DATABASEB. CREATE TABLEC. ALTER DATABASED. DROP DATABASE11. 数据库设计通常遵循哪个阶段?A. 需求分析阶段B. 概念设计阶段C. 设计阶段D. 实现阶段12. 在关系数据库中,哪一个操作属于数据查询操作?A. 插入B. 更新C. 删除D. 查询13. 关系数据库中的规范化理论是为了防止哪种类型的数据冗余?A. 非主属性对主键的部分依赖B. 非主属性对主键的完全依赖C. 非主属性对候选键的部分依赖D. 非主属性对候选键的完全依赖14. 在数据库系统中,哪一个概念用来描述数据的一致性?A. 数据完整性B. 数据安全性C. 数据独立性D. 数据及时性15. 在关系数据库中,哪一个操作属于数据更新操作?A. 插入B. 更新C. 删除D. 查询16. 数据库设计通常遵循哪个步骤?A. 需求分析阶段B. 概念设计阶段C. 设计阶段D. 实现阶段17. 关系数据库中的关系必须满足什么条件?A. 列序无关B. 行序无关C. 列序有关D. 行序有关18. 在关系数据库中,如何唯一标识表中的一条记录?A. 主键B. 外键C. 候选键D. 全键19. 什么是数据库的三级模式结构?它包括哪三个层次?A. 外模式、模式、内模式B. 存储模式、概念模式、内模式C. 外模式、内模式、用户模式D. 存储模式、模式、外部模式20. 数据库的二级映像功能是什么意思?A. 保证了数据库的逻辑独立性B. 保证了数据库的物理独立性C. 既保证了逻辑独立性,又保证了物理独立性D. 既没有保证逻辑独立性,也没有保证物理独立性21. 什么是数据库的正常启动和正常关闭?A. 正常启动是指数据库启动后,正在进行热备份B. 正常关闭是指数据库关闭前,正在进行数据迁移C. 正常启动是指数据库启动后,正在进行数据迁移D. 正常关闭是指数据库关闭前,正在进行热备份22. 在数据库设计中,如何优化查询性能?A. 使用索引B. 使用全文搜索C. 减少使用子查询D. 尽量避免使用JOIN操作23. 什么是数据库的隔离级别?它如何影响并发访问?A. 隔离级别是指数据库中可以同时容纳的并发事务的数量B. 隔离级别越高,并发访问性能越好C. 隔离级别越低,并发访问性能越好D. 隔离级别与并发访问性能无关24. 什么是数据库的备份和恢复?A. 备份是指将数据库中的数据复制到另一个存储设备的过程B. 恢复是指将备份的数据从另一个存储设备恢复到数据库中的过程C. 备份可以减少数据丢失的风险D. 恢复可以完全恢复数据库中的所有数据25. 什么是数据库的安全性?如何实现数据库的安全性?A. 安全性是指数据库中数据的保密性和完整性B. 可以通过加密、访问控制等方式实现数据库的安全性C. 安全性可以防止未经授权的访问和修改D. 安全性只能通过加密来实现26. 什么是数据库事务?A. 数据库事务是一个独立的逻辑工作单元,它是数据库应用程序中一系列操作的集合。
4.2 数据库设计
4.2.1 概念结构设计
本系统的E-R图如图4-2所示。
图4-2 E-R 图
4.2.2 逻辑结构设计
课程表设置如表4-1所示
表4-1 课程表
列名数据类型长度是否为空注释
ID int 8 no 课程编号
name varchar 50 no 课程名称
填空题表设置如表4-2所示
表4-2 填空题
列名数据类型长度是否为空注释
id int 4 no 编号CourseID int 8 no 课程编号FrontTitle varchar 500 no 前半部分题目BackTitle varchar 500 no 后半部分题目Answer varchar 200 no 答案
判断题表设置如表4-3所示
表4-3 判断题表
列名数据类型长度是否为空注释id int 4 no 编号CourseID int 8 no 课程编号Title varchar 1000 no 题目Answer bit 1 no 答案
多选题表设置如表4-4所示
表4-4 多选题表
列名数据类型长度是否为空注释id int 4 no 编号CourseID int 8 no 课程编号Title varchar 1000 no 题目AnswerA varchar 500 no 答案A AnswerB varchar 500 no 答案B AnswerC varchar 500 no 答案C AnswerD varchar 500 no 答案D Answer varchar 50 no 答案
试卷表设置如表4-5所示
表4-5 试卷表
列名数据类型长度是否为空注释
PaperID int 8 no 试卷编号CourseID int 8 no 课程编号PaperName varchar 200 no 试卷题目PaperState bit 1 no 试卷状态
试卷明细表设置如表4-6所示
表4-6 试卷明细表
列名数据类型长度是否为空注释ID int 8 no 编号PaperID int 8 no 试卷编号Type varchar 10 no 试题类型TitleID int 8 yes 题目编号Mark int 8 yes 分值
考生成绩表设置如表4-7所示
表4-7 考生成绩表
列名数据类型长度是否为空注释ID int 8 no 编号UserID varchar 20 no 用户账号PaperID int 8 yes 试卷编号Score int 8 yes 分数ExamTime DateTime no 考试时间
简答题表设置如表4-8所示
表4-8 简答题表
列名数据类型长度是否为空注释ID int 8 no 编号CourseID int 8 no 课程编号Title varchar 1000 yes 题目
Answer nText yes 答案
单选题表设置如表4-9所示
表4-9 单选题表
列名数据类型长度是否为空注释ID int 8 no 编号CourseID int 8 no 课程编号Title varchar 1000 no 题目AnswerA varchar 500 no 答案A AnswerB varchar 500 no 答案B AnswerC varchar 500 no 答案C AnswerD varchar 500 no 答案D Answer varchar 50 no 答案
时间表设置如表4-10所示
表4-10 时间表
列名数据类型长度是否为空注释ID int 8 no 编号PaperID int 8 no 试卷编号TimeLong varchar 50 no 时长
用户表设置如表4-11所示
表4-11 用户信息表
列名数据类型长度是否为空注释UserID varchar 50 no 用户帐号UserName varchar 50 no 用户名称UserPwd varchar 255 no 用户密码UserPower int 8 no 用户权限
4.2.3 物理结构设计
给出本系统内所使用的每个数据结构中的每个数据项的存储要求,访问方法、存取单位、存取的物理关系(索引、设备、存储区域)、设计考虑和保密条件。
对应逻辑设计的数据库名MyOnLineExam,设计数据库的物理文件及相关属性如下。
1.主数据文件:MyOnLineExam.mdf
初始空间:1MB,若超出空间按10%自动增长。
存放路径:C:\Program Files\Apache Software Foundation\Tomcat 5.5\webapps\online exam system\database\。
最大文件大小:不受限。
2.日志文件:MyOnLineExam myuser_log.ldf
初始空间:1MB,若超出空间按10%自动增长。
存放路径:C:\Program Files\Apache Software Foundation\Tomcat 5.5\webapps\online exam system\database\。
最大文件大小:不受限。
下面是对数据库中所有表,包括课程表、填空题表、判断题表、多选题表、试卷表、试卷明细表、考生成绩表、简答题表、单选题表、时间表、用户表的元组值的部分拷贝,部分图如图所示。
课程表元组值的部分拷贝如表4-3所示
图4-3 课程表
填空题表元组值的部分拷贝如表4-4所示
图4-4 填空题
判断题表元组值的部分拷贝如表4-5所示
图4-5 判断题
单选题元组值的部分拷贝如表4-6所示
图4-6 单选题
简答题元组值的部分拷贝如表4-7所示
图4-7 简答题
考试成绩元组值的部分拷贝如表4-8所示
图4-8 考试成绩
用户信息元组值的部分拷贝如表4-9所示图4-9 用户信息。