摘 要
摘要: 黑体,小4号 行距1.5倍 段前1.5行,段后1.5行 |
内容: 宋体,小4号, 1.5倍行距,段前0行,段后0行 |
题目: 黑体,小4号 行距1.5倍 段前1.5行,段后1.5行 |
考核系统;XML脚本技术;容错性;……
页面设置(正文的所有页面) 页边距:上2.5厘米,下2.5厘米,左3厘米,右2.5厘米, 装订线0厘米;正文必须标注页码,位置为页脚居中,并在目录中注明并对应。 距边界:页眉1.5厘米,页脚1.75厘米 |
内容: 宋体,小4号, 1.5倍行距,段前0行,段后0行 |
内容: Times New Roman,小4号, 1.5倍行距,段前0行,段后0行 英文摘要、关键词中出现作品名、文章名必须使用斜体、并删去原书名号 |
题目: Times New Roman,4号,行距1.5倍,段前1.5行,段后1.5行 段前1.5行,段后1.5行 |
题目: Times New Roman,4号 行距1.5倍 段前1.5行,段后1.5行 |
Computer Skill Test System; XML-based Script technology; tolerance; ……
录入正文时注意: 1.同学们可直接在此设计报告正文格式模板上录入; 2.录入前看清说明后将所有标注删除;(红色文字)
|
内容: Times New Roman,小4号, 1.5倍行距,段前0行,段后0行 |
目录: 黑体小3号, 1.5倍行距, |
1. 系统功能需求分析
2. 数据库设计分析
3. 数据库整体逻辑结构设计
4. 数据库实现
4.1 建立数据库和表
4.2 建立视图
4.3 建立存储过程
4.4 建立触发器
5. 课程设计总结
参考文献
谢 辞
宋体,小4号 行距1.5行距 段前0行,段后0行
|
若有副标题则用:黑体,4号 |
论文题目: 黑体,3号,1.5倍行距 段前2行,段后1行 |
英文题目: Times New Roman,3号粗体,1.5倍行距段前1行,段后1行 |
专业、学生姓名、指导教师及姓名: 楷体,小5号,1.5倍行距 段前0行,段后0行 |
李大胜
指导教师:郝智慧
大标题: 黑体,4号,1.5倍行距 段前1行,段后1行 |
正文:首行缩进2字符, 宋体,5号,1.5倍行距, 段前0行,段后0行 |
对考生而言,分为五个考试状态:待考、就绪、考试中、结束、缺考。考生用准考证号登录考试网站,然后验证考生信息是否一致,如果一致就会停留在考生须知界面,处于就绪状态。所有考生等待服务器发送统一命令分发试卷并同时进入考试中状态。在开考后20分钟后考生仍未到场,考生状态会自动设置为“缺考”,不能参加此次考试。考试过程中可自由答题(可随时定位到每一题)。如果有考生信息不一致的情况,可上报管理员,经审核后进行修改。考生考完试点击“交卷”,经确认后交卷。考后即可查看考试分数。在到达考试时间后,服务器会自动给未交卷的考生结束考试,并可同时给所有考生评卷得出分数。
对管理员而言,可以更改数据库的所有内容,可添加、查询、修改、删除考生的信息,设置考试的相关内容。可有选择地录入试题,为题目分类并自动在正确答案表里插入相应的标准答案。开考前服务器可自动为每考生随机生成试卷。考生号由管理员统一设置。服务器会根据考试时间来自动设置考生的考试状态。到达考试时间后,服务器可同时让所有在线考生进入答题阶段。在考试过程中,自动为考生保存考试答案。也可以查看所有考生的在线考试情况。同时也可为出现异常的考生延时等详细功能。考试全部结束后,服务器会备份所有考生信息和答题情况,并给所有考生评卷并生成所有考试成绩表,以便考生查分。
针对以上的功能分析,对数据库的设计做了以下分析。考虑到在线考试的特殊要求,数据库的设计应该包含以下信息:
考生的基本信息用来在考生登陆时进行核对验证,防止考生信息录错的情况。
考生考试的基本信息用来控制考试时间和考生的考试状态,统计在线考生和缺考情况,同时也方便服务器统一发送命令,给所有考生同时开始考试和结束考试。从而体现公平一致的原则。
题库应包含所有的考试类型、题目内容和每题的分值,以便以后的随机抽题和为考生评分。并且数据库里也存储有每题对应的正确答案,考生的考试答案,这样可以方便评分。还对考生答案做了备份,方便以后的查阅和总结考试情况,以进一步更新考试,提高考试质量。
还应把给每位考生随机生成的试题保存起来,方便查阅核对,并可由服务器统一给对应考生发送试卷。
最后把评卷的结果和考生成绩统计出来做备份,考生可在考试结束后直接查看考试结果。如果发现有疑问地方也可随时查看和核对。
由此分析一共设计了七张表用来存储所有的考生信息和考试信息:考生信息表(包含属性:姓名、性别、准考证号、身份证号、所在学校)、考生考试信息表(包含属性:考生号、准考证号、考试时间、考试状态)、题库表(包含属性:题号、题目、题目类型、分值)、正确答案表(包含属性:题号、标准答案)、考生试卷表(包含属性:题号、考生号)、考生答案表(包含属性:题号、答案、考生号)和考生成绩表(包含属性:准考证号、成绩)。
并为每个表设置了能唯一确定每位考生的属性。其中考生信息表里设置属性(准考证号)为主关键字,并在考生考试信息表和考生成绩表里设置属性(准考证号)为考生信息表中属性(准考证号)的外部关键字。这样就可一一关联和对应每一位考生的信息。在考生考试信息表里为每位考生生成一属性(考生号)并设置其为此表的主关键字。以唯一确定每一位考生的考试时间和考试状态。在题库中设置属性(题号)为主关键字,这样就可以唯一确定每一题,防止题目的重复,也方便随机为考生抽题。并在考生试卷表、正确答案表和考生答案表里设置属性(题号)为外部关键字,这样就和题库中的题号一一对应起来,可减少这些表中的属性。从而实现整个数据库设计的完整性和一致性。在考生答案表和考生试卷表中同时设置属性(题号和考生号)为外部关键字,这样就把考生和题目联系起来。通过关联唯一确定每位考生的试卷和答案,也方便了以后的分发试卷和为每位考生评卷。
表间对应的局部和整体E-R图如下:
(1)考生信息和考生考试信息之间的联系:
……
(2)题库和考生试卷之间的联系
……
(3)考生试卷和考生试卷之间的联系
……
(4)题库和正确答案之间的联系
……
(5)考生信息和考生成绩之间的联系
……
(6)在线考试系统模型整体E-R图:
……
……
表的题注置于表格上方,居中。表号与标题间空2格,宋体5号 |
1)考生信息表,如表1所示。
表1 考生信息表
字段名 |
数据类型 |
主关键字 |
外部关键字 |
参照的表 |
取值说明 |
准考证号 |
char(6) |
Yes |
|
|
|
姓名 |
varchar(8) |
|
|
|
不允许为空 |
性别 |
char(2) |
|
|
|
只允许取“男”或“女” |
身份证号 |
char(18) |
|
|
|
|
所在学校 |
varchar(16) |
|
|
|
|
(2)所有表之间的关系图,如图1所示。
图的题注置于图的下方、居中。 图号与标题间空2格,宋体5号 |
各级小标题: 黑体,小4号,1.5倍行距 段前0.5行,段后0.5行 |
了实现表间数据的一致性和完整性,创建了触发器,具体代码如下:
/*考生信息表触发器*/
create trigger trigger_ksxx1
缩进2字符 Times New Roman,5号,1.5倍行距 段前0行,段后0行 |
for insert,update,delete
as
begin
if (SELECT LEN(准考证号) FROM inserted)<6
begin
raiserror('准考证号长度不对!',10,1)
rollback transaction
end
else
begin
print '添加成功!'
end
if exists(select * from inserted)
begin
print '身份证号已经存在!'
return
end
end
课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程。通过这次课程设计增加很多认识,在拿到课程设计题目时,没有像以前一样马上开始动手写代码,我先做了整体的分析,把要设计的表,表的属性,表间的关系全部弄清楚,并画了相应的关系图和E-R图,从而也就基本形成了这次设计的整体构架。在写代码的过程中明显感觉到很轻松,就是照着所设计的思路一步一步地进行。并得到以下总结:首先,流程是一切的根源,进度控制是项目顺利进行的基础。没有大局观,面对问题和变更就会不知所措了。其次,构架是很重要的,整体框架搭好,具体细节实现起来就是顺理成章的事了。最后,实践比一切空谈和理论更能学到东西。平时学的那些理论都不过是皮毛罢了,一旦不用很快就忘记,始终要在实践中才会发现问题才会努力去解决才能成长。
看到题目后就一直在思考怎么设计好这个数据库,从理论到实践,在这些日子里,可以说得是苦多于甜,但是可以学到很多很多的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,毕竟是第一次做这样的设计,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,例如在设计整体架构设计各表之间的关系时,总是考虑不够周到,数据的完整性和一致性把握不准。理论不够规范化,关系模式不够优越。为了实现这些,我也参阅了很多关于数据库设计方面的书,从中受益匪浅。特别是在实现为所有考生生成随机试题和给所有考生评卷的功能过程中,出现了很多难题,首先是怎么生成随机数的问题,另外还要考虑每位考生的试卷中不应该有一样的题目。并且控制好可为所有考生都产生试卷。评卷过程中的考生答案和正确答案的一一对照,怎么控制好游标来实现每循环一次正好为此考生评卷结束并且在考生成绩表中插入一条考生成绩的记录。这些内容都是通过参考资料才得以实现的。在这次课程设计过程中,也有很多没有想到的地方,通过和张老师的交流,完善了不少的功能。在此表示感谢。
最后,在这次课程设计过程中,深刻感觉到自己知识的缺乏,还需要课外继续学习,不断完善和增加自身的知识和经验。
另起一页 黑体,小4号,1.5倍行距,段前1.5行,段后1.5行 |
宋体,小5号,单倍行距 段前0行,段后0行 |
[1] 计算机丛书编委会. frontpage 2000 网页制作实用教程[M].北京:希望电子出版社,1997. 14-16.
[2] 廖彬山, 高峰霞. ASP动态网站开发教程[M].北京:清华大学出版社,1997. 14-16.
[3] 李劲. ASP数据库程序设计[J].上海:计算机研究,2000 ,(4):14-16.
[4] Liu Guangyuan,Yu Juegang, A Fast Learning Algorithm via A Hybrid Approach[J]. Journal of UEST of China, Vol.27, No.3, Jun.1998. 14-16.
[5] http://www.iti.tzc.edu.cn/ (台州学院计算机基础教学网)
说明: 1.M表示专著,J表示期刊,C表示论文集 2.参考文献不少于10篇,其中外文参考文献不少于1篇,参考文献的发表时间原则上应在近5年之内。 |
各类参考文献条目的编排格式及示例如下:
a.专著、学位论文、报告
[序号]主要责任者. 文献题名[文献类型标识]. 出版地: 出版者, 出版年. 起止页码(任选).
[1] 刘国钧, 陈业, 王兴因. 图书馆目录[M]. 北京: 高等教育出版社, 1987. 13-17.
b. 期刊文章
[序号]主要责任者. 文献题名[J]. 刊名, 年, 卷(期): 起止页码.
[2] 何保田. 读顾城<南明史>[J]. 中国史研究, 1998, (3): 167-169.
[3] 金显一, 王昌伙, 江磊. 一种用于检测的的技术[J]. 清华大学学报(自然科学版), 1993, 33(3): 34-39.
c. 报纸文章
[序号] 主要责任者. 文献题名[N]. 报纸名, 出版日期(版次).
[4] 谢田. 创造学习的新思路[N]. 人民日报, 1998-12-25(10).
另起一页 黑体,小3号 行距1.5行 段前1.5行,段后1.5行 |
对指导老师和给予指导或协助完成设计工作的组织和个人表示感谢。文字要简捷、实事求是,切忌浮夸和庸俗之词。
内容:首行缩进2字符, 宋体,小4号,1.5倍行距 段前0行,段后0行 |