数据库课程设计试题库管理系统.docx

上传人:b****5 文档编号:7006943 上传时间:2023-01-16 格式:DOCX 页数:21 大小:463.47KB
下载 相关 举报
数据库课程设计试题库管理系统.docx_第1页
第1页 / 共21页
数据库课程设计试题库管理系统.docx_第2页
第2页 / 共21页
数据库课程设计试题库管理系统.docx_第3页
第3页 / 共21页
数据库课程设计试题库管理系统.docx_第4页
第4页 / 共21页
数据库课程设计试题库管理系统.docx_第5页
第5页 / 共21页
点击查看更多>>
下载资源
资源描述

数据库课程设计试题库管理系统.docx

《数据库课程设计试题库管理系统.docx》由会员分享,可在线阅读,更多相关《数据库课程设计试题库管理系统.docx(21页珍藏版)》请在冰豆网上搜索。

数据库课程设计试题库管理系统.docx

数据库课程设计试题库管理系统

一、课题名称:

试题库管理系统

二、课题要求:

结合所学知识,开发一个简易的试题库管理系统。

三、实验目的:

结合本学期所学知识,使学生温故而知新,并在实践操作上增加对数据库系统设计的认识和理解。

四、实验步骤:

五、1、需求分析

2、概念结构设计

3、逻辑结构设计

4、物理结构设计

5、数据库实施

6、数据库运行和维护

六、课程开发内容:

5.1需求分析

5.1.1系统调查

对现行的试题库管理业务进行了详细的调查和研究是了解系统需求和进行系统分析和设计的重要基础工作,因此要对我们的试题库管理工作进行全面的细致的调查研究。

首先与相关的老师进行了交流和沟通,了解他们对试题库管理的看法,看看有没有什么新的要求,在这个基础上,结合自身所掌握的知识水平,量力而行开发相应的试题库管理系统。

在调查中我们可以发现,高校的试题库是极其庞大的,如果没有一个智能的系统将人们从手工阶段解放出来,那么一个庞大的、完整的试题库是无法有效运行的,甚至出题的老师也无法有效、准确地在试题库中抽取自己所需要的试题,这等于说是一个没有实际运用价值的试题库。

所以说,他们对希望有这样的一个可以详细地表示试题属性的这样的一个试题库。

那么今天我们就围绕着这样的一个目标展开我们的工作。

5.1.2用户需求

要设计一个性能良好的管理系统,明确用户的应用环境对

系统的要求是首要的和基本的。

本系统从以下四个方面对用户需求进行了分析:

1)用户的需求信息:

出题老师可以看到题目所属的类型和题目所考察的内容以及试题的分值和难度等级。

当然这个权限也给管理员和系主任。

2)用户的处理要求:

管理员可以对试题库进行插入和删除操作,出题老师可以凭借自己自定义的选题要求在试题库中选择自己需求的试题,这个权限也对系主任开放。

3)对系统的适应性、通用性要求:

要求系统不仅能提供一门课程的试题库管理,还要综合多么学科进行管理,建立一个高效的试题库管理系统。

4)对系统的安全性要求,要求进入系统必须进行口令校验。

 

5.1.3系统业务流程图

详细调查之后,结合现行试题库管理模式,为开放本

统而绘出的试题库管理业务流程图。

如图5.1.3.1

图5.1.3.1试题库管理系统业务流程图

 

5.2系统逻辑方案

系统分析的主要成果是系统的逻辑模型。

本系统的逻辑模型主要是以系统的数据流图和数据字典为主要描述工具。

5.2.1数据流图(简称为DFD)

数据流图是组织中信息运动的抽象。

是在调研的基础上,从系统的科学性、管理的合理性、实际运动的可行性角度出发。

将信息处理功能和彼此之间的联系自顶向下,逐层分解,从逻辑上精确地描述系统应具有的数据加工功能、数据输入、数据输出、数据存储及数据来源和去向(外部实体)等项目。

首先,分析试题库管理系统的总体情况,划分系统边界,识别系统的数据来源和去处,确定外部实体,得出系统的顶层数据流程图;

然后划分出几个主要的信息管理功能,并明确各功能之间的联系,绘制出数据流程图。

数据流程图的符号如图5.2.1.1所示

外部实体处理数据流数据存储

图5.2.1.1数据流程图的符号

数据流程图如下5.2.1.2所示:

(由局部到全部)

 

 

 

 

 

