




已阅读5页,还剩36页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
II 江苏 文理学院 学学士士学学位位论论文文 计算机等级考试系统的设计和实现计算机等级考试系统的设计和实现 学科专业 信息与计算科学 研究方向 数据库技术 提交论文日期 2013 年 5 月 22 日 论文答辩日期 2013 年 6 月 10 日 学位授予单位 重庆文理学院 2014 6 22 2013 级信息与计算科学专业毕业论文 I 目目 录录 中文摘要中文摘要 I 英文摘要英文摘要 II 引言引言 1 1 1 课题的背景和提出课题的背景和提出 1 1 2 研究的目的和意义研究的目的和意义 1 1 3 国内外研究现状国内外研究现状 1 1 3 1 国内研究现状 1 1 3 2 国外研究现状 2 1 4 关键问题关键问题 2 1 5 开发环境及人员分工情况开发环境及人员分工情况 2 1 5 1 开发环境 2 1 5 2 人员分工情况 3 2 系统需求分析系统需求分析 5 2 1 可行性分析可行性分析 5 2 1 1 经济可行性 5 2 1 2 技术可行性 5 2 1 3 时机可行性 5 2 1 4 管理可行性 5 2 1 5 用途可行性 5 2 1 6 安全可行性 6 2 2 考试系统功能分析考试系统功能分析 6 2 2 1 考试策略 6 2 2 2 系统的数据流图 7 2 2 3 用户界面分析 7 2 2 4 系统安全性分析 7 3 系统设计系统设计 8 3 1 设计思想设计思想 8 3 2 模块的划分与功能模块的划分与功能 8 4 ACCESS 数据库的建立数据库的建立 10 4 1 构建数据库解决方案构建数据库解决方案 10 4 2 设计考试系统数据库设计考试系统数据库 10 II 4 2 1 数据表的建立 10 4 2 2 数据表的关系 14 4 3 ACCESS数据库的安全性数据库的安全性 15 5 系统的实现系统的实现 17 5 1 计算机等级考试系统应用程序框架计算机等级考试系统应用程序框架 17 5 1 1 服务端管理程序框架 17 5 1 2 客户端考试程序框架 17 5 1 3 建立 Visual Basic 和数据库的接口 18 5 1 4 引用 ADO 库文件 18 5 1 5 建立数据库的连接 18 5 1 6 创建数据源 19 5 2 服务端主程序的建立服务端主程序的建立 19 5 2 1 统一功能模块与主程序界面 19 5 2 3 系统锁定功能 21 5 3 实现考试和题库管理实现考试和题库管理 23 5 3 1 实现考试管理模块 23 5 3 2 实现题库的管理 24 5 3 3 生成考卷 26 5 4 考试系统客户端的建立考试系统客户端的建立 26 5 4 1 验证考生准考证号码 26 5 4 3 启动考试过程 27 5 4 4 题目显示 28 5 4 6 记录考生的题目答案和题目状态 29 5 4 7 提交试卷 29 5 4 8 实现实时计时功能 29 5 4 9 答案汇总显示 30 5 4 10 试卷的评阅与成绩计算 30 6 结语结语 32 致谢致谢 33 参考文献参考文献 34 致谢致谢 33 参考文献参考文献 34 2013 级信息与计算科学专业毕业论文 I 计算机等级考试系统的设计和实现计算机等级考试系统的设计和实现 考试管理考试管理 信息与计算科学专业一班 指导教师 李祥 摘要 摘要 本文以开发一个计算机等级考试系统为背景 介绍了考试方式的历史 本文以开发一个计算机等级考试系统为背景 介绍了考试方式的历史 现状以及使用现状以及使用 Visual Basic6 0 设计前台控制程序和用设计前台控制程序和用 Access2003 建立后台数据建立后台数据 库的概况 详细介绍了在计算机等级考试系统中 实现机式考试的功能模块的库的概况 详细介绍了在计算机等级考试系统中 实现机式考试的功能模块的 设计 包括本地服务系统中的考试管理和本地考试系统中的激活考试 随机生设计 包括本地服务系统中的考试管理和本地考试系统中的激活考试 随机生 成试卷 答题系统 自动计时 自动阅卷 考试分析等 该系统通过权限控制 成试卷 答题系统 自动计时 自动阅卷 考试分析等 该系统通过权限控制 面向普通学生和考试管理员 通过改变传统的考试模式 利用在线式考试系统 面向普通学生和考试管理员 通过改变传统的考试模式 利用在线式考试系统 可以节约考试成本 提高考试工作的效率 可以节约考试成本 提高考试工作的效率 关键词 关键词 等级考试 等级考试 Access 数据库 数据库 Visual Basic6 0 II Design and Implementation Of Computer Rank Examination System Examination Management Major Information and Computing Science Class 1 Author Yang Guo Supervisor GuoJing Abstract This thesis introduces briefly the past and present ways of the CRE Computer Rank Examination System the design of the foreground control program with Visual Basic 6 0 and the building of a background database with Access 2003 the purpose of which is to develop a CRE system Therefore it describes the design of functional module for operational examination which includes the examination management in local server system activating test random generating paper answering system automatic timing and paper checking examination analysis and so on This system is applied to students and examination administrators by limiting the authority It may help to reduce the cost and improve the efficiency by having the examination on line not in the traditional way Keyword Rank Examination Access2003 Visual Basic6 0 2013 级信息与计算科学专业毕业论文 1 引言引言 1 1 课题的背景和提出 在当今的信息社会中 学校与社会上的各种考试仍大都采用传统的纸质考试方式 在此方式下 组织一次考试至少要经过五个步骤 即人工出卷 考生考试 人工阅卷 成绩评估和试卷分析 显然 随着考试类型的不断增加及考试要求的不断提高 教师 的工作量将会越来越大 并且其工作将是一件十分繁琐和非常容易出错的事情 可以 说传统的考试方式已经不能适应现代考试的需要 目前 计算机和网络应用在各行各业广泛应用 特别在高校 所以大多数学生也 已经具备了利用网络进行交流和学习的能力 可是在教学这个环节上 对于传统的教 学模式仍然过分依赖 而对于网络的开发和应用程度还远远不够 注意到这一点 本 人决定开发一个基于网络的计算机等级考试系统 希望充分利用现有的计算机和网络 资源 1 2 研究的目的和意义 鉴于社会的客观需求 计算机等级考试系统将针对传统考试的弊端 更省时更省 力更准确地测试考生计算机水平 并方便之后的阅卷 查分和试卷分析工作 考生通 过登陆界面进行有效的身份验证登录 包括考号的输入 考生按要求在规定的时间内 进行答题 当到达规定的时间后 系统将自动予以提交 且其答案和分数将被记入库 中以供审核和查阅 并作为成绩评估和试卷分析的历史数据 另外 还可完全由计算 机自动抽取试题库中的各类试题组成各种试卷 其内容会随着库中试题的改变而改变 不妨把它称之为实时的互动的试卷 用计算机进行标准化考试 极大地减轻了出题者 应试者和试卷评阅者的劳动 也减轻了由于人为因素造成的错误 同时 计算机标准化考试 也使得考试更加公平 公正 1 3 国内外研究现状 1 3 1 国内研究现状 现阶段 学校与社会上的各种考试大都采用传统的纸质考试方式 在此方式下 组织一次考试至少要经过五个步骤 即出卷 考生考试 阅卷 成绩评估和试卷分析 显然 随着考试类型的不断增加及考试要求的不断提高 教师的工作量将会越来越大 并且其工作将是一件十分繁琐和非常容易出错的事情 可以说传统的考试方式已经不 能适应现代考试的需要 随着计算机应用的迅猛发展 网络应用不断扩大 如远程教 育和虚拟大学的出现等等 人们迫切要求利用这些技术来进行在线考试 以减轻教师 的工作负担及提高工作效率 从而提高考试的质量 使考试更趋于公证 客观 激发 计算机等级考试系统的设计和实现 2 学生的学习兴趣 理论方面 近几年来有较大发展 尤其在在线等级考试系统的建设理论方面有较 大进展 技术也日渐成熟 目前国内有很多公司团体研究开发了基于 Web 的考试系统 基本上是传统教学中的考试向网络方向的迁移 虽然现在有一些基于 Web 的考试系统 但是计算机等级考试系统的研究却比较少 1 3 2 国外研究现状 当今许多国家都十分注重计算机教育事业的发展 特别是在线考试系统的研究 在发达国家 在线考试系统已经趋于成熟 不仅学校运用计算机考试系统来测试评估 学生的计算机水平 还有许多国际著名的计算机公司所举办的各种认证考试绝大部分 采用这种方式 例如 著名的 Sylvan Promentic 国际考试中心和 VUE 虚拟大学 是实行 计算机化考试的考试中心 目前流行的 MCP Microsoft Certified Professional 微软认 证专家 系列考试 CCCP 系列考试 HP UX 系列考试 以及熟悉的 TOFEL GRE 等 都是通过上面提到的两个国际考试中心实行的 机考 1 4 关键问题 1 人机界面的设计和考试的管理 2 对数据库数据的操作控制 3 前台 VB 应用程序与后台 Access 数据库的关联 1 5 开发环境及人员分工情况 1 5 1 开发环境 1 选择 Visual Basic6 0 作为前台开发工具 Visual Basic6 0 能够成为当今最流行的软件开发工具之一 是与其卓越的性能是 分不开的 它汇集了 Microsoft 公司的技术精华 不仅全面使用了面向对象的技术 而 且在编译技术也作了优化 与其它开发工具相比 Visual Basic6 0 具有明显的优势 使用 Basic6 0 作为基础 开发难度低 开发工作量小 Visual Basic6 0 开发环境十分友好 强大的可视化开发方式能够帮助用户轻松地 开发出多种类型的应用程序 使用微软发行的编程软件能够提供与 Windows 操作系统的最大兼容性 微软公司开发的编程环境 Visual Basic 不仅能够提供强大的图形支持 而且能够 是应用程序与硬件相对独立 WindowsAPI 为实现应用程序提供了强大的扩展功能的支持 为用户提供了许多有用的调试和分析工具 能够帮助用户寻找错误和提高应用程 序效率 拥有解释方式和编译方式两种运行方式 使得应用程序的调试更加方便 轻松 2013 级信息与计算科学专业毕业论文 3 鉴于以上优点 选择了 Visual Basic 6 0 作为 计算机等级考试系统 项目的开发工 具 2 选择了 Access2003 建立后台数据库 最新版本的 Access2003 除了保持原有的 Access2002 数据库的功能特性之外 在数 据库的应用上进行了一定程度的扩张 支持更加灵活和智能的操作 并支持 XML 文档 数据源进行处理 Access 虽然是小型捉摸数据库管理系统 但是它提供的数据库功能却非常强大 不仅包括了一般数据库管理系统中的 SQL Structure Query Language 结构化查询语言 语言查询 而且支持数据的完整性和约束 包括 主键约束和实体完整性 外键约束 和参照完整性 CHICK 约束 UNIQUE 等 虽然 Access 也并不是十全十美 但是对于小型企业和小型数据库而言 这些功能 已经足够了 如果要追求那些复杂的数据库管理机制 还是应该使用大型 基于数据 仓库技术的企业级数据库管理系统 如 Microsoft SQL Server 和 Oracle 等 现在 Access2003 已经成为了功能强大 操作简单的关系数据库管理软件 而且由 于它集成在 OfficeXP 组件中 更容易获得 只要安装 OfficeXP 就可以在安装过程中 选择安装 Access2003 了 1 5 2 人员分工情况 计算机等级考试系统的功能模块主要为本地服务系统 本地考试系统 远程查询 系统三部分 每个主要功能模块下又具体分为若干个小模块 系统整体功能结构如图 1 1 所示 本人负责的考试系统主要是对本地服务系统中的考试管理和本地考试系统中激活 考试 答题系统 自动计时 自动阅卷几个模块的设计 另一同学负责的考务系统主要是对本地服务系统中的考生管理 本地考试系统中 的输出成绩单和远程查询系统的设计 计算机等级考试系统的设计和实现 4 考试系统 本地考试系统 激活考试 答题系统 自动计时 自动阅卷 输出成绩单 本地服务系统 考生管理 注册考生 禁用考生 删除考生 修改考生 信息 考试管理 增加科目 删除科目 禁用科目 远程查询系统 有效的考试项目 考生信息 考试成绩 考试状态 正在考试的人数等 数 准考生号 管理员 某一天的考试进程 修改科目信息 增加题目 删除科目 修改题目 禁用题目 数据查询 某一天的考试进程 考生成绩 准考证号 图 1 系统整体功能结构图 2013 级信息与计算科学专业毕业论文 5 2 系统需求分析系统需求分析 2 1 可行性分析 可行性分析也称为可行性研究 是在系统调查的基础上 针对新系统的开发是否 具备必要性和可能性 对新系统的开发从技术 经济 社会的方面进行分析和研究 以避免投资失误 保证新系统的开发成功 可行性研究的目的就是用最小的代价在尽 可能短的时间内确定问题是否能够解决 该系统的可行性分析包括以下几个方面的内 容 2 1 1 经济可行性 经济可行性主要是对项目的经济效益进行评价 考试系统的设计作为一个毕业设 计 无需开发经费 对于学院在经济上是可以接受的 并且本系统实施后可以显著提 高考试效率 有助于学院完全实现网络化管理 所以本系统在经济上是可行的 2 1 2 技术可行性 技术可行性分析主要分析技术条件能否顺利完成开发工作 硬 软件能否满足开 发者的需要等 考试系统的设计采用了当前较流行的 Visual Basic6 0 进行开发 而数 据库服务器选用微软公司的 Access2003 数据库 它是功能强大 操作简单的关系数据 库管理软件 它的灵活性 安全性和易用性为数据库编程提供了良好的条件 因此 系统的软件开发平台已成熟可行 硬件方面 科技飞速发展的今天 硬件更新的速度 越来越快 容量越来越大 可靠性越来越高 价格越来越低 其硬件平台完全能满足 此系统的需要 2 1 3 时机可行性 目前 大学的校园网路覆盖了教学区和学生区的主要建筑物 从而满足学院内各 系 各职能部门 各直属单位上网需求 学校良好的网络设施为开发使用计算机等级 考试系统提供了坚实的基础 2 1 4 管理可行性 管理可行性主要是教务处管理人员大力支持 系领导认同 现有的管理制度和方 法科学 规章制度齐全 原始数据正确等 规章制度和管理方法为系统的建设提供了 制度保障 2 1 5 用途可行性 用途可行性主要是此考试系统的应用范围较广 并不局限于计算机等级考试 其 它同类型考试也可使用该系统 同时 在考试系统中 大量的工作是输入数据和选择 答案 所以考试系统主要是通过键盘和鼠标进行人机交互 并不需要附加的交互方式 所以在用途上是可行的 计算机等级考试系统的设计和实现 6 综上所述 此系统开发目标已明确 在技术和经济等方面都可行 并且投入少 见效快 因此考试系统的开发是完全可行的 2 1 6 安全可行性 安全可行性主要是该系统对操作人员进行了权限设置 通过设置权限密码的形式 使拥有权限的人员才能对系统进行相关操作 Access2003 对数据库的安全设置较简单 Visual Basic6 0 也能实现密码功能的设计 所以该系统在安全性上是可行的 2 2 考试系统功能分析 2 2 1 考试策略 考试系统主要是用 Visual Basic 和 Access2003 实现本地考试系统和本地服务系统 中考试管理的设计 一个完整的计算机考试 要经过注册考生 注册考试 考试 取得成绩单等步骤 考试流程如图 2 1 所示 开始 考生拥有 准考证号 号 号 已注册考 试 在指定时 间开始考 试 开始考试 输出成绩单 考试结束 注册考生信息 注册考试 考试过期 N N N Y Y Y N 2013 级信息与计算科学专业毕业论文 7 图 2 考试流程图 首先 考生要使用考试系统进行考试 就必须要进行考生注册 确认考生身份 考生会获得一个在整个考试系统中唯一的考试证号 接下来 考生要参加某一科目的考试时 必须提前注册 否则 考生不能参加考 试 在规定的考试日期中 考生在考试系统上作答 系统会自动记录考生的考试时间 死机并不会影响到考生的考试 当考生完成考试后 系统会自动对考生的试卷进行评阅 并且参照题库中的标准 答案 为考生打分 最后 考试系统会向考生出示考试成绩单 从考试流程图 2 1 中可以看出 参加考试必须要在考试系统中拥有准考证号码 提 前注册考试 而且在规定的时间内完成考试 2 2 2 系统的数据流图 数据流图 即 DFD 图 Data Flow Diagram 主要描述考生从激活考试到结束考试 的数据流向 如图 2 2 所示 考生 登陆抽题 错误 数据 库 答题 题目 考号答案 阅卷 数据 库 答案 输出 成绩 数据库 库 图 3 数据流图 2 2 3 用户界面分析 标准的 Windows 应用程序应该包括 标题栏 菜单栏 工具栏 状态栏 工作区 域等部分 在考试系统中 由于操作很简单 而且使用菜单和工具并不一定能提高操 作的效率 所有在考试系统应用程序中 使用了最简单的基于对话框的窗口 并且使 用简单的按钮完成功能的切换 界面虽然简单 但是它涵盖了考试系统的全部功能 操作非常方便 计算机等级考试系统的设计和实现 8 2 2 4 系统安全性分析 由于本系统采用 Access2003 进行数据库的制作 在安全性方面不如 SQL Oracle 等大型数据库 但在访问时也可对访问权限进行设置 而且设置方便 同时由于本系 统将采用 Visual Basic 进行管理员密码的设计 所以说安全性方面还是有保障的 2013 级信息与计算科学专业毕业论文 9 3 系统设计系统设计 3 1 设计思想 考试系统的设计是以软机周期模型为基础来建立的 众所周知 既然是工业产品 都有其生命周期 即要经过分析要求 设计 制造 测试 运行 此时需要不断的维护 等几个阶段 本系统的设计严格遵守软件周期模型 经历了可行性研究与计划阶段 需求分析阶段 设计阶段 编程阶段 测试阶段 运行阶段 3 2 模块的划分与功能 经过对计算机等级考试步骤的分析 计算机等级考试系统的模块将进行以下划分 考试系统的模块可以大体分为 2 个部分 本地服务端管理程序 本地客户端考试 程序 其中每一部分都可以细分为多个模块 如图 3 1 所示 考试系统 本地考试系统 激活考试 答题系统 自动计时 自动阅卷 本地服务系统 考试管理 增加科目 删除科目 禁用科目 修改科目信息 增加题目 删除科目 修改题目 禁用题目 图 4 系统功能结构图 1 考试管理 计算机等级考试系统的设计和实现 10 考试管理这个模块中包括了增加 删除 修改考试科目 修改考试科目的状态 增加 删除 修改考试题目 修改考试题目的状态等几种功能 增加 删除 修改考试科目 用于维护考试系统中的考试科目信息 包括科目的 名称 题目数量 考试时间 通过分数等 修改考试科目的状态 用于设置科目有效或无效的状态 当科目处于无效状态时 考生将不能注册这个科目的考试 增加 删除 修改考试题目 用于维护考试系统题库的信息 修改考试题目状态 信息可以设置题目是否可以被选入考生的考卷 2 激活考试 激活考生实际上是将考生考试的状态设置为 正在考试 并在开始考试前 向考 生提示考试的相关信息 当考试被激活后 该考试的注册信息将不能被修改 更不能删除 3 答题系统 答题系统将引导考生完成整个试卷 并记录考生的答案和题目的状态 是否完成 是否被标记 在一般的标准化考试中 常见的题目包括 单项选择题 多项选择题 不定项选 择题和填空题等 为了简便起见 该系统设计中将题目设置为 单项选择题 多项选择题和填空题 三个类型 标记题目状态和传统考生中的 打标记 一样 如果考生对于某题目不确定 或者 暂时不想回答这道题目 就可以为题目 作标记 做过标记的题目会在答案汇总页面 上突出显示出来 4 自动计时 自动计时将在考试开始后自动启动 用于在整个考试过程中提示考生考试时间 并在考试时间结束后自动中止考生的考试 在考试中途出现死机的情况时不会影响考生的考试 考试的所有答案都会被实时 地记录进时间库 同时 考生剩余的考试时间也会被记录进去 当考试的剩余时间小于 15 分钟时 屏幕上的计时钟会变为红色 以提示考生剩余 的考试时间不多了 5 自动阅卷 自动阅卷功能将把考生的试卷与题库中的标准答案进行对比 并记录考生的考试 成绩 2013 级信息与计算科学专业毕业论文 11 4 Access 数据库的建立数据库的建立 4 1 构建数据库解决方案 数据库是依照某种数据模型组织起来并存放在存储器中的数据集合 这些数据为 了多个应用程序服务 独立于具体的应用程序 数据库由数据库管理系统 DBMS Data Base Manager system 统一管理 数据的插入 修改和检索均要通过数据 库管理系统进行 数据库管理系统是一种系统软件 它的这样功能是维护数据库并有效地访问数据 库中的数据 对数据库的维护包括保持数据的完整性 一致性和安全性等几项内容 数据管理员负责创建 监控和维护整个数据库 是数据可以被任何有权使用数据 库的人访问 4 2 设计考试系统数据库 本考试系统使用一个 Access 数据库文件 文件名称为 考试 mdb 在使用 Visual Basic 时 需要建立数据库连接 在考试数据库系统中 所包含的数据应该包括考生的 基本信息 所以考试科目的基本信息 全部题目的信息 考试注册考试的信息和考试 状态 考试成绩以及考生的试卷 这样根据数据库存储的内容 建立多个数据库表 4 2 1 数据表的建立 1 考生信息表 StudentInfo 考生信息表用于存放考生的基本注册信息 它唯一确定了一名考生的身份 因此 应该包括考生的准考证号码 姓名 性别 身份证号码等证明考生身份的信息 按照 考试系统项目的需求分析 在考生信息表中 包括了可以确定考试身份的全部信息 包括准考证号码 姓名 性别 身份证号码 联系电话 电子邮件 以及考生的当前状态 是否允许考生注册 考试 另外 还需要建立一个字段 SNum 这个字段用于记录考生已经注册 但是还 没有完成考试的考试数目 设置这个字段是为了维护表的完整性 比如 如果考生已经注册了一个科目的考试 但是还没有进行考试 假如这时删 除了用户就会在考生考试的过程中和成绩单输出的工程中出现无法找到考生姓名的错 误 设置这个字段 就可以避免这个问题 当此字段的值不为 0 说明考生还有没有完 成的考试 这时删除考生的操作就不好进行 在考生信息表中 同一个准考证号码只能对应一个考生 也就是 准考证号码时 计算机等级考试系统的设计和实现 12 唯一的 把它标记为主键 考生信息结构图如图 4 1 所示 图 5 考生信息结构图 2 考试科目表 ExamInfo 考试科目表记录了考试系统中可以进行的所以科目信息 一个考试科目应该包括 考试的名称 时间 题目的数量等信息 为了增加考试系统的兼容性 还设计了总分 数和通过分数两个字段 初次之外 在考试科目表中 可以使用一个 7 位长的考试科 目号用于唯一确定一个科目的考试 所以把考试科目号码作为主键 在考试科目表中 的 ENum 字段也是为了维护数据库的完整性而设置的 在删除表中的数据时 只有此 字段为 0 时才能进行 另外 在这个表结构中 虽然从下表看都是数字型 但是实际上是长整型 单精 度 整型 考试科目表结构图如图 4 2 所示 图 6 考试科目表结构图 3 考生注册信息表 RegInfo 按照考试系统的分析 一个考生在参加考试前必须进行注册 注册的作用是生成 考生的试卷并确定考试的日期 考试注册信息表中 包括考生的准考证号码 注册日期 考试日期 考试科目号 考卷编号等信息 这里把考生准考证号码作为主键 特别地 为了避免同一个考试试卷号码在多个考试终端上参加考试 还增加了考 试状态字段 该字段描述了考生当前的考试状态 当考生成功地注册了一个考试后 此值会自动设置 0 而当考生完成考试时 不论是否通过考试 此值会置 1 此值为 2 时说明考生进行这个科目的考试 如果考试没有在考试日期指定的时间内考试 此值 为 4 在考试注册信息表中 由于在进行注册信息查询时 很少会根据试卷编号 试卷 2013 级信息与计算科学专业毕业论文 13 编号唯一确定时 查询 所以它没有设置主键 这个表无主键 使用试卷编号可以确定考试的注册信息 它的生成规则是 Exam 准考证号码 科目编号 考试日期 上面的斜体字的部分将在程序运行时 以实际的编号代替 考试注册信息表结构 如图 4 3 所示 图 7 考试注册信息表结构图 4 系统信息表 SysInfo 系统信息表用于存放一些维持系统正常运行的所必须的数据 比如管理员密码 当前考试的人数等 系统信息表结构如图 4 4 所示 图 8 系统信息表结构图 系统信息表只有在管理操作时才会访问 所以的数据的查找速度没有要求 在设 计这个表时 没有设置主键 5 题库表 Quention 题库表 顾名思义是存放全部考试题目的地方 在题库表中 应该包括考试的题 目编号 题目 标准答案 类型等信息 题库表结构如图 4 5 所示 图 9 题库结构图 表中的 QNum 字段和前面一样 都是为了维护数据库完整性而设置的 在生成考 生试卷时 如果该考生使用了这道题目 这个字段的值就会加 1 也就是说 它存放了 这道题目的人数 只有当此值为 0 时 才能删除这道考试题目 另外 题库表通过 QID 字段唯一确定考试题目 所以这个字段将作为题库表的主 计算机等级考试系统的设计和实现 14 键 考试题目编号的前 7 位表示这个题目归属哪个考试题目 剩下的 10 位记录题目的 标号 通过这 17 字符长度的字段就可以判断这道题目是哪个科目的哪道题目 6 考卷表 Paper 考卷表是在考生完成考试注册后 记录考生的考卷题目的表 在这个表中 通过 试卷编号可以确定一个考试注册项目 题目的 ID 号用于记录考生应该回答的问题 考 生的答案用于考生的答案 考卷表结构如图 4 6 所示 图 10 考卷表结构图 这个表没有一个字段可以唯一确定一条记录 所以也不需要设置主键 为了方便考生作答 在考试界面中增加了 标记 按钮 考生可以对某一道题目进 行标记 仅仅是为了醒目 系统也会自动判断考生的答案是否完整 这两个记录标记 就使用 QMarked 和 QFinished 表示 创建过程是 首先启动 AccessXP 选择 开始 程序 Microsoft Access 选项 这时就进入了 Access XP 的工作界面 在 Access 工作界面右侧的任务窗格中直接单击 空数据库 项目 这时 Access XP 中会出现 文件新建数据库 对话框 输入数据库文件 的名称 然后单击 创建 按钮 这时 AccessXP 工作界面中就会出现数据库工作窗口 这样 数据库文件就创建 完成了 接下来创建各个数据库表 这里只以创建考生信息表为例 在鼠标双击数据库窗口中的 使用设计器创建表 项目 Access XP 会出现新建表的 窗口 依次输入考生信息表的结构 在字段名称列的第一行输入 SID 用鼠标单击第一行的数据类型 这时 数据类型中出现 文本 字样 单击 文本 右 侧的下拉按钮 Access XP 弹出数据类型列表 可以从这个列表中选择相应的数据类 型 对于这个字段也可以不选择 在字段属性部分单击 字段大小 右侧的输入框 清除原来的 50 输入新的长度 10 按同样的方法 依次输入所有的字段 并设置相关属性 需要说明的是 数字类 型按字段长度还分为 整型 长整型和单精度数据类型 设置主键是用鼠标右键单击字段列表中的 SID 行 在出现的菜单中选择 主键 选 项 这样 在字段列表中的 SID 行面前会出现一个钥匙的图标 表示这个地段是主键 2013 级信息与计算科学专业毕业论文 15 单击保存按钮 在出现的 另存为 对话框中 输入表的名称 StudentInfo 然后单 击 确定 按同样的方法 就可以建立其它表 6 个表创建完的界面如图 4 7 所示 图 11 数据表图 4 2 2 数据表的关系 关系 Relationship 描述了数据库中各个表之间的连带关系和一一对应关系 在上面 设计的数据库的各个表中 每一个表都记录了一个特定的内容范围 但是这些内容之 间也是有关联的 比如注册信息表 RegInfo 中记录的考生信息 要通过 SID 字段道相应的考生信 息表 StudentInfo 中查找 而科目信息又要通过 EID 到考试科目信息表 ExamInfo 中查 找 这些相互依赖的关联就叫做关系 在设计的考试系统数据库中 除了系统信息表 SysInfo 外 其它的各个表之间都是 有联系的 这些表之间就是靠关系来描述它们的联系的 如 4 8 所示 图中用线画出了这些关系 用线连接在一起的两个字段就是相互关联的字段 创建关系的过程为 单击工具栏上的关系按钮 这时 Access XP 会出现编辑关系 对话框 同时 Access XP 还会显示 显示表 窗口 用于向关系视图中添加要创建关系的表 计算机等级考试系统的设计和实现 16 图 12 数据关系表 选择 表 选项卡 在其列表中选择第一个表 然后单击 添加 按钮 重复执行这个 过程 直到所有的表都添加到 关系 窗口中 再单击 显示表 窗口中的 关闭 按钮 这时会在 关系 窗口中看到所有已经添加的 表 接下来 将这些表稍加布局 可以看到关系的窗口 Access XP 会自动根据主键创建一些默认关系 这时可以用鼠标单击每一条关系线 然后按键盘上的 Delete 键 Access XP 会询问用法是否确定删除 单击是即可 接下来就要创建的是需要的关系了 首先用鼠标左键按住 StudentInfo 表中的 SID 字段 拖动到 RegInfo 表中的 SID 字段上面 释放鼠标按键 这时 Access XP 中会出现 编辑关系 窗口 单击 编辑关系 窗口中的 创建 按钮即可创建一个关系 按照同样的方法创建其它关系 4 3 Access 数据库的安全性数据库的安全性 添加需要字段 首先在数据窗口中双击 SysInfo 表 这时 Access XP 会弹出标题 为 SysInfo 的窗口 在这个表中 创建的 3 个字段就列在表的第一行中 依次输入需要的数据 如图 4 9 所示 图 13 系统信息表结构 在输入的这些数据中 可以看出 每一行就是一条 Access 记录 其中 Password 是 2013 级信息与计算科学专业毕业论文 17 保存的管理员密码 ENum 就是当前参加考试的人数 然后关闭这个窗口 Access XP 会自动保存输入的数据 对数据库安全的考虑 本系统使用了 Access 自身的加密功能对数据库的存取进行限制 具体方法如下 选择 工具 安全 设置数据库密码 在出现的 设置数据库密码 窗口中输入密码 然后在 验证 文本框中重复输入一遍 密码 最有单击 确定 其实 Access 也支持多用户管理 选择 工具 安全 用户与组帐户 可以设置 用户和组的信息 在 用户与组帐户 对话框中 可以建立 删除 管理用户和组 并且可以更改用 户和登陆密码 而使用 工具 安全 用户与组权限 选项 就可以设置用户和组权限了 在 用户与组权限 对话框中 读者可以为已经建立的用户和组设置权限了 这些 权限包括 是否允许插入 删除 修改 更新 读取数据 是否允许管理数据库等 通过这些权限的设置 可以显示出使用数据库和访问数据库的一部分人 计算机等级考试系统的设计和实现 18 5 系统的实现系统的实现 5 1 计算机等级考试系统应用程序框架 5 1 1 服务端管理程序框架 1 创建工程 首先选择了 开始 程序 Microsoft Visual Basic 6 0 中文版 选项 进入 Visual Basic 的集成开发环境 Visual Basic 会自动弹出一个 新建工程 对话框 这个对话框用于简化新建和打开 工程的操作 选择了对话框下方的 不再显示这个对话框 复选框 开发环境中是空的 没有任何内容 选择 文件 新建工程 这时 Visual Basic 就会弹出 新建工程 对话框 在这个对话框中选择 标准 EXE 选项 然后点击 确定 按钮 就创建了一个新的 Visual Basic 工程 2 命名工程 选择开发环境右侧工程管理窗口 选择其中的 工程 1 工程 1 选项 然后在下 面 属性 窗口中输入 vbpExamServer 比较好的命名方法 是使用一套标准 在整个开发过程中都遵循的命名方案 所 以本系统中使用 类型名 对象名称 的方式命名文件和控件 举例来说 对于 VisualBasic 开发应用程序时 采用 vbpExamServer 其中 vbp 表示这是一个 Visual Basic 工程 Visual Basic Project ExamServer 表示是考试系统服务端程序 3 命名主窗体 在新的工程中 Visual Basic 会自动建立一个窗体 并命名为 Form1 在 Visual Basic 开发环境右侧 属性 口中单击 名称 目 然后输入 frmMain 这样 一个基本的工程就创建完成了 这个工作实际上是创建了两个文件 一个 Visual Basic 工程文件 另一个是窗体文件 5 1 2 客户端考试程序框架 1 创建客户端工程 在刚才建立工程基础上 在选择 文件 新建工程 选项 在 新建工程 中选择 标准 EXE 选项 最后单击 确定 按钮 这时 Visual Basic 会在工程管理窗口中添加一个名为 工程 1 的工程 这个新工程 会与之前建立的服务端工程并列在工程管理器窗口中 2 命名工程和窗体 与之前的操作方式相同 将刚刚添加的工程命名为 vbpExmaClient 将窗口文件 2013 级信息与计算科学专业毕业论文 19 命名为 frmMain 这样 客户端的程序框架也就创建完成了 5 1 3 建立 Visual Basic 和数据库的接口 为了方便用户大量地访问数据库 本人使用了 ADO Active Data Object Active 数 据对象 数据访问技术 在 Visual Basic 中 可以通过很多方式连接数据库 比较常用的包括 DAO Data Access Object 数据访问对象 ADO 数据控件和 ODBC API 本人使用 ADO 因为它使 Microsoft 公司开发的新的数据库访问方式 具有很多 新的特性 并且程序的编写也比较简单 5 1 4 引用 ADO 库文件 ADO 库在默认情况下 是不加载到 Visual Basic 工程中的 所以手动增加了这个 库 选择 工程 引用 选用 这时 Visual Basic 会弹出 引用 对话框 选中 Microsoft Active Data Object2 1Library 选项前面的复选框 然后单击 确定 按钮 由于库文件只会加载到当前的工程中 所以另外一个工程中也增加这个库文件 5 1 5 建立数据库的连接 用鼠标右键单击工程管理器窗口中的 vbpExamServer 项目 然后选择 添加 添 加模块 选项 在出现的 添加模块 窗口中选择 模块 选项 并单击 打开 按钮 在工 程管理器窗口中选择这个模块 参照前面的方法 在属性窗口中 将它的 名称 属性 修改为 DeclarVir 在模块的代码窗口中 输入下面代码 Global onExam As New ADODB Connection Dim IsLocked As Boolean 用同样的方法再建立一个模块 命名为 GlobalFunction 在这个模块的代码编辑 窗体中 输入下面的代码 Sub InitProgrm 初始化系统 打开数据库连接 设置初始变量 DataPath App Path Data cnExam Open DSN ExamSystem 打开数据库连接 IsLocked False End Sub 这样就完成了一个初始化系统的函数 下面将它与主程序挂接 在主窗口中双击窗体的空白区域 进入代码编辑窗体 增加下面的一行 计算机等级考试系统的设计和实现 20 InitProg 保存工程后 就完成了 Visual Basic 和数据库的连接 当提示保存模块时 保持 Visual Basic 默认值即可 与上面的方法类似 为工程 vbpExamClient 也建立与数据库的连接 5 1 6 创建数据源 ODBC Open DataBase Conenction 开放数据库连接 数据源可以用来访问多种数据 库管理系统的数据 为了在数据库中使用 ADO 技术 必须首先创建数据源 1 打开数据源管理器 在 Windows XP 操作系统中 选择 开始 控制版面 管理工具 ODBC 数 据源 32 位 选项 即可打开 Microsoft ODBC 数据源 对话框 2 建立 ODBC DSN 数据源 在 Microsoft ODBC 管理器 对话框中 选定 用户 DSN 选项卡 然后单击 添加 按钮 出现 创建新数据源向导对话框 因为使用的是 Microsoft Access 数据库 则在 驱动程序列表中选择了 Microsoft Access Driver mdb 选项 然后单击 完成 按钮 这时出现 ODBC Microsoft Access 安装对话框 在这个对话框中 指定了考试 mdb 这个 Access 数据库 在 数据源名 中输入数据库源的名称 ExamSystem 然后单击 选择 按钮 在弹 出 选择数据库 对话框中选择考试系统数据库文件所在的文件夹 然后选定 考试 mab 文件 并单击 确定 按钮 返回到 ODBC Microsoft Access 安装 对话框 单击确定 再连续单击 确定 按钮退出 ODBC 管理器 这样就完成了数据源的创建 5 2 服务端主程序的建立 5 2 1 统一功能模块与主程序界面 1 设置窗体属性 窗体的大小 使用的修改窗体大小的方法是使用 属性 窗口 首先确定已经选择了当前的窗体 可以通过属性窗口上方的对象列表查看当前的操作对象 修改 Height 和 Width 属性 在这里设置的值为 Height 6150 Width 8505 作 用是为了是窗体在不同的分辨率下都能保持一样的大小 窗体的显示特性 服务器程序具有考试监视器的功能 所以它的窗体内容相对固定 基本上不需要 调整窗体的大小 所以就把窗体设置为不能修改大小 首先在长体属性窗口中 设置当前的操作对象为 frmMain 接下来在属性窗口中 把 BorderStyle 属性修改为 3 Fixed Dialog Caption 属性修改为 管理计算机自动化 考试系统 服务器 StarUpRosition 属性修改为 1 所有者中心 其它属性没有修改 2013 级信息与计算科学专业毕业论文 21 设置功能按钮 作为程序主窗体 它应该包括应用程序中用于的全部功能 所以 在设计程序的 窗 口时 应该把所有功能都包括进去了 运行的窗体 如图 5 1 所示 图 14 服务端管理界面 设计过程如下 绘制 Frame 上面窗体中左侧功能按钮外面的一圈就是 Frame Frame 是一种 Container 它可 以用于盛放其它的控件 还可以对控件进行分组 首先单击开发环境左侧的控件工具的 Frame 工具 再在窗体上按住鼠标左键 然 后拖出一个矩形框 最后释放鼠标即可 同时重复同样的过程 2 次 即可创建 3 个 Frame 控件 接下来就修改控件的属性 对于这 3 个控件 他们的功能只是用作显示 并不响 应鼠标或键盘的事件 所以并没有修改它的名称 名称 属性 只是将它们的 Caption 属性设置为相应文字 放置功能按钮 在 Frame 控件里面放置了其它的控件 首先选择控件工具箱的命令按钮工具 在第一个 Frame 中拖动 形成一个按钮 按照同样的方法 在第一个 Frame 中放置 3 个按钮 第二 Frame 中放置 3 个按钮 第 三个 Frame 中放置 4 个按钮控件 设置功能按钮的属性 接下来 为这些按钮设置了属性 按照图 5 1 依次修改设置按钮的 Caption 属性 5 2 2 信息显示的完成 计算机等级考试系统的设计和实现 22 1 绘制 PictureBox PictureBox 也是一种容器 它不仅可以用于显示图片 这也是它最初的功能 也 可以象 Frame 一样作为其它控件的容器 在此考试系统界面中 将右上方的 状态显示区 和右下方的 锁定提示区 分别设 置两个 PictureBox 的目的是不同的 前者用于显示日期 时间 考试人数的内容属于 同一个整体 而后者则是由于锁定状态的信息提示和密码输入框不仅属于同一个整体 而且在操作时要整体进行动作 所以在这个区域中的控件放置到一个 PictureBox 中能 使得程序的编写更加简单 首先在控件工具箱单击按钮 PictureBox 控件按钮 然后在窗体上按下鼠标左键并 拖动 形成一个矩形 然后释放鼠标 就可以创建一个 PictureBox 2 设置 PictureBox 的属性 由于这里创建的两个 PictureBox 要在程序代码中使用 为了使控件在程序代码的 书写中更容易识别 使用了标准的对象命名方法为这两个 PictureBox 设置 名称 属性 将显示系统状态信息的 PictureBox 的 名称 属性设置为 picInfo 首先用鼠标选中 PictureBox 控件 接着在 属性 窗口中选择 名称 属性 然后清除
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 法律事务专员岗位面试题及实战演练
- 2025年住院医师规培-江苏-江苏住院医师规培(检验科)历年参考题库典型考点含答案解析
- 2025年住院医师规培-新疆-新疆住院医师规培(神经内科)历年参考题库含答案解析(5套)
- 2025年事业单位工勤技能-重庆-重庆环境监测工五级(初级工)历年参考题库典型考点含答案解析
- 2025年事业单位工勤技能-重庆-重庆园林绿化工三级(高级工)历年参考题库典型考点含答案解析
- 2025年事业单位工勤技能-北京-北京计量检定工五级(初级工)历年参考题库典型考点含答案解析
- 2025年事业单位工勤技能-北京-北京园林绿化工一级(高级技师)历年参考题库典型考点含答案解析
- 职场的密探报告:武大面试题的深度解读
- 生物药剂学专家面试题及答案
- 职业选择:网络运营面试题及答案中的高级求职之路
- 卷烟零售终端服务文旅融合指南:建设
- 化疗药物不良反应与防治
- 外科手术缝线分类
- 胎膜早破病例讨论
- 管理部原料仓储业务技能竞赛理论题库
- 儿童乐园门店运营管理手册范本
- GB/T 19900-2005金属铠装温度计元件的尺寸
- GB/T 19867.4-2008激光焊接工艺规程
- GB/T 19802-2005无损检测工业射线照相观片灯最低要求
- N-苯基马来酰亚胺
- 自控仪表安装工程施工方案52919
评论
0/150
提交评论