开发实践教程1:试卷生成系统2 数据库设计
Posted VB.Net
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了开发实践教程1:试卷生成系统2 数据库设计相关的知识,希望对你有一定的参考价值。
版权声明:本文为博主原创文章,转载请在显著位置标明本文出处以及作者网名,未经作者允许不得用于商业目的。
《试卷生成系统》包含以下10个数据表:
2.1 《考试类型表一级》
为了方便管理,整个试卷分类为三个层次的考试类型,其中《考试类型表一级》表存储最基本的分类,例如:
小学、初中、高中、大学、其它
设计如下:
图1-1
2.2 《考试类型表二级》
试卷所属分类的第二级,例如在《考试类型表一级》的“高中”下可以继续分类:
高中一年级、高中二年级、高中三年级
设计如下:
图1-2
表内部分字段的说明:
一级类型:对应《考试类型表一级》字段“编号”。
2.3 《考试类型表三级》
试卷所属分类的第三级,例如在《考试类型表二级》的“高中一年级”下可以继续分类:
高一语文、高一数学、高一物理
设计如下:
图1-3
表内部分字段的说明:
二级类型:对应《考试类型表二级》字段“编号”。
2.4 《用户表》
《用户表》用于管理用户的基本信息,使用本系统需要先申请,由管理员批准后才可以使用。设计如下:
图1-4
表内部分字段的说明:
密码:需要使用MD5进行加密处理。
状态:分为 申请、启用、禁用、停用、管理 五种。“申请”表示该用户是新申请用户,需要管理员进行审核;“启用”表示该用户经过了管理员审核,可以使用本系统;“禁用”表示该用户未能通过管理员审核,不能使用本系统;“停用”表示该用户曾经通过了审核,但是由于某种原因(例如调离、退休等)不能继续使用本系统;“管理”只能针对管理员,普通用户没有该状态。
2.5 《题类型表》
《题类型表》用来存储题目相应的类型。例如单选题、多选题、判断题等。设计如下:
图1-5
2.6 《图表》
《图表》用于存放试卷中使用到的相关图片的二进制数据。由于初始设计时未考虑出题可能会使用图片,因此《图表》是后面加入的,且只考虑了题目中出现图片,答案中如果需要图片,可以参考具体代码增加。设计如下:
图1-6
2.7 《题表》
《题表》用来保存用户录入的题目、答案以及其它相关信息。设计如下:
图1-7
表内部分字段的说明:
题类型:对应《题类型表》字段“编号”。
图片:对应《图表》字段“编号”。
选项:用于保存选择题(单选和多选)的选项。由于初始考虑不周,事实上此字段内容可以和“题目”字段内容合并。后来考虑到选项的显示格式,这里仍然会使用此字段。
考试类型:对应《考试类型表三级》字段“编号”。
录入人ID:对应《用户表》字段“编号”。
2.8 《用户试卷表》
《用户试卷表》保存了用户自己设计的试卷信息,在后面开发时觉得“试卷”一词不准确,在代码中将“试卷”修改为“试卷”,数据库中表名以及字段名称未作改变。设计如下:
图1-8
表内部分字段的说明:
试卷名称:例如“高中二年级计算机考试”。
试卷类型:对应《考试类型表三级》字段“编号”。
题型信息:保存该试卷中所有题型对应数量、分数。存储数据为:题型1,数量1,分数1;题型2,数量2,分数2……,在实际试卷中,会存在题型下每个题目分数不一致的情况,具体需要结合《用户试卷详表》进行分析。
录入人ID:对应《用户表》字段“编号”。
是否有效:对于不完善的试卷(只有试卷信息而没有保存具体题目的试卷),对应”否“,完善的试卷(既包含试卷信息,又包含具体题目的试卷),对应”是“。
2.9 《用户试卷详表》
《用户试卷详表》保存每个试卷与其对应考题的关联。设计如下:
图1-9
表内部分字段的说明:
试卷编号:对应《用户试卷表》字段“编号”。
题编号:对应《题表》字段“编号”。
题目序号:该题目在生成试卷时的排序序号。
2-10 数据表其它信息
上述数据表中均包含字段”编号“,此字段自动编号,且为每个表的主键。
整个数据表的关系如下图:
图1-10
由于.net平台下C#和vb.NET很相似,本文也可以为C#爱好者提供的参考。
学习更多vb.net知识,请参看 vb.net 教程 目录
以上是关于开发实践教程1:试卷生成系统2 数据库设计的主要内容,如果未能解决你的问题,请参考以下文章
开发实践教程1:试卷生成系统6.7 试卷生成(FormTestPaper)
开发实践教程1:试卷生成系统6.6 考题(FormExamSingle)