总的流程图:

 

图5.2.1.2数据流流程图

 

5.3概念结构设计

5.3.1数据模型

数据模型包含三种相互关联的信息:

数据对象、描述数据对象的属性及数据对象彼此间的相互连接的关系。

1)数据对象数据对象是对软件必须理解的复合信息的表示。

所谓复合信息是指具有一系列不同性质或属性的事物,因此只有单个值的事物(例如宽度)不是数据对象。

2)属性属性定义了数据对象的性质。

属性可以有下述的三种不同的特性之一,也就是说,可以用属性来:

为数据对象的实例命名;描述该实例;引用一个数据对象的实例。

此外,必须把一个或多个属性定义为“标识符”,即当我们希望找到数据对象的一个实例时,标识符属性成为“关键字”。

3)关系数据对象彼此之间相互连接的方式称为关系,也称为联系。

联系分为:

一对一联系(1:

1);一对多联系(1:

N);多对多联系(M:

N)。

在实体-关系图中使用的符号如下:

用矩形框表示实体

用圆角矩形框表示实体的属性

用菱形框表示实体间的相互关系

用无向边把实体或关系与其属性相连

图2实体关系图中使用的符号

1)试题E-R图如下:

 

2)试卷E-R图如下:

 

3)用户E-R图如下:

 

4)用户,试题,试卷三者的E-R图:

 

图6用户,试题,试卷E-R图

 

 

总体E-R图

 

5.4系统分析与总体设计

经过需求分析阶段的工作,系统已经清楚“做什么”,现在是决定“怎样做”。

总体设计的基本目的就是回答“概括地说,系统应该如何实现?

”这个问题,所以总体设计又称为概要设计和初步设计。

通过这个阶段的工作将划分出组成系统的物理元素——程序、文件、数据库、人工过程和文档等等,但是每个物理元素仍然处于黑盒子级,这些黑盒子里的具体内容就在以后仔细设计。

总体设计阶段的另一项任务是设计软件的结构,也就是要确定系统中每个程序是由哪些模块组成,以及模块之间的关系。

5.4.1.1数据库设计

数据库设计是在需求分析的基础上,如何对应用系统所涉及的数据进行分类、描述、关联和存取的一种技术。

数据库设计通常是在一个通用的DBMS支持下进行的,对于一个给定的应用环境,构造最优的数据库模式,使之能够有效的存储数据,满足用户的各种需要。

数据库是信息系统的核心和基础,它将大量的数据按一定的模型组织起来,提供存储、维护、检索数据的功能。

只有对数据库进行合理的逻辑设计和有效的物理设计,才能开发出完善而有效的信息系统,用户才能方便、及时和准确地从数据库中获取所需的信息。

数据库设计的概念结构设计已经在上面的需求分析中给出(E-R图),这里就只介绍利用DBMS系统提供的数据定义语言创建数据库表

5.4.1.2定义

静态数据系统固定在内的描述系统实现功能的一部分数据。

动态数据在软件运行过程中,用户输入后的系统输出给用户的一部分数据,是系统要处理的数据。

数据字典数据字典中的名字都是一些属性与内容的抽象和概括,它们的特点是数据的“严密性”和“精确性”,没有半点含糊。

5.4.1.3静态数据

静态数据是系统内部有关的数据结构与操作规程。

具体可包括:

单项选择题表dxt

多项选择题表duoxt

填空题表tkt

简答题表jdt

另外有:

多选题答案表duoxtdaan

单选题答案表dxtdaan

多选题题目表duoxttk

单选题题目表dxttk

5.4.1.4动态数据

动态数据包括程序运行时输入和输出的数据,具体是数据库的各个表的各个不同元组与属性值。

5.4.1.5试题库管理系统数据库

本系统SQLServer2000为后台数据库。

主要包括34个表,其中有20个系统表,下面给出7个代表表的设计:

(1)单项选择题表dxt

数据来源:

试题录入模块直接输入

表1单项选择题表

列名

数据类型

长度

number

nandu

zhisd

ques

op1

op2

op3

op4

answ

Char

Char

Char

Char

Char

Char

Char

Char

Char

5

2

50

1000

500

500

500

500

2

单项选择题设计了序号,难度,知识点,问题,选项1,选项2,选项3,选项4,以及答案9个属性,其中后面8个都是要用户在录入试题时(录入试题模块中)添加,对于一个单项选择题,这8个属性都是缺一不可的。

