1、 山东建筑大学计算机科学与技术学院 课程设计说明书 题 目: 在线考试系统的设计---------系统及试题管理 课 程: 数据库原理及应用课程设计 院 (部): 计算机科学与技术学院 专 业: 班 级: 学生姓名: 学 号: 指导教师: 完成日期: 2016年1月5日 山东建筑大学计算机科学与技术学院 课程设计任务书 设计题目 在线考试系统设计与实现-------系统、试题管理 已知技术参数和设计要求 为了方便计算机判卷,在线
2、考试系统中的试题采用客观题形式,包括选择题、填空题和判断题三种题型。系统主要实现以下模块: (1)系统管理 (2)试题管理 设计内容与步骤 1、 需求分析 2、 数据库设计 3、 用SQL语句、触发器与存储过程等实现功能 4、 课程设计说明书 设计工作计划与进度安排 1、 设计工作6学时 2、 实现4学时 3、 课程设计说明书2学时 设计考核要求 1、 考勤20% 2、 课程设计说明书50% 3、 答辩30% 指导教师(签字):
3、 教研室主任(签字): 目录 1. 系统概述 4 1.1系统管理 4 1.2试题管理 4 2.需求分析 4 2.1 数据流图 4 5 2.2数据字典 5 3. 数据库概念结构设计 7 3.1 实体分析 7 3.2 数据库概念结构设计 7 4.数据库逻辑结构设计 9 4.1 关系模型 9 4.2表与视图的设计 9 5 数据库物理设计及实施 11 5.1 创建数据库 11 5.2 创建表 11 7 总结 17 参考文献 18 在线考试信息管理系统-----系统、试题管理 1. 系统概述 为了提高考试的可靠性,降低考试
4、成本,提高工作效率,需要实现在线考试系统,帮助教师合理管理试题,辅助出题,为学生提供在线考试功能,进行自动阅卷,提供成绩查询和汇总统计的功能。为了方便计算机判卷,在线考试系统中的试题采用客观题形式,包括选择题、填空题和判断题三种题型。 1.1系统管理 系统管理:系统的用户包括系统管理员、学生和教师三类用户。系统管理员维护学生基本信息、教师基本信息。其功能包括验证登录用户的身份,根据用户身份进入不同的页面;教师用户和学生用户密码默认为“123456”,当用户忘记密码时系统管理员可以将密码重置为“123456”。设计相应存储过程实现。 1.2试题管理 试题管理:供教师用户管理,用于维护题库
5、试题包括选择题和填空题,选择题包括试题内容、各选项、参考答案、试题类型、分值、所属科目、录入时间等,填空题包括试题内容、参考答案、试题类型、分值、所属科目、录入时间等;判断题包括试题内容、参考答案,试题类型、所属科目、分值、录入时间等;教师可以对试题进行维护,包括插入、删除、修改操作,也可以查询题库,可以按照科目、题型、录入时间等进行查询。设计相应存储过程实现。 2.需求分析 2.1 数据流图 图2.1 第0层数据流图 图2.2 第1层数据流图 2.2数据字典 1.数据项定义 表2.1 数据项定义表 数据项
6、名称 别名 含义说明 类型 长度 取值范围 取值含义 管理员编号 管理员号 管理员身份识别 Int 2 0-99 管理员身份编号 管理员密码 管理员密码 管理员登录验证 Varchar 11 管理员登录验证 教师编号 教师号 教师身份验证 Int 2 教师身份编号 教师密码 教师密码 教师登录验证 Varchar 11 教师登录验证 学生学号 学号 学生身份验证 Varchar 12 学生身份验证 学生密码 密码 学生登录验证 Varchar 12 学生登录验证 科目编号 编号 科目
7、号 Int 11 科目编号 科目名称 名称 科目的名称 Varchar 11 科目名称 试卷编号 试卷的编号 Int 11 试卷编号 试卷名称 试卷的名称 Varchar 10 试卷名称 题目内容 题目 题目的详细信息 Text 100 题目的详细内容 题目答案 答案 题目的答案,包括多选单选和判断 Varchar 7 对应题目的答案 题目选项 选项 题目的选项,判断有两个,选择有四个 Int 1 0、1 对应题目的对应选项 题目得分 得分 对应试卷的对应题型的得分 Int 2
8、 0-100 对应题目的得分 2.数据结构 l 系统管理员(编号,姓名,账号,密码) l 学生(学号,姓名,密码) l 教师(学工号,姓名,密码) l 科目(科目编号,科目名称) l 选择题(试题内容、各选项、参考答案、试题类型、分值、所属科目、录入时间) l 填空题(试题内容、参考答案、试题类型、分值、所属科目、录入时间) l 判断题(试题内容、参考答案,试题类型、所属科目、分值、录入时间) 3.数据流 {教师新增试题, 教师向数据库中新增试题,新增试题时选择试题类型,并根据类型填写相应的内容, 来源为前台输入,去向是后台数据库,组成:{选择题或填空题
9、或判断题},无,无} 4.数据存储 试题分为三个表存储,每个表各存储一种试题,便于合理组成一套试卷 系统管理员=编号+姓名+账号+密码 学生=学号+姓名+密码 教师=学工号+姓名+密码 科目=科目编号+科目名称 选择题=试题内容+各选项+参考答案+试题类型+分值+所属科目+录入时间 填空题=试题内容+参考答案+试题类型+分值+所属科目+录入时间 判断题=试题内容+参考答案+试题类型+所属科目+分值+录入时间 5.数据处理: l 试题输入:教师输入试题是按试题类型进行分类的。根据不同的试题类型进行不同的输入。 l 查询:3个题库的试题分别按时间排序,
10、并且可以根据多个检索条件进行检索。 l 修改:可以对单个试题进行修改,包括正确答案,题目内容,题目分值等等 3. 数据库概念结构设计 3.1 实体分析 学生信息:学号,姓名,密码 教师信息:学工号,姓名,密码 管理员:账号、密码 科目信息:编号,科目名称 选择题信息:试题内容、各选项、参考答案、试题类型、分值、所属科目、录入时间 填空题信息:试题内容、参考答案、试题类型、分值、所属科目、录入时间 判断题信息:试题内容、参考答案,试题类型、所属科目、分值、录入时间 这些实体间的语义描述如下: 由于本系统是考试系统,考虑到考试系统的特殊性,本系统中的学生和
11、老师无关系,一套试卷有多个试题,每个试题都属于一种科目,试题由选择题、判断题、填空题三种题型,一套试题有多个选择题,有多个判断题,有多个填空题,一个学生对应一套试卷,并且该试卷是根据学号随机分配的。 3.2 数据库概念结构设计 图3.1 实体图 4.数据库逻辑结构设计 4.1 关系模型 表4.1 关系模型表 关系名 属性及码 其他约束条件 科目 科目编号,科目名称 1、 科目编号为主键 2、 科目编号不能为空 选择题 选择题编号、试题内容、各选项、参考答案、试题类型、分值、所属科目、录入时间 1. 编号不能为空 2. 所属科目引用科目主
12、键 填空题 填空题编号、试题内容、参考答案、试题类型、分值、所属科目、录入时间 1编号不能为空 2所属科目引用科目主键 判断题 判断题编号、试题内容、参考答案,试题类型、所属科目、分值、录入时间 1编号不能为空 2所属科目引用科目主键 4.2表与视图的设计 表4.2 Student表 字段名 数据类型 含义说明 空值情况 StuId int 学生编号 主关键字 StuName String 学生姓名 非空 Password String 密码 非空 表4.3 Teacher表 字段名 数据类型 含义说明 空值情况 TeaI
13、d int 教师编号 主关键字 TeaName String 教师姓名 非空 Password String 密码 非空 表4.4 选择题表表 字段名 数据类型 含义说明 空值情况 Id int 选择题编号 主关键字 Body String 试题内容 非空 xxA String 各选项 非空 xxB String 各选项 非空 xxC String 各选项 非空 xxD String 各选项 非空 Answer String 参考答案 非空 Type
14、 Type 试题类型 非空 Value Int 分值 非空 Project Project 所属科目 Project Time Date 录入时间 非空 表4.5 判断题表 字段名 数据类型 含义说明 空值情况 Id int 选择题编号 主关键字 Body String 试题内容 非空 Type Type 试题类型 非空 Value Int 分值 非空 Project Project 所属科目 Project Time Date 录入时间 非空 5 数据库物理设计及实施 5.1 创建数据库 Cr
15、eate database Exam; 5.2 创建表 CREATE TABLE `teacher` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(5) NOT NULL, `password` varchar(10) NOT NULL, PRIMARY KEY (`id`) ) 图5.1 教师表 CREATE TABLE `t_exam` ( `studentId` int(11) NOT NULL, `paperId` int(11) NOT NULL, `judgS
16、core` int(10) unsigned zerofill NOT NULL COMMENT '判断题得分', `singScore` int(10) unsigned zerofill NOT NULL COMMENT '单选得分', `multipleScore` int(10) unsigned zerofill NOT NULL COMMENT '多选得分', PRIMARY KEY (`studentId`,`paperId`), CONSTRAINT `t_exam_ibfk_2` FOREIGN KEY (`paperId`) REFERENCES `t_paper`
17、 (`id`) ON DELETE NO ACTION, CONSTRAINT `t_exam_ibfk_3` FOREIGN KEY (`studentId`) REFERENCES `t_student` (`id`) ) 图5.2 考试表 CREATE TABLE `t_judgement` ( `id` int(11) NOT NULL AUTO_INCREMENT, `title` text NOT NULL COMMENT '题目', `answer` smallint(1) NOT NULL COMMENT '答案,只能为1(正确)0
18、错误)', `jointime` datetime NOT NULL, `subject` int(11) NOT NULL COMMENT '外键-课程名', `paperId` int(11) NOT NULL COMMENT '所属试卷', PRIMARY KEY (`id`), KEY `subject` (`subject`), KEY `paperId` (`paperId`), CONSTRAINT `t_judgement_ibfk_1` FOREIGN KEY (`subject`) REFERENCES `t_subject` (
19、`id`), CONSTRAINT `t_judgement_ibfk_2` FOREIGN KEY (`paperId`) REFERENCES `t_paper` (`id`) ON DELETE NO ACTION ) 图5.3判断题表 CREATE TABLE `t_manager` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(255) NOT NULL, `password` varchar(20) NOT NULL, PRIMARY KEY (`id`)
20、) 图5.4 管理员表 CREATE TABLE `t_multiple` ( `id` int(11) NOT NULL AUTO_INCREMENT, `title` text NOT NULL, `answer` varchar(7) NOT NULL, `optionA` varchar(50) NOT NULL, `optionB` varchar(50) NOT NULL, `optionC` varchar(50) NOT NULL, `optionD` varchar(50) NOT NULL, `jointime`
21、datetime NOT NULL, `subject` int(11) NOT NULL, `paperId` int(11) NOT NULL, PRIMARY KEY (`id`), KEY `subject` (`subject`), KEY `paperId` (`paperId`), CONSTRAINT `t_multiple_ibfk_1` FOREIGN KEY (`subject`) REFERENCES `t_subject` (`id`), CONSTRAINT `t_multiple_ibfk_2` FOREIGN KEY (
22、`paperId`) REFERENCES `t_paper` (`id`) ) 表5.5 多选题表 CREATE TABLE `t_paper` ( `id` int(11) NOT NULL, `name` varchar(10) DEFAULT NULL COMMENT '试卷名称', PRIMARY KEY (`id`) ) 表5.6 试卷表 CREATE TABLE `t_single` ( `id` int(11) NOT NULL AUTO_INCREMENT, `title` text NOT NULL COM
23、MENT '题目', `answer` smallint(6) NOT NULL COMMENT '单选答案,1.2.3.4', `optionA` varchar(50) NOT NULL, `optionB` varchar(50) NOT NULL, `optionC` varchar(50) NOT NULL, `optionD` varchar(50) NOT NULL, `jiontime` datetime NOT NULL COMMENT '加入时间', `subject` int(11) NOT NULL, `paperId`
24、int(11) NOT NULL, PRIMARY KEY (`id`), KEY `subject` (`subject`), KEY `paperId` (`paperId`), CONSTRAINT `t_single_ibfk_1` FOREIGN KEY (`subject`) REFERENCES `t_subject` (`id`), CONSTRAINT `t_single_ibfk_2` FOREIGN KEY (`paperId`) REFERENCES `t_paper` (`id`) ) 表5.7单选题表 CRE
25、ATE TABLE `t_student` ( `id` int(11) NOT NULL AUTO_INCREMENT, `number` varchar(12) NOT NULL, `password` varchar(10) NOT NULL, PRIMARY KEY (`id`), KEY `id` (`id`) ) 图5.8 学生表 CREATE TABLE `t_subject` ( `id` int(11) NOT NULL, `name` varchar(10) DEFAULT NULL COMMENT '课程名称',
26、 PRIMARY KEY (`id`) ) 图5.9 科目表 6 功能实现 6.1 系统管理功能模块 1. 登录 select * from t_student where id='JS20141114023'; 图6.1 登录 CREATE PROCEDURE `NewProc`(IN `userId` int) BEGIN select * from t_question where id=userId; END; 2. 密码重置 update t_student set password='123456' where id='JS201411
27、14023'; 图6.2 密码重置 CREATE PROCEDURE `NewProc`(IN userId varchar) BEGIN UPDATE t_student set `password`='123456' where id=userId END;; 6.2 试题管理功能模块 1.新建试题 新建判断题 INSERT INTO `t_judgement` VALUES ('6', '判断题', '0', '2017-01-03 20:25:18', '2', '1'); 创建答案范围验证触发器 create trriger ju
28、dge BEFORE INSERT UPDATE on t_ for each ROW BEGIN if new.answer!=0 AND new.answer!=1 THEN SET new.answer=0; END IF; END 新建单选题 INSERT INTO `t_single` VALUES ('10', '单选题', '1', '答案A', '答案B', '答案C', '答案D', '2017-01-03 20:27:53', '1', '3'); 新建多选题 INSERT INTO `t_multiple` VALUES ('12',
29、 '多选题', '1', '答案A', '答案B', '答案C', '答案D', '2017-01-03 20:27:53', '2', '3'); 3. 修改试题 update t_question set subject='下列不可作为java语言修饰符的是?' where id=19; 图6.3 修改试题 4. 删除试题 delete from t_question where id=19; 图6.4 删除试题 5. 查询试题 根据题目类型查询 CREATE PROCEDURE `NewProc`(IN type int) BEGIN IF
30、 type=1 || type=2 || type=3 THEN SELECT * FROM t_question where type= type ; ELSE SELECT * FROM t_question; END IF; END;; 根据题目的创建时间查询 CREATE PROCEDURE `NewProc`(IN time date) BEGIN Select * from t_question where joinTime=date; END;; 根据题目的内容进行模糊查询 CREATE PROCEDURE `NewProc`(IN value
31、 varchar) BEGIN Select * from t_question where subject like concat(‘%’,value,’%’) END;; 7 总结 通过本次实验,我学到了很多,数据库的设计决定了程序的设计,数据库是程序设计的基石,是软件设计的起点,它起着决定性的质变作用,设计优秀的数据库不仅可以节约资源节省查询时间,而且利于程序的设计,因此我们必须对数据库设计高度重视起来,培养设计良好数据库的习惯,是一个优秀的软件设计师所必须具备的基本素质条件!在本次实验中,不仅仅学到了数据库方面的知识,而且加强了合作交流能力,往往自己一个人埋头苦想不如和
32、他人交流一下,单打独斗永远不如合作交流。随着程序的越来越大,单单靠一个人永远不能完成所有的任务,所以要加强和他人交流能力。在本次试验中也暴露了不少问题,对于数据库的SQL语句只掌握了最基础的内容,稍微加深一点就不会了,以后要加强学习。 参考文献 [1] 萨师煊, 王珊. 数据库系统概论[M].北京:高等教育出版社,2006. [2] 甘仞初. . 管理信息系统[M].北京:机械工业出版社,2002. [3] 崔洋 MySQL数据库应用从入门到精通 中国铁道出版社 [4] Baron Schwartz 高性能MYSQL 电子工业出版社 [5] 西尔伯沙茨 数据库系统概论 机
33、械工业出版社 1. 基于C8051F单片机直流电动机反馈控制系统的设计与研究 2. 基于单片机的嵌入式Web服务器的研究 3. MOTOROLA单片机MC68HC(8)05PV8/A内嵌EEPROM的工艺和制程方法及对良率的影响研究 4. 基于模糊控制的电阻钎焊单片机温度控制系统的研制 5. 基于MCS-51系列单片机的通用控制模块的研究 6. 基于单片机实现的供暖系统最佳启停自校正(STR)调节器 7. 单片机控制的二级倒立摆系统的研究 8. 基于增强型51系列单片机的TCP/IP协议栈的实现 9. 基于
34、单片机的蓄电池自动监测系统 10. 基于32位嵌入式单片机系统的图像采集与处理技术的研究 11. 基于单片机的作物营养诊断专家系统的研究 12. 基于单片机的交流伺服电机运动控制系统研究与开发 13. 基于单片机的泵管内壁硬度测试仪的研制 14. 基于单片机的自动找平控制系统研究 15. 基于C8051F040单片机的嵌入式系统开发 16. 基于单片机的液压动力系统状态监测仪开发 17. 模糊Smith智能控制方法的研究及其单片机实现 18. 一种基于单片机的轴快流CO〈,2〉激光器的手持控制面板的研制 19. 基于双单片机冲床数控系统的研究 20.
35、基于CYGNAL单片机的在线间歇式浊度仪的研制 21. 基于单片机的喷油泵试验台控制器的研制 22. 基于单片机的软起动器的研究和设计 23. 基于单片机控制的高速快走丝电火花线切割机床短循环走丝方式研究 24. 基于单片机的机电产品控制系统开发 25. 基于PIC单片机的智能手机充电器 26. 基于单片机的实时内核设计及其应用研究 27. 基于单片机的远程抄表系统的设计与研究 28. 基于单片机的烟气二氧化硫浓度检测仪的研制 29. 基于微型光谱仪的单片机系统 30. 单片机系统软件构件开发的技术研究 31. 基于单片机的液体点滴速度自动检测仪的研
36、制 32. 基于单片机系统的多功能温度测量仪的研制 33. 基于PIC单片机的电能采集终端的设计和应用 34. 基于单片机的光纤光栅解调仪的研制 35. 气压式线性摩擦焊机单片机控制系统的研制 36. 基于单片机的数字磁通门传感器 37. 基于单片机的旋转变压器-数字转换器的研究 38. 基于单片机的光纤Bragg光栅解调系统的研究 39. 单片机控制的便携式多功能乳腺治疗仪的研制 40. 基于C8051F020单片机的多生理信号检测仪 41. 基于单片机的电机运动控制系统设计 42. Pico专用单片机核的可测性设计研究 43. 基于MCS-51
37、单片机的热量计 44. 基于双单片机的智能遥测微型气象站 45. MCS-51单片机构建机器人的实践研究 46. 基于单片机的轮轨力检测 47. 基于单片机的GPS定位仪的研究与实现 48. 基于单片机的电液伺服控制系统 49. 用于单片机系统的MMC卡文件系统研制 50. 基于单片机的时控和计数系统性能优化的研究 51. 基于单片机和CPLD的粗光栅位移测量系统研究 52. 单片机控制的后备式方波UPS 53. 提升高职学生单片机应用能力的探究 54. 基于单片机控制的自动低频减载装置研究 55. 基于单片机控制的水下焊接电源的研究 56.
38、 基于单片机的多通道数据采集系统 57. 基于uPSD3234单片机的氚表面污染测量仪的研制 58. 基于单片机的红外测油仪的研究 59. 96系列单片机仿真器研究与设计 60. 基于单片机的单晶金刚石刀具刃磨设备的数控改造 61. 基于单片机的温度智能控制系统的设计与实现 62. 基于MSP430单片机的电梯门机控制器的研制 63. 基于单片机的气体测漏仪的研究 64. 基于三菱M16C/6N系列单片机的CAN/USB协议转换器 65. 基于单片机和DSP的变压器油色谱在线监测技术研究 66. 基于单片机的膛壁温度报警系统设计 67. 基于AVR单
39、片机的低压无功补偿控制器的设计 68. 基于单片机船舶电力推进电机监测系统 69. 基于单片机网络的振动信号的采集系统 70. 基于单片机的大容量数据存储技术的应用研究 71. 基于单片机的叠图机研究与教学方法实践 72. 基于单片机嵌入式Web服务器技术的研究及实现 73. 基于AT89S52单片机的通用数据采集系统 74. 基于单片机的多道脉冲幅度分析仪研究 75. 机器人旋转电弧传感角焊缝跟踪单片机控制系统 76. 基于单片机的控制系统在PLC虚拟教学实验中的应用研究 77. 基于单片机系统的网络通信研究与应用 78. 基于PIC16F877单片
40、机的莫尔斯码自动译码系统设计与研究 79. 基于单片机的模糊控制器在工业电阻炉上的应用研究 80. 基于双单片机冲床数控系统的研究与开发 81. 基于Cygnal单片机的μC/OS-Ⅱ的研究 82. 基于单片机的一体化智能差示扫描量热仪系统研究 83. 基于TCP/IP协议的单片机与Internet互联的研究与实现 84. 变频调速液压电梯单片机控制器的研究 85. 基于单片机γ-免疫计数器自动换样功能的研究与实现 86. 基于单片机的倒立摆控制系统设计与实现 87. 单片机嵌入式以太网防盗报警系统 88. 基于51单片机的嵌入式Internet系统的设计与
41、实现 89. 单片机监测系统在挤压机上的应用 90. MSP430单片机在智能水表系统上的研究与应用 91. 基于单片机的嵌入式系统中TCP/IP协议栈的实现与应用 92. 单片机在高楼恒压供水系统中的应用 93. 基于ATmega16单片机的流量控制器的开发 94. 基于MSP430单片机的远程抄表系统及智能网络水表的设计 95. 基于MSP430单片机具有数据存储与回放功能的嵌入式电子血压计的设计 96. 基于单片机的氨分解率检测系统的研究与开发 97. 锅炉的单片机控制系统 98. 基于单片机控制的电磁振动式播种控制系统的设计 99. 基于单片机技
42、术的WDR-01型聚氨酯导热系数测试仪的研制 100. 一种RISC结构8位单片机的设计与实现 101. 基于单片机的公寓用电智能管理系统设计 102. 基于单片机的温度测控系统在温室大棚中的设计与实现 103. 基于MSP430单片机的数字化超声电源的研制 104. 基于ADμC841单片机的防爆软起动综合控制器的研究 105. 基于单片机控制的井下低爆综合保护系统的设计 106. 基于单片机的空调器故障诊断系统的设计研究 107. 单片机实现的寻呼机编码器 108. 单片机实现的鲁棒MRACS及其在液压系统中的应用研究 109. 自适应控制的单片机实现方
43、法及基上隅角瓦斯积聚处理中的应用研究 110. 基于单片机的锅炉智能控制器的设计与研究 111. 超精密机床床身隔振的单片机主动控制 112. PIC单片机在空调中的应用 113. 单片机控制力矩加载控制系统的研究 项目论证,项目可行性研究报告,可行性研究报告,项目推广,项目研究报告,项目设计,项目建议书,项目可研报告,本文档支持完整下载,支持任意编辑!选择我们,选择成功! 项目论证,项目可行性研究报告,可行性研究报告,项目推广,项目研究报告,项目设计,项目建议书,项目可研报告,本文档支持完整下载,支持任意编辑!选择我们,选择成功! 单片机论文,毕业设计,毕业论文,单片机设计,硕士论文,研究生论文,单片机研究论文,单片机设计论文,优秀毕业论文,毕业论文设计,毕业过关论文,毕业设计,毕业设计说明,毕业论文,单片机论文,基于单片机论文,毕业论文终稿,毕业论文初稿,本文档支持完整下载,支持任意编辑!本文档全网独一无二,放心使用,下载这篇文档,定会成功!






