试卷生成系统毕业论文.doc-无忧无虑毕设网_第1页
试卷生成系统毕业论文.doc-无忧无虑毕设网_第2页
试卷生成系统毕业论文.doc-无忧无虑毕设网_第3页
试卷生成系统毕业论文.doc-无忧无虑毕设网_第4页
试卷生成系统毕业论文.doc-无忧无虑毕设网_第5页
已阅读5页,还剩36页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

无忧无虑毕设网 ():毕业设计源码下载 毕业设计源码下载: 本文配套程序下载地址 : 无忧无虑毕设网 ()-大学生毕业设计站 ,免费毕业设计论文 ,无忧无虑毕设网 大学生毕业设计 ,出售各类毕业设计源码 ,论文 ,程序源码 ,网站源码 ,免费视频教程 ,我们将竭诚为您服务! 武汉科技学院 毕业设计(论文)任务书 题目:通用试卷生成系统 完成期限: 2004 年 12 月 1 日至 2005 年 6 月 11 日 院系 计 算 机 科 学 系 指导教师 高 晓 清 专业 计算机科学与技术 职 称 讲 师 学生 陈 惠 钦 院(系)主 任 黄求根 接受任务日期 2004-12-1 批准日期 2005-6-11 无忧无虑毕设网 ():毕业设计源码下载 毕业设计源码下载: 一、原始依据(资料) 在各学校开始逐步引入计算机的今天,试卷作为考察教学成果的重要手段之一,一直没有得到较好的改善,试卷的编辑、整理工作占了很大的工作量。传统的手工出卷过程,存在不少弊端 .如出现不必要的重复劳动,造成人力资源及时间上的浪费;缺乏科学的衡量、评价及统一试卷难易度、试卷质量的有效手段;存在自教自考,考前漏题 的情况;试卷容易出现错漏缺现象,引起不必要的麻烦。针对这些情况,我们进行总结分析,开发出了通用试卷生成系统。本系统希望利用计算机强大的数据处理功能,由计算机逐步代替传统的人工出卷,并且规范出卷程序,使出卷工作更加科学化、现代化,使教育工作更上一层楼。 二、设计(论文)内容和要求 1. 设计要求 : 在掌握数据库基础理论知识和基本技术及数据库管理程序开发的步骤的基础上 ,运用 Delphi 集成开发环境和数据库技术开发出实用、高效的通用试卷自动生成系统。 2. 开发平台 : a) WINDOWS 3. 开发环境 : a) Delphi 4. 论文要求 : a) 语言简洁 ,论述清楚 b) 论文格式符合毕业论文的要求 三、主要参考资料 1 张春林等 Delphi7 数据库系统设计与开发 清华大学出版社 2003.10 2 黄明等 Delphi7 信息系统设计与开发实例 机械工业出版社 2005.3 四、同组设计者 潘玉丹 无忧无虑毕设网 ():毕业设计源码下载 毕业设计源码下载: 设计(论文)进度计划表 序号 起止日期 计划完成内容 实际完成内容 检查日期 检查人签名 1 2004.12.1-2004.12.15 写开题报告 完成任务 2 2004.12.1-2004.12.15 熟悉出卷的一般过程、题型,了解现有试卷生成系统的特点及不足,并在此基础上进行需求分析 完成任务 3 2004.12.16-2005.3.31 借阅相关资料,熟悉开发环境及数据库原理的常用技术 完成资料收集 4 2005.4.1-2005.4.30 编制软件计划书,分配角色和任务 完成任务 5 2005.5.1-2005.6.1 编写程序代码、进行调试 完成任务 6 2005.6.1-2005.6.11 撰 写毕业论文及答辩 完成任务 指导教师批准日期 年 月 日 签名 无忧无虑毕设网 ():毕业设计源码下载 毕业设计源码下载: 毕业设计(论文)开题报告 课题名称 通用试卷自动生成系统 院系名称 计算机科学系 专业名称 计算机科学与技术 学生姓名 陈惠钦 指导教师 高晓清 无忧无虑毕设网 ():毕业设计源码下载 毕业设计源码下载: 一、课题的意义 试卷自动生成系统,此课题目的是在我们以往学习数据库的基础上,灵活运用数据库开发软件 Delphi 和结构化查询语言 SQL2000,开发出能供教学使用的一套出试卷系统,以方便教学。应用所学的有关数据库的知识,更深入地学习 Delphi和 SQL2000,将所学的书面知道和实际应用结合起来,以达到学以致用的目的。 在各学校开始逐步引入计算机的今天,试卷作为考察教学成果的重要手段之一, 通用试卷自动生成系统升化了 传统的手工出卷,解决了很多问题,例如: 避免了不必要的重复劳动,节约了人力资源及时间; 使用科学的衡量、评价及统一试卷难易度、试卷质量的有效手段 ; 二、发展状况 在以往的教学中,老师出试卷大多由手工出卷,这样生成的试卷往往会有知识点分布太集中、难易程度不当、分值分布不均等一些缺点;这样, 既增加了老师的负担,也没有达到很好考查学生学习的真实水平,造成教学上的失误。 基于以上的原因,有很多从事软件开发的人员,在试卷自动生成方面做了很大的研究。目前这一领域也以良好的发展姿态而不断进步,早期已经有了一些类似的系统,但经过软件开发人不断的完善,大致形成了具备如下功能的系统: 删除试题、批量录入试题、试题交流、合并题库、自定义试题参数等一些功能,其中试题交流功能非常实用,主要用于同事间交流试题。系统体积非常小,压缩后只有几百 K。平时只要将一些试题或从网络下载的试题,按学科、章节、知识点 、题型、难易程度、备注六个参数进行归类 ,录入题库,需要用时,只要输入一些查询条件即可查出所要找的试题。生成试卷非常方便,只需几分钟就可以生成一份试卷,生成的试卷还配有答案,更重要的是软件能与 WROD 的完美结合,试题、答案的编辑、试卷的排版打印全部由 WORD 来完成,试卷和答案都可保存为 *.DOC 格式。 可见,试卷自动生成系统这方面的研究日益成熟,这不但减轻了教师的工作负担,也使用教学更加地科学化,有利用教育事业的发展。 三、研究内容 /(还末改进) 1、新建试卷,添加、删除题目、选项、试卷; 2、编辑试卷属性:设置试卷的总分、名称、保存路径; 3、系统能支持不同类型的题目,比如:判断、单选、多选等; 4、编辑题目时能插入图片; 5、可以按试卷类型对试卷进行分类; 6、可以对用户进行管理,修改用户口令密码等; 7、生成的试卷可以进行脱机测试,测试过程中如出现漏题,选项漏选,在提交前系统你能对用户进行提示; 8、编辑题目时如出现逻辑上的错误,比如判断题没有设置正确答案,单选题没有设置正确选项,多选题没有设置全正确选项等,在保存试题时系统能自动进行提示; 9、测试完毕,系统自动对试卷进行批改,试卷得分以 及做错的题目系统能以醒目颜色进行标示。 四、研究方法 /(还末改进) 系统从设计理念上坚持采用树状管理结构,在系统结构中用“科目”、“课程”、“章节”、“知识点”来组织整个系统;每道题目都由“科目”、“课程”、“章节”、无忧无虑毕设网 ():毕业设计源码下载 毕业设计源码下载: “题型”、“知识点”、“难度”这六个参数组成,再而演变出试卷和成绩。故系统对小学、初中、中专、高中、大专、大学、单位自办学校和教师个人都适用。本系统利用计算机强大的数据处理功能,由计算机逐步代替传统的人工出卷,并且规范出卷程序。 用模块化设计方法设计试卷自动生成系统 ,将要实现的功能在需求分 析中详细描述出来;然后在概要设计阶段对这些功能归纳总结 ,使它们模块化 ,也就是进行总体控制;由大模块再细分为一些小模化 ,逐步细化 ,从而使功能不断地完善。 用模块化设计方法设计试卷自动生系统,可以使那些繁琐、复杂的功能变成一个简单易实现的小模块,从而使设计工作事倍功半。 五、 研究手段 1、 自我准备:本次设计所需要的是 Delphi 和 SQL2000。我已学习过这两个软件的使用方法;尽管如此,但不能满足毕业设计的需要,所以必须深入学习并熟练掌握其功能和使用方法。 2、 查找资料 :为了搞好毕业设计,我在图书馆和网上查阅了大量有 关试卷自动生成系统方面的资料,对其分析和讲解得都很详细;我还购买一些相关书籍,通过借鉴他人的一些 Delphi 和 SQL2000 的使用方法和技巧,为毕业设计做准备。 3、 设计方案 :试卷自动生成系统要具有手工生成和自动生成的功能;对用户的管理也应当具有增加、删除用户等功能;对生成的试卷如有不满意的,可对其进行修改;还可对题库进行增、删、改等功能,使题库不断的完善。 六、 研究步骤 该方案的题库系统的开发分为以下几个阶段: 1 进行需求分析 ,通过需求分析,确定整个系统大概的规模 。 2 进行系统分析,通过系统分析 ,确定该系 统该具有那些功能,有那些模块,各个模块之间是怎样联系的,以及怎样组合的 。 3 建立数据库,通过对系统的分析,我们要确定数据库的结构是怎么样的,使得数据库的表结构尽可能的合理,操作上更加方便、简洁 。 4 划分功能模块,使得整个系统分到每个小组成员,使系统能整个进行。 5 系统模块的拼装,把每个小组成员所做的模块,组装成一个系统,并且是系统整体能够运行。 6 调试,调试整个的系统模块的功能,看各个功能是否能正常运行,并找出程序中的错误,改正这些错误 。 7 撰写毕业论文及答辩。 七、参考书目 Delphi7 数据库应用开发 郭晶、杨章玉编著 电子工业出版社 Delhpi7 数据库高级教程 刘斌、李文革编著 清华大学出版社 研究内容 - 开发一个基于知识点通用题库管理系统软件,采用大型数据库,包括题库、试卷等模块。该系统提供题库的框架结构,以及对题库中数据的维护功能。该系统数据库中可预先存入相关试题资料,也可在系统运行过程中添加数据。 无忧无虑毕设网 ():毕业设计源码下载 毕业设计源码下载: 其系统应包含以下特点与功能: 1 采用 SQL Server 数据库, NT4.0 或者 Windows98 操作系统以上。题库可以自由维护、扩充, 题库大小只受物理限制的存储容量。 2 权限分明的管理操作系统,支持按操作者及题库权限进行操作,确保题库的公共性与私有性。 3 试题支持单项选择题,判断题,填空题,编程题等题型,用户可以自由设置题型,试题内容包括内容,标准答案等属性,提供可以自由设置的试卷分类;多种试卷生成方式,可以设定参数自动生成或者手工选择试题,题库中自动抽取指定数量的试题或手工选取试题,也可以从某题库中每个题型各抽取多少分的试题,或者从多个题库中分别抽取指定数量的试题合成试卷,试卷生成的方式可以带答案、解答。 4 定义的试卷可以重新编辑、排序、删除 、调整,可以自动生成一份文档,也可以把现有的文档资料存到系统里,内容不受限制。 研究方法 - 这种试题库系统的基本思想是按照“知识点”来构建试卷,主要是思路是依据教学大纲的要求,以课程的主干内容为主线,先把教学内容细致分解为一个个知识点,然后按大纲对各个知识点的要求掌握的层次,与题型、题量、难易度及各知识点间的馆包容性结合起来,作为该试题库系统构建试题的基本原则,以便计算机自动生成每份试卷、在考查点的分布上具有较强的科学性。 要实现基于知识点的试题库系统的试卷建构,首先 必须研究从知识点角度对试题如何进行分类,并结合试题的类型赋予各种特征参数,使试题库编程符合科学化与规范化的要求。因此,参数的设置是否合理,对能否体现基于知识点建构试卷的思想 .所建构试卷的质量,编程的工作量及运行效率都是直观重要的。 本试题库管理系统中,对于其中的每一道题,设置了以下属性字段,分别是: “章号、节号、编号、难度系数、试题类型、试题内容。其中”章号 +编号”唯一对应一道题; 试卷生成模块是整个题库管理系统的核心。本系统的组卷是采用交互方式,即用户在输入各种要求后,系统会自动生成一份符合要求的试卷。组 卷过程中系统会向用户依次询问以下信息: ( 1) 要生成的试卷满分分数 ( 2) 是否考所有章的内容,若只是考部分章内容,还应输入所考章的章号; ( 3) 将系统试题库表中该门课程所用全部题型列表显示,供用户选择。 ( 4) 具体输入所考类型的代号,该类型的题目数目以及该类型题所占无忧无虑毕设网 ():毕业设计源码下载 毕业设计源码下载: 分数; ( 5) 将每种题型的题数分配到各章节; ( 6) 输入本试卷整体的难度系数; 所有上述参数有效输入后,确信在题库中满足上述条件的题目数目量足够的情况下即可生成 一份试卷来 无忧无虑毕设网 ():毕业设计源码下载 毕业设计源码下载: 摘 要 运用可视化 Delphi 开发出试题自动生成系统 .利用其提供的各种面向对象 的开发工具 , 建立系统应用原型,然后进行需求迭代,不断修正和改进,直到形成满意的可行系统。 该系统结构良好、使用方便 ,题库数据输入简单 ,系统能够实现人工选题和随机抽题两大功能 . 包括后台数据库的建立、维护以及前端应用程序的开发两个方面。该系统有安全的用户登录模块、方便快捷的浏览界面、易于操作的功能模块。本文的分析基于知识点的试题库结构基础上,阐述以知识点难度系数和题型为主要控制参数的组卷算法的建立与实现方法。 该系统的运用不仅提高了教师的工作效率 ,而且可以实现真正意义上通用性。 关键词 :通用试卷;知识点;自动组 卷; Delphi; SQL Server; this paper describes the design of the structure of the test question database and the method of the foundation realization of arithmetic of organizing examination paper with the main controls parameters of content of exam and coefficient of difficulty and the structure of test question the examination base is developed by the use of visual tool DELPHI7.0 and can be used in wide range of applications This program is about a manage system in miniature of house resource. It adopt the Client/Server model including backstage supporter foundation and maintain and front two respects of development of application program of data base mainly. Through so analyse the situationing, I use DELPHI 6.0 developing instruments and utilize its various kinds of developing instruments which face the target offered, it set up and use by prototype systematically within short time at first, then, Carry on demand change and take the place of, revise and improve constantly, until forming the user satisfied feasible system to initial prototype system.This system has secure user entry, convenient scanning and easy using query 、 append and so on. I believe it will meet the corporations satisfaction. 关键词: (小四号、黑体、左顶格 ) 无忧无虑毕设网 ():毕业设计源码下载 毕业设计源码下载: (内容采用小四号、宋体、接排,各关键词之间用分号隔开) (模 板一 ) ABSTRACT (采用三号字、 Times New Roman 字体、 加粗、居中、与内容间空一行 ) (内容采用小四号 Times New Roman 字体) Key words: (小四号、 Times New Roman 字体、 加粗、左顶格 ) 无忧无虑毕设网 ():毕业设计源码下载 毕业设计源码下载: (内容采用小四号、 Times New Roman 字体、接排、 各关键词之间用分号和 1 个空格隔开 ) (模板二 ) 目 录 (三号、黑体、居中、“目录”两字间空四格、与正文间空一行) 1(空一格) ( 小三号 、黑体 ) 1 1 概述 2 数据库理论基础和开发工具 2.1 数据库理论基础 2.1.1 数据库管理系统 2.1.2 数据库系统设计 2.1.3 数据库设计范式分析 2.2 数据库开发工具 2.2.1 Delphi 7.0 具体特点 2.2.2 基本数据库组件 2.2.3 Delphi 7.0 一些控件 无忧无虑毕设网 ():毕业设计源码下载 毕业设计源码下载: 2.3 在 Delphi 中通过 BDO 连接数据库 2.3.1 BDE 概述 2.3.2 BDE 原生对象 2.3.3 BDE 组件概要介绍 2.4 SQL 语言在 Delphi 中的应用 2.5 本章小结 3 通用试卷生成系统的定义 3.1 问题的定义 3.2 可行性分析 3.3 需求分析 3.3.1 题库管理 3.3.2 试卷管理 3.3.3 权限管理 4 系统的框架分析和设计 4.1 系统总体结构设计 4.2 试题设计流程 4.3 数据模块窗体及 BDE 的设置 4.4 前台用户部分模块设计 4.4.1 用户登录窗口设计 4.4.2 主界面设计 4.4.3 权限管理 4.5 数据库后台设计 无忧无虑毕设网 ():毕业设计源码下载 毕业设计源码下载: 4.5.1 数据库表的设计思路 4.5.2 数据库部分表的列举 4.6 试卷生成 4.7 自动生成试卷向导模块设计 4.8 算法概要 4.8.1 随机策略 4.8.2 补偿策略 4.8.3 算法描述 4.9 试卷预览 4.10 本章小节 5 总结 参考文献 参考文献 多少页 无忧无虑毕设网 ():毕业设计源码下载 毕业设计源码下载: (模板三 ) 1(空一格) (小三号、黑体、左 顶格 ) 1 概述 /未改 随着社会经济的迅速发展和科学技术的全面进步,计算机事业的飞速发展,以计算机与通信技术为基础的信息系统正处于蓬勃发展的时期。随着经济文化水平的显著提高,人们对生活质量及工作环境 的要求也越来越高。在计算机飞速发展的今天,简化试卷的手工操作势必所然,。所以如何设计好仓库管理系统,尽可能地减少仓库管理的重复性和低效性就成为当前最为重要的问题。图书仓库管理的核心是入库、库存和出库之间的联系,如何处理好三者之间的关系是系统最为关键的部分。另外,员工信息和供应商信息管理也是仓库管理中一个必不可少的部分,它提供着与入库和出库相关的地一些信息,使得整个系统更加完整,更加实用。 通过对仓库管理日常工作的详细调查,搜集了大量的资料,从系统结构的组织,功能的实现,技术的要求以及可行性等多方面 进行考虑,认为本课题是一个适应现今图书仓库管理需求的计算机信息管理系统,具有一定的实际开发价值和使用价值。 2 数据库理论基础和开发工具 2.1 数据库理论基础 数据库处理在信息系统的研究中一直是非常重要的主题,然而,近年来,随着 World Wide Web(WWW)的猛增及 Internet 技术的迅速发展,使得数据库技术之时成为最热门技术之一。数据库技术能使 Internet 应用超越具有早期应用特点的简单的发布。同时, Internet 技术提供了一种向用户发布数据库内容的标准化的访问方法。这些技术没有脱离经典数 据库技术的要求。它们只是加重了数据库技术的重要性。 数据库的设计和开发及包括艺术有包括工程。理解用户的需求,然后,把它们转变为有效的数据库设计是一个艺术过程。把设计转变为实际的数据库,并且这些数据库带有功能完备、高效能的应用,是一个工程过程。 数据库的目的是帮助人们跟踪事务。经典的数据库应用涉及诸如订单、顾客、工作、员工、学生、电话之类的项,或其它数据量较大、需要密起关注的事务。最无忧无虑毕设网 ():毕业设计源码下载 毕业设计源码下载: 近,由于数据库的普及,数据库技术已经被应用到了新的领域,诸如用于Internet 的数据库或用于公司内联网的数据库。数据库也被越来 越多地应用于生成和维护多媒体应用程序上。 2.1.1 数据库管系统 数据管理系统( DBMS)是用描述、管理和维护数据库的程序系统,是数据库系统的核心组成部分。它建立在操作系统的基础上,对数据库进行统一的管理和控制。其主要功能有: 1) 描述数据库:描述数据库的逻辑结构、存储结构、语义信息和保密要求等。 2) 管理数据库:控制整个数据库系统的运行,控制用户的并发性访问,检验数据的安全、保密与完整性,执行数据的检索、插入、删除、修改等操作。 3) 维护数据库:控制数据库初始数据的装入,记录日志,监视数据库性能,修改更新数据库,重 新组织数据库,恢复出现故障的数据库。 4) 数据通信:组织数据的传输。 2.1.2 数据库系统设计 在软件需求分析阶段,搞清楚了软件“做什么”的问题,形成了目标系统的逻辑模型。现在我们所要做的就是要把软件“做什么”的逻辑模型变换为“怎么做”的物理模型,即着手实现软件的需求。首先,我们需要描述的是系统的总的体系结构 ( 1) 数据库模块设计:系统的概要设计中最重要的就是系统模块化设计。模块化是指解决一个复杂问题时自项向下逐层把软件系统划分成若干个模块的过程。每个模块完成一个特定的功能,所有的模块按某种方法组织起来,成为一个整 体,完成整个系统所要求的功能。 将系统划分为多个模块是为了降低软件系统的复杂性,提高可读性、可维护性,但模块的划分不能是任意的,应尽量保持其独立性。也就是说,每个模块只完成系统要求的独立的子功能,并且与其他模块的联系最少且接口简单,即尽量做到高内聚低耦合,提高模块的独立性,为设计高质量的软件结构奠定基础。 ( 2) 数据表设计: 数据表的设计是指设计数据库中表的结构,无忧无虑毕设网 ():毕业设计源码下载 毕业设计源码下载: 数据表的逻辑结构包括:属性名称,类型、表示形式、缺省值、是否关键字、可否为空等。关系型数据库要尽量按关系规范化要求进行数据库设计,但为了使效率高,规范化 程度应用环境和条件来决定。数据表设计不仅要满足数据存储的要求,还要增加一些如反映有关信息、操作责任、中间数据的字段或临时数据表。 ( 3) 存储设备和存储空间组织:确定数据的存放地点、存储路径、存储设备等,备份方案,对多版本如何保证一致性和数据的完整性。 ( 4) 数据使用权限设置:针对用户的不同使用要求,确定数据的用户使用权限,确保数据完全。 2.1.3 数据库设计范式分析 建立起一个良好的数据指标体系,是建立数据结构和数据库的最重要的一环。一个良好的数据指标体系是建立 DB 的必要条件,但不是充分条件。我们完全可以认为所建指标 体系中的一个指标类就是关系数据库中的一个基本表,而这个指标类下面的一个个具体指标就是这个基本表中的一个字段。但如果直接按照这种方式建库显然还不能算最佳。对于指标体系中数据的结构在建库前还必须进行规范化的重新组织。 在数据的规范化表达中,一般将一组相互关联的数据称为一个关系 (relation),而在这个关系下的每个数据指标项则被称为数据元素 (data element),这种关系落实到具体数据库上就是基本表,而数据元素就是基本表中的一个字段 (field)。规范化表达还规定在每一个基本表中必须定义一个数据元素为关 键字 (key),它可以唯一地标识出该表中其它相关的数据元素。在规范化理论中表是二维的,它有如下四个性质: 在表中的任意一列上,数据项应属于同一个属性 (如图中每一列都存放着不同合同记录的同一属性数据 )。 表中所有行都是不相同的,不允许有重复组项出现 (如图中每一行都是一个不同的合同记录 )。 在表中,行的顺序无关紧要 (如图中每行存的都是合同记录,至于先放哪一个合同都没关系 )。 在表中,列的顺序无关紧要,但不能重复 (如图中合同号和合同名谁先谁后都没关系,但二者不可重复或同名 )。 在对表的形式进行了规范化定义后 ,数据结构还有五种规范化定义,定名为规范化模式,称为范式。在这五种范式中,一般只用前三种,对于常用系统就足够了。而且这五种范式是“向上兼容”的,即满足第五范式的数据结构自动满足一、二、三、四范式,满足第四范式的数据结构自动满足第一、二、三范式,依此类推。 无忧无虑毕设网 ():毕业设计源码下载 毕业设计源码下载: 第一范式 (first normal form,简称 1st NF)就是指在同一表中没有重复项出现,如果有则应将重复项去掉。这个去掉重复项的过程就称之为规范化处理。在本文所讨论的开发方法里, 1st NF 实际上是没有什么意义的。因为我们按规范化建立的指标体 系和表的过程都自动保证了所有表都满足 1st NF。 第二范式 (second normal form,简称 2nd NF)是指每个表必须有一个 (而且仅一个 )数据元素为主关键字 (primary key),其它数据元素与主关键字一一对应。例如,在图 l9.7 中如果我们将合同号定义为主关键字 (其它数据元素中的记录数据都有可能重名,故不能作为主关键字 ),故只要知道了一个合同记录的合同号,就可以唯一地在同一行中找到该合同的任何一项具体信息。通常我们称这种关系为函数依赖 (functional depEndence)关系。 即表中其它数据元素都依赖于主关键字,或称该数据元素唯一地被主关键字所标识。 第三范式 (third normal form,简称 3rd NF)就是指表中的所有数据元素不但要能够唯一地被主关键字所标识,而且它们之间还必须相互独立,不存在其它的函数关系。也就是说对于一个满足了 2nd NF 的数据结构来说,表中有可能存在某些数据元素依赖于其它非关键宇数据元素的现象,必须加以消除。 为防止数据库出现更新异常、插入异常、删除异常、数据冗余太大等现象,关系型数据库要尽量按关系规范化要求进行数据库设计。 2.2 数据库开 发工具 Delphi 类可以粗略地分成两部分:一部分是组件类,这些组件类通常以某种方式出现在组件面板上,当用户从组件面板上点取一个类的图标后,在程序中就自动生成了该类的对象(非可视组件除外);另一部分是功能类,这此功能类的对象通常出现在程序代码中,起着不可代替的作用,但是这些功能类在组件面板上是找不到的。在 Delphi 中,每一个类的祖先都是 Tobject 类 ,整个类的层次结构就像一棵倒挂的树,在最顶层的树根即为 Tobject 类。这样,按照面向对象编程的基本思想,就使得用户可用 Tobject 类这个类型代替任何其它 类的数据类型。实际上在 Delphi 的类库中, Tobject 类派生出了为数相当众多的子类,它们形成了一个庞大的体系,通常情况下,如果不自行开发组件,就不必了解整个类的体系结构,只用到类层次树的叶结点就足够了。 2.2.1 Delphi 7.0 具体特点 。 2.2.2 基本数据库组件 用 Delphi 7.0 开发数据库应用,重点是和各种数据库组件打交道,数据集是一组离散的数据记录的集合。在 Delphi 中,数据集有 3 种表现形式:表,查询,存储过程; 3 种形式的数据集分别用 Ttable,Tquery,TStoredProc 来操纵。而 Ttable,Tquery,TStoredProc 的直接上级是 TDBDataSet, TDBDataSet 而是从无忧无虑毕设网 ():毕业设计源码下载 毕业设计源码下载: TDBEDataSet 派生的,而 TDBEDataSet 又是从 TDataSet 派生的。这些数据集之间的继承关系如。示 -数据集的关系 TdataSouce 对象用于在 DataSet 对象(包括 Ttable,Tquery,TStoredProc)和数据感知组件之间提供一个连接的纽带,以便在窗体上显示数据库中的数据,在数据库中导航定位与编辑数据集中的数据。 数据感知组件负责数据库的显示,并把用户对数据的修改传回。这里面的绝大多数组件,如 DBEdit,DBText,DBMemo,DBComboBox 等的功能和对应的非数据感知组件相同。 结合自己的系统,我使用了以下的数据库应用的逻辑三层的结构:如下图所示:。 客户端应用程序 用户界面 数据模块 TDataSouce TTable TQuery TDataSet TCustomADODataSet TADODataSet TADOTable TADOQuery TADOStoredProc TBDEDataSet TNestedTable TBDEDateSet TTable TQuery TStoredProc TClientDataSet 无忧无虑毕设网 ():毕业设计源码下载 毕业设计源码下载: 逻辑三层结构 2.2.3 Delphi 7.0 的一些控件 ( 1) 数据控制类 DataControl ( 2) 数据访问类 DataAccess 2.3 在 Delphi 中通过 BDE 连接数据库 2.3.1 BDE 概述 2.3.2 BDE 原生对象 2.3.3 BDE 组件概要介绍 。 (很多个组件的介绍与功能Table.query.stro,dateset,connrct,command 等) 2.4 SQL 语言在 Delphi 中的运用 在 Delphi 中使用 SQL 语言非常方便,一般来说,都是通过 Tquery 组件来使用 SQL 语言的。可以在 TQuery 组件的 SQL 属性中设置 SQL 语句。设计程序时,在该组件的属性对话框中选择 SQL 属性,单击带省略号的按钮,就可以打开 String List Editor 对话框,然后我们就可以在对话框中添加 SQL 语句。还可以使用 Delphi 的 SQL Builder 来自动生成 SQL 语句,这样可以避免手工编写 SQL 而可能造成的语法错误。 静态 SQL 语句在程序设计时便已固定下来,它不包含任何参数和变量。 动态 SQL 语句,也被称作参数化的语句,在其中间包含着表示字段名或表名的参数,例如BDE 数据库服务器 无忧无虑毕设网 ():毕业设计源码下载 毕业设计源码下载: 下面 的语句是一条动态 SQL 语句: Select * From Students Where StudentCode =: StudentCode; 其中的变量 StudentCode 便是一个参数变量,它由一个冒号引导,在程序运行过程中,必须要为该参数赋值,该条 SQL 语句才能正确执行,每次运行应用程序时可以为该参数变量赋予不同的值。为参数赋值有三种方法: 根据参数在 SQL 语句中出现的顺序,设置 TQuery 部件的 Params 属性值为参数赋值。 直接根据 SQL 语句中各参数的名字,调用 ParamByName 方法来 为各参数赋值。 将 TQuery 部件的 DataSource 属性设置为另一个数据源,这样将另一个数据源中与当前TQuery 部件的 SQL 语句中的参数名相匹配的字段值赋给其对应的参数。利用这种方法也能实现所谓的连接查询,创建主要 明细型数据库应用。 在程序运行过程中,要想设置 TQuery 部件的 SQL 属性,必须首先调用 Close 方法,关闭TQuery 部件,然后再调用 Clear 方法清除 SQL 属性中现存的 SQL 命令语句, 最后再调用Add 方法为 SQL 属性设置新的 SQL 命令语句。例如: Query1.Close 关闭 Query1) Query1.SQL.Clear 清除 SQL 属性中的 SQL 命令语句 Query1.SQL.Add(Select * From Students); Query1.SQL.Add( Where Name =Lucy ); 在为 TQuery 部件设置 SQL 属性时调用 Close 方法总是很安全的,如果 TQuery 部件已经被关闭了,调用 Close 方法时不会产生任何影响。在应用程序中为 SQL 属性设置新的 SQL 命令语句时,必须要调用 Clear 方法以清除 SQL 属性中现存的 SQL 命令语句,如 果不调用 Clear方法,便调用 Add 方法向 SQL 属性中设置 SQL 命令语句,那么新设置的 SQL 命令语句会追加在现存 SQL 命令语句后面, 在程序运行时常常会出现出乎意料的查询结果甚至程序无法运行下去。 在这里要特别注意的,一般情况下 TQuery 部件的 SQL 属性只能包含一条完整的 SQL 语句,它不允许被设置成多条 SQL 语句。当然有些数据库服务器也支持在 TQuery 部件的 SQL 属性中设置多条 SQL 语句,只要数据库服务器允许这样,我们在编程时可以为 SQL 属性设置多条 SQL 语句。 在为 TQuery 部件设置完 SQL 属性 的属性值之后,也即编写好适当的 SQL 程序之后,可以有多种方式来执行 SQL 程序。 在设计过程中,设置完 TQuery 部件的 SQL 属性之后将其 Active 属性的值置为 True, 这样便可以执行 SQL 属性中的 SQL 程序,如果应用中有与 TQuery 部件相连的数据浏览部件 ( 如TDDGrid TDBEdit 等 )那么在这些数据浏览部件中会显示 SQL 程序的执行结果。 在应用程序运行过程中,通过程序调用 TQuery 部件的 Open 方法或 ExecSQL 方法可以执行其 SQL 属性中的 SQL 程序。 Open 方法和 ExecSQL 方法是不 一样的。 Open 方法只能用来执行 SQL 语言的查询语句 (Select 命令 ), 并返回一个查询结果集,而 ExecSQL 方法还可以用无忧无虑毕设网 ():毕业设计源码下载 毕业设计源码下载: 来执行其它常用的 SQL 语句 (如 INSERT, UPDATE, DELETE 等命令 ),例如: Query1.Open (这样会返回一个查询结果集 ) 如果调用 Open 方法,而没有查询结果时,会出错。此时应该调用 ExecSQL 方法来代替 Open方法。如: Query1.ExecSQL (没有返回结果 ) 当然在设计应用程序时,程序设计人员是无法确定 TQuery 部件中的 SQL 语句是否会返回一个查询结果的。对于这种情况应当用 Try Except 模块来设计程序。在 Try 部分调用 Open方法,而在 Except 部分调用 ExceSQL 方法,这样才能保证程序的正确运行。 Delphi 中用 ADOQuery 来使用 SQL 语句同样十分方便。在 ADOQuery 组件中首先通过ConnectionString 属性值来联接数据源,然后就通过双击 SQL属性值来写入 SQL 语句。在Delphi 中调用数据库,就可以调用 ADOQuery 组件,通过修改其中的 SQL属性中的 SQL语句来实现对数据库的各项操作。 值得注意的是, ADOQuery 组件只有在激活的情况下才可以被正确地使用,这样就提出了一个问题,也就是说,在每次修改 ADOQuery 组件的 SQL属性时都必须先行进行关闭,待清除掉 SQL中所有的 SQL 语句后才可以添加新的 SQL 语句。而且,在每一次修改完成以后,还应该记得重新将 ADOQuery 激活。其它的使用方法与 TTQuery 有许多的相似之处。 2.5 本章小节 本章主要介绍了数据库的理论基础、数据库的开发工具 Delphi和 SQL语句在 Delphi 中的使用方法,数据库理论基础分析了数据库的设计过程中要遵守的规则和设计方法 。数据库开发工具主要介绍了 Delphi的特点和 Delphi 的 DBE 控件组,另外还简要介绍了 SQL 在 Delphi中的运用。 无忧无虑毕设网 ():毕业设计源码下载 毕业设计源码下载: 3 通用试卷生成系统的定义 3.1 问题的定义 随着教育教学改革的不断深入 ,/教考分离 !试卷规范化 ! 标准化的呼声

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论