在线考试系统的数据库设计

上传人:ail****e2 文档编号:53261714 上传时间:2022-02-10 格式:DOCX 页数:19 大小:131.72KB
返回 下载 相关 举报
在线考试系统的数据库设计_第1页
第1页 / 共19页
在线考试系统的数据库设计_第2页
第2页 / 共19页
在线考试系统的数据库设计_第3页
第3页 / 共19页
点击查看更多>>
资源描述
题 目:课 程:院(部):专 业:班 级:学生姓名:学 号:指导教师:完成日期:山东建筑大学计算机科学与技术学院课程设计说明书在线考试系统的设计系统及试题管理数据库原理及应用课程设计计算机科学与技术学院2016年1月5日山东建筑大学计算机科学与技术学院课程设计任务书设计题目在线考试系统设计与实现系统、试题管理已知技术参数 和设计要求为了方便计算机判卷,在线考试系统中的试题采用客观题形式, 包括选择题、填空题和判断题三种题型。系统主要实现以下模块:(1)系统管理(2)试题管理设计内容 与步骤1、需求分析2、数据库设计3、用SQL语句、触发器匕存储过程等实现功能4、课程设计说明书设计工作计划与进度安排1、设计工作6学时2、实现4学时3、课程设计说明书2学时设计考核要求1、考勤20%2、课程设计说明书50%3、答辩30%指导教师(签字):教研室主任(签字)目录1 .系统概述41.1 系统管理41.2 试题管理42 .需求分析52.1 数据流图5错误!未定义书签。2.2 数据字典63 .数据库概念结构设计73.1 实体分析73.2 数据库概念结构设计 84 .数据库逻辑结构设计 84.1 关系模型84.2 表与视图的设计 95数据库物理设计及实施105.1 创建数据库105.2 创建表117总结17参考文献18在线考试信息管理系统系统、试题管理1 .系统概述为了提高考试的可靠性,降低考试成本,提高工作效率,需要实现在线考试系统,帮助 教师合理管理试题,辅助出题,为学生提供在线考试功能,进行自动阅卷,提供成绩查询和 汇总统计的功能。为了方便计算机判卷,在线考试系统中的试题采用客观题形式,包括选择 题、填空题和判断题三种题型。1.1 系统管理系统管理:系统的用户包括系统管理员、学生和教师三类用户。系统管理员维护学生基 本信息、教师基本信息。其功能包括验证登录用户的身份,根据用户身份进入不同的页面; 教师用户和学生用户密码默认为 “123456”,当用户忘记密码时系统管理员可以将密码重置为 “123456”。设计相应存储过程实现。1.2 试题管理试题管理:供教师用户管理,用于维护题库。试题包括选择题和填空题,选择题包括试 题内容、各选项、参考答案、试题类型、分值、所属科目、录入时间等,填空题包括试题内 容、参考答案、试题类型、分值、所属科目、录入时间等;判断题包括试题内容、参考答案, 试题类型、所属科目、分值、录入时间等;教师可以对试题进行维护,包括插入、删除、修 改操作,也可以查询题库,可以按照科目、题型、录入时间等进行查询。设计相应存储过程 实现。2.需求分析2.1 数据流图登录、修改密码教师教师试题数据库考试学生成绩数据库登录、修改 密码用户信息数 据库成绩查询试卷数据库图2.1第0层数据流图修改试题确认修改查询试题匕试题数据库查询试题图2.2第1层数据流图1.数据项定义表2.1数据项定义表数据项名称别名含义说明长度取值范围取值含义管理员编号管理员号管理员身份识别Int20-99管理员身份 编号管理员密码管理员密 码管理员登录验证Varchar11管理员登录 验证教师编号教师号教师身份验证Int2教师身份编 号教师密码教师密码教师登录验证Varchar11教师登录验 证学生学号学号学生身份验证Varchar12学生身份验 证学生密他密码学生登录验证Varchar12学生登录验证科目编号编号科目号Int11科目编号科目名称名称科目的名称Varchar11科目名称试卷编P试卷的编号Int11试卷编p试卷名称试卷的名称Varchar10试卷名称题目内容题目题目的详细信息Text100题目的详细 内容题目答案答案题目的答案,包括多 选单选和判断Varchar7对应题目的 答案题目选项选项题目的选项,判断有 两个,选择后四个Int10、1对应题目的 对应选项题目得分得分对应试卷的对应题 型的得分Int20-100对应题目的 得分2 .数据结构系统管理员(编号,姓名,账号,密码)学生(学号,姓名,密他)教师(学工号,姓名,密码)科目(科目编号,科目名称)选择题(试题内容、各选项、参考答案、试题类型、分值、所属科目、录入 时间)填空题(试题内容、参考答案、试题类型、分值、所属科目、录入时间)判断题(试题内容、参考答案,试题类型、所属科目、分值、录入时间)3 .数据流教师新增试题,教师向数据库中新增试题,新增试题时选择试题类型,并根据类型填写相应的内容,来源为前台输入,去向是后台数据库,组成:选择题或填空题或判断题,无,无4 .数据存储试题分为三个表存储,每个表各存储一种试题,便于合理组成一套试卷系统管理员=编号+姓名+账号+密码学生寸号+姓名+密码教师寸工号+姓名+密码科目二科目编号+科目名称选择题=试题内容+各选项+ 参考答案+试题类型+分值+ 所属科目+录入时间填空题=试题内容+参考答案+试题类型+分值+所属科目+录入时间判断题=试题内容+参考答案+试题类型+ 所属科目 筋值+录入时间5 .数据处理:试题输入:教师输入试题是按试题类型进行分类的。根据不同的试题类型进 行不同的输入。查询:3个题库的试题分别按时间排序,并且可以根据多个检索条件进行检 索。修改:可以对单个试题进行修改,包括正确答案,题目内容,题目分值等等3 .数据库概念结构设计3.1 实体分析学生信息:学号,姓名,密码教师信息:学工号,姓名,密码管理员:账号、密码科目信息:编号,科目名称选择题信息:试题内容、各选项、参考答案、试题类型、分值、所属科目、录入时间填空题信息:试题内容、参考答案、试题类型、分值、所属科目、录入时间判断题信息:试题内容、参考答案,试题类型、所属科目、分值、录入时间这些实体间的语义描述如下:由于本系统是考试系统,考虑到考试系统的特殊性,本系统中的学生和老师无关系,一套试卷有多个试题,每个试题都属于一种科目,试题由选择题、判断题、填空题三种题型, 一套试题有多个选择题,有多个判断题,有多个填空题,一个学生对应一套试卷,并且该试卷是根据学号随机分配的。3.2 数据库概念结构设计课程题目答案编号加入时间所属科目选项题项选目科属所间时入加号编案答目题于 属称 名卷组案答号编号编分总称名题选单多选题编号管理员名 姓号 编码 密绩成卷做号编姓名号 学码 密号 编教师图3.1实体图4 .数据库逻辑结构设计4.1 关系模型关系名表4.1关系模型表属性及码其他约束条件科目科目编号,科目名称1、科目编号为主键2、科目编号不能为空选择题选择题编号、试题内容、各选项、参考答案、试 题类型、分值、所属科目、录入时间1 .编号不能为空2 .所属科目引用科目主键填空题填空题编号、试题内容、参考答案、试题类型、 分值、所属科目、录入时间1编号不能为空2所属科目引用科目主键判断题判断题编号、试题内容、参考答案,试题类型、 所属科目、分值、录入时间1编号不能为空2所属科目引用科目主键4.2 表与视图的设计表 4.2 Student 表字段名数据类型含义说明空值情况StuIdint学生编号主关键字StuNameString学生姓名非空PasswordString密码非空表 4.3 Teacher 表字段名数据类型含义说明空值情况TeaIdint教师编号主关键字TeaNameString教师姓名非空PasswordString密码非空表4.4选择题表表字段名数据类型含义说明空值情况Idint选择题编号主关键字BodyString试题内容非空xxAString各选项非空xxBString各选项非空xxCString各选项非空xxDString各选项非空AnswerString参考答案非空TypeType试题类型非空ValueInt分值非空ProjectProject所属科目ProjectTimeDate录入时间非空表4.5判断题表字段名数据类型含义说明空值情况Idint选择题编号主关键字BodyString试题内容非空TypeType试题类型非空ValueInt分值非空ProjectProject所属科目ProjectTimeDate录入时间非空5数据库物理设计及实施5.1 创建数据库Create 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)idnamepassword1 张三1234562 李四123456图5.1教师表CREATE TABLE t_exam (studentId int(11) NOT NULL,paperld int(11) NOT NULL,judgScore 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 (studentld,paperld),CONSTRAINT t_exam_ibfk_2 FOREIGN KEY (paperId) REFERENCES t_paper (id) ON DELETE NO ACTION,CONSTRAINT t_exam_ibfk_3 FOREIGN KEY (studentId) REFERENCES t_student (id)studentIdpaperldjudgScoresingScorerm jltipleScore125030102250301034402010图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 (错误),jointime datetime NOT NULL,subject int(11) NOT NULL COMMENT 外键-课程名,paperld int(11) NOT NULL COMMENT 所属试卷,PRIMARY KEY (id),KEY subject (subject),KEY paperld (paperld),CONSTRAINT t_judgement_ibfk_1 FOREIGN KEY (subject) REFERENCES t_subject (id),CONSTRAINT t_judgement_ibfk_2 FOREIGN KEY (paperId) REFERENCES t_paper (id) ON DELETE NO ACTION)idtitleanswer jointimesubject paperld1 判哥跑12017-01-0220:22:39112 判断蠹22017-01-0320:23:19123 判断意12017-01-0320:25:18124 判断题32017-01-0320:25:18215 判野慰22017-01-0320:2518316 断感22017-01-0320:25:1821图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)id name password1 李四 123456图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 datetime NOT NULL,subject int(11) NOT NULL,paperId int(11) NOT NULL,PRIMARY KEY (id),KEY subject (subject),KEY paperld (paperld),CONSTRAINT t_multiple_ibfk_1 FOREIGN KEY (subject) REFERENCES t_subject (id),CONSTRAINT t_multiple_ibfk_2 FOREIGN KEY (paperId) REFERENCES t_paper (id)idtitleansweroptionAoptionBoptionCoptionDjointimesubjectpaperld1窸选题2.3答案A答案B答案c答案口2017-01-03 20:27:53232零选题1答案A答案E答案匚答案口2017-01-03 20:27:53233客选题1答案A答案E普案匚答案口2017-01-03 20:27巧三234名选题1答案A答案B普案匚答案口2017-01-03 20:27:53235名选题1答案A答案E答案匚答案口2017-01-03 20:27:5323表5.5多选题表CREATE TABLE t_paper ( id int(11) NOT NULL, name varchar(10) DEFAULT NULL COMMENT 试卷名称,PRIMARY KEY (id)id name1数学A卷2数学B卷3语文A卷4语文B卷表5.6试卷表CREATE TABLE t_single ( id int(11) NOT NULL AUTO_INCREMENT, title text NOT NULL COMMENT 题目, 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 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)idtitleansweroptionAoptionBoptionC ptionDjiontimesubjectpaperld1单诱蚊1 VKAsecMD2017-01-03 2ft2753132单选筮1答案A百案E答案。智案口2017-01-03 20:27:53133羊谩1答案A答案B雷c管案D2017-01-03 20:27:53134单走冢1答案也君案B答案口201701*03 20:27:53135华透变1普工A富篥E答霎口2017-01-03 20:27i53136单谟1答案A答案B普宾D2017-01-03 20:27:5313表5.7单选题表CREATE 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) )idnumberpassword12014111401812345622014111401912M56320141114020123456420141114021123456520141114022123456620141114024123456图5.8学生表CREATE TABLE t_subject ( id int(11) NOT NULL, name varchar(10) DEFAULT NULL COMMENT 课程名称, PRIMARY KEY (id) id name1数学 2英语3 jmv3)图5.9科目表6功能实现6.1 系统管理功能模块1 .登录select * from t_student where id=JS20141114023;idcardhlc name password prefession sex JS201411140 1232132132:123456 计算机 典图6.1登录CREATE PROCEDURE NewProc(IN userid int)BEGINselect * from t_question where id=userid;END;2 .密码重置update t_student set password=123456 where id=JS20141114023;idcardNo name password prefession sexJS2O141114O图6.2密码重置CREATE PROCEDURE NewProc(iN userid varchar) BEGINUPDATE 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 judgeBEFOREinsert UPDATEon t_for each ROW beginif new.answer!=0 AND new.answer!=1 THENSET 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,多选题,1,答案 A,答案 B,答案 C, 答案 D, 2017-01-03 20:27:53, 2, 3);3 .修改试题update t_question set subject=下列不可作为 java 语言修饰符的是? where id=19;19 D 2O17-O1-D4 00:00:00 儿 alB. $1 C. _1 D .11下列不可作为java若合制渝的是?11图6.3修改试题4 .删除试题delete from t_question where id=19;16 A.62014-07-09 CKkDaGO1122222333224422部试匿目之221720W-D7-17 00:00:002321321321321物基目2118 A.D2014-07-18 OOOftOO1.114222433344444型忒置目羽3321图6.4删除试题5 .查询试题根据题目类型查询CREATE PROCEDURE NewProc(IN type int) BEGINIF type=1 | type=2 | type=3 THENSELECT * FROM t_question where type= type ;ELSESELECT * FROM t_question;END IF;END;根据题目的创建时间查询CREATE PROCEDURE NewProc(IN time date) BEGINSelect * from t question where joinTime=date;END;根据题目的内容进行模糊查询CREATE PROCEDURE NewProc(IN value varchar) BEGINSelect * from t question where subject like concat( ,value, % )END;7总结通过本次实验,我学到了很多,数据库的设计决定了程序的设计,数据库是程 序设计的基石,是软件设计的起点,它起着决定性的质变作用,设计优秀的数 据库不仅可以节约资源节省查询时间,而且利于程序的设计,因此我们必须对 数据库设计高度重视起来,培养设计良好数据库的习惯,是一个优秀的软件设 计师所必须具备的基本素质条件!在本次实验中,不仅仅学到了数据库方面的 知识,而且加强了合作交流能力,往往自己一个人埋头苦想不如和他人交流一 下,单打独斗永远不如合作交流。随着程序的越来越大,单单靠一个人永远不 能完成所有的任务,所以要加强和他人交流能力。在本次试验中也暴露了不少 问题,对于数据库的SQL语句只掌握了最基础的内容,稍微加深一点就不会了, 以后要加强学习。1萨师熠,王珊.数据库系统概论M.北京:高等教育出版社,2006.2甘仞初.管理信息系统M.北京:机械工业出版社,2002.3崔洋MySQL数据库应用从入门到精通中国铁道出版社4 Baron Schwartz 高性能 MYSQL电子工业出版社5西尔伯沙茨数据库系统概论机械工业出版社
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 演讲稿件


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!