序号为自动生成。

(2)多项选择题表duoxt

数据来源:

试题录入模块直接输入

表2多项选择题表

列名

数据类型

长度

number

nandu

zhisd

ques

op1

op2

op3

op4

answ

Char

Char

Char

Char

Char

Char

Char

Char

Char

5

2

50

1000

500

500

500

500

4

同单项选择一样,多项选择题设计了序号,难度,知识点,问题,选项1,选项2,选项3,选项4,以及答案9个属性,其中后面8个都是要用户在录入试题时(录入试题模块中)添加。

(3)填空题表:

tkt

数据来源:

试题录入模块直接输入

表3填空题表

列名

数据类型

长度

number

nandu

zhisd

ques

Char

Char

Char

Char

5

2

50

1000

续表4

列名

数据类型

长度

answ1

answ2

answ3

answ4

Char

Char

Char

Char

50

50

50

50

填空题一共设计了序号,难度,知识点,问题,答案1,答案2,答案3,答案4,8个属性,其中序号,难度,知识点,问题,答案1,是都不能为空的,答案2,答案3,答案4。

根据填空题所需要的空位而定。

序号为自动生成。

(4)简答题表:

jdt

数据来源:

试题录入模块直接输入

表4简答题表

列名

数据类型

长度

number

nandu

zhisd

ques

answ

Char

Char

Char

Char

Char

5

2

50

1000

1000

简答题一共设计了序号,难度,知识点,问题,答案,除了序号是在录入试题时自动生成以外,其它都是要求录入试题的时候认真填写的。

(5)多选题答案表duoxtdaan

数据来源:

自动生成或者手动生成试卷时自动写入

表5多选题答案表

列名

数据类型

长度

number

answ

Char

Char

5

4

多选题答案表是为储存新生成试卷多选题答案而设计的,为后面的试卷评分做准备。

(6)多选题题目表duoxttm

数据来源:

自动生成或者手动生成试卷时自动写入

表6多选题题目表

列名

数据类型

长度

number

ques

ch1

ch2

ch3

ch4

Char

Char

Char

Char

Char

Char

5

1000

500

500

500

500

多选题答案表是为储存新生成试卷多选题题目而设计的。

另外还有单选题答案表(dxtdaan),单选题题目表(dxttk)和上面的多选题的设计是基本一样,区别是单选题的选项A,B,C,D用op1,op2,op3,op4描述。

六数据操作

建表及数据库

CreatedatabaseSTKGLsysterm

go

useSTKGLsysterm

使用SQL脚本建立单项选择题表(dxt)。

Createtabledxt(numberchar(5)primarykey,

nanduchar

(2);

zhisdchar(50);

queschar(1000);

op1char(500);

op2char(500);

op3char(500);

op4char(500);

answchar(4);

使用SQL脚本建立多项选择题表(duoxt)。

Createtableduoxt(numberchar(5)primarykey,

nanduchar

(2);

zhisdchar(50);

queschar(1000);

op1char(500);

op2char(500);

op3char(500);

op4char(500);

answchar(4);

 

使用SQL脚本建立填空题表(tkt)。

Createtabletkt(numberchar(5)primarykey,

nanduchar

(2);

zhisdchar(50);

queschar(1000);

answ1char(500);

answ2char(500);

answ3char(500);

answ4char(500);

使用SQL脚本建立简答题表(dxt)。

Createtablejdt(numberchar(5)primarykey,

nanduchar

(2);

zhisdchar(50);

queschar(1000);

answchar(1000);

使用SQL脚本建立多选题答案表(duoxtdaan)。

Createtableduoxtdaan(numberchar(5)primarykey,

answchar(4);

使用SQL脚本建立多项选择题题目表(duoxttm)。

Createtableduoxttm(numberchar(5)primarykey,

nanduchar

(2);

queschar(1000);

ch1char(500);

ch2char(500);

ch3char(500);

ch4char(500);

插入数据

1、dxt

INSERTINTOdxtVALUES('4','1','004',‘10022’,’1024’,’1025’,’1026’,’1027’,’1’);

INSERTINTOdxtVALUES('7','2','001',‘10027,’1024’,’1027,’1026’,’1021’,’1’);

INSERTINTOdxtVALUES('5','0','007',‘10023’,’1025’,’1025’,’1025’,’1025’,’0’);

INSERTINTOdxtVALUES('7,'0,'008',‘10024’,’1026’,’1022,’1026’,’1026’,’1’);

 

2、duoxt

INSERTINTOduoxtVALUES('7,'0','02,‘10033’,’1424’,’1111’,’1241’,’1111’,’1’);

INSERTINTOduoxtVALUES('5,'1','026',‘10034’,’1231’,’1112’,’1424’,’1112’,’2’);

INSERTINTOduoxtVALUES('8','0','027',‘10035’,’1113’,’1113’,’1113’,’1113’,’3’);

INSERTINTOduoxtVALUES('9','1','028',‘10036’,’1114’,’1114’,’1114’,’1114’,’4’);

3、tkt

INSERTINTOtktVALUES('2','0','012',‘10045’,’1024’,’1023’,’1012’,’1027’);

INSERTINTOtktVALUES('5','1','011',‘10042’,’1045’,’1024’,’1024’,’1016’);

INSERTINTOtktVALUES('5','0','013',‘10047’,’1025’,’1025’,’1025’,’1025’);

INSERTINTOtktVALUES('6','1','014',‘10048’,’1022’,’1026’,’1025’,’1024’’)

4、jdt

INSERTINTOjdtVALUES('1','0','011',‘10045’,’10026’)

INSERTINTOjdtVALUES('2','1','012',‘10046’,’10027’)

INSERTINTOjdtVALUES('3','0','013',‘10047’,’10028’)

INSERTINTOjdtVALUES('4','1','014',‘10048’,’10029’)

插入

插入一道简答题记录('3','0','013',‘10047’,’10028’)

INSERTINTOjdt(number,nandu,zhisd,ques,answ)

VALUES('3','0','013',‘10047’,’10028’);

修改

修改某一个元组的值

例将多选题10025的考试内容改成微积分

UPDATEduoxt

SETcourse=‘微积分’

WHEREnumber=‘10022’;

删除

删除一个或多个元组

例删除单项选择题为10046的记录

DELETEFROMdxt

WHEREques=‘10046’;

查询

单表查询

1、查询多项选择题序号为10156的难度和知识点

SELECTnandu,zhisd

FROMduoxt

WHEREduoxtdeptLIKE'10156'ESCAPE'/'

连接查询

创建视图

1.dxt表的视图

CreateviewI_dxt

As

Selectnumber,nandu,zhisd,ques,op1,op2,op3,op4answ;

Fromdxt

2.duoxt表的视图

CreateviewI_duoxt

As

Selectnumber,nandu,zhisd,ques,op1,op2,op3,op4answ;

Fromduoxt

3.tkt表的视图

CreateviewI_tkt

As

Selectnumber,nandu,zhisd,ques,answ1,answ2,answ3,answ4,

Fromtkt;

六、心得体会

这次的课程设计,在同学这段时间的努力下,和其他组同学的帮助下,顺利地完成了数据库系统概论课程设计——试卷库管理系统。

这次课程设计是对我们这一学期所学知识的一次总结,也是一次检验,更是我们对我们自己的一次挑战。

通过这次课程设计,我们都发现对SQL数据库的学习还是非常不够的。

但我们通过自己的努力,独立完成了本系统的构思、设计、调试及其完善。

这个系统的设计能够基本满足学校教务处和教师对试卷进行管理,更好的服务广大同学。

当然我的设计中也存在着很多不足之处比如用户的权限还不是很完善,对表的操作权限可能会存在一些问题。

在系统设计中,我遇到了很多的困难。

我们这门课程成绩本就不是很好,特别是操作过程中遇到很多问题,比如对E-R图的创建出现了多次错误,设计思路上多次出现问题,结果总是调试不出来等等诸多问题。

从开始的无从下手到慢慢入手在到思路清晰,我一步一个脚印从无到有学会了很多很多。

我想说只有不断实践才是成功的关键!

当然,我离将设计做得很完美的程度,还是存在非常之大的差距。

本次课程设计在很多地方需要完善,这需要我在今后的学习中,不断提高对自身的要求,及时掌握新的知识,多多参与实践,在实践中锻炼和提高自己的能力。

同时我们也学到了团队合作的重要,缺少谁我们都不能顺便了完成我们的任务,我们缺少谁都将直接影响到我们的最终结果。

因此这是我们此次学到最最最重要的一点就是我们又一次体会到了、学会了团队合作精神。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 初中教育 > 语文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1