- 1.74 MB
- 2022-09-27 发布
- 1、本文档由用户上传,淘文库整理发布,可阅读全部内容。
- 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,请立即联系网站客服。
- 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细阅读内容确认后进行付费下载。
- 网站客服QQ:403074932
东华理工大学毕业设计(论文)摘要摘要本文介绍了采用VisualBasic6.0和SQLSERVER2000共同开发“东华理工学院田径运动会管理系统”的基本方法,系统深入地阐述了该系统开发的每个过程,以及各功能模块实现的原理。包括管理信息系统介绍、本系统开发技术介绍、系统开发相关图、数据库设计和功能模块实现、系统运行调试和出错处理。不仅有系统开发的整个过程和功能实现情况介绍,又引进了几个典型的信息管理系统开发的技术,如界面优化,安装程序制作等关键词:管理信息系统SQLSERVER数据库VisualBasicII\n东华理工大学毕业设计(论文)AbstractAbstractThetextintroducesthebasicwaywhichexploits“TheManagementSystemofTrackandFieldSportsMeetingforEastChinaInstituteofTechnology”inVisualBasic6.0andSQLSERVER2000.IttellseverycourseofthesystemexploitationandtheoryabouteveryFunctionModule.ItincludestheintroductionoftheManagementInformationSystem,exploitationtechniques,correlationexploitationmaps,databasedesign,functionanddebugging.Itnotonlyintroducesthewholeexploitationcourse,implementedfunction,butalsofetchesinseveralmodelsaboutthetechniquesuchasinterfaceoptimizationandtheinstallationproceeding.KeyWords:ManagementInformationSystem,SQLSERVER,Database,VisualBasicII\n东华理工大学毕业设计(论文)目录目录第1章前言1第2章管理信息系统介绍32.1管理信息系统的应用32.2管理信息系统的组成32.3管理信息系统的界面特点32.4管理信息系统开发的一般方法42.5管理信息系统的开发过程5第3章本系统开发技术介绍63.1ADO数据访问技术63.1.1ADO编程模型63.1.2ADO对象模型63.2ODBC数据库访问技术73.3应用程序界面优化83.4制作安装程序9第4章本系统开发相关图114.1系统功能模块114.2ODBC应用程序基本结构顺序11第5章数据库设计及功能模块实现125.1数据库设计125.2各个功能模块实现的原理135.2.1管理员登录的实现原理135.2.2竞赛项目设置功能实现的原理155.2.3运动员报名功能实现原理165.2.4班级设置功能实现原理175.2.5运动员成绩查询功能实现原理185.2.6模块module功能18第6章系统运行调试和出错处理21结束语23致谢24参考文献25\n东华理工大学毕业设计(论文)第1章前言第1章前言自20世纪70年代以来,数据库技术得到迅速发展。目前世界上已经有数百万个数据库系统在运行,其应用已经深入到社会生活的各个领域,从企业管理、银行管理、资源管理、经济预测一直到信息检索、档案管理、普查统计等。我国20世纪90年代初在全国范围内装备了12个以数据库为基础的大型计算机系统,这些系统分布在邮电、计委、银行、电力、铁路、气象、民航、情报、公安、军事、航天和财税等行业。现在,数据库技术还在不断发展,并且不断的与其它计算机技术相互渗透。数据库技术与网络通信技术相结合,产生了分布式数据库系统。数据库技术与面向对象技术相结合,产生了面向对象数据库系统等各种数据库系统。在人类迈向21世纪知识经济的时候,信息变为经济发展的战略资源,信息技术已成为社会生产力重要的组成部分。人们充分认识到,数据库是信息化社会中信息资源管理与开发利用的基础。对于一个国家,数据库的建设规模,使用水平已成为衡量该国信息化程度的重要标志。因此,数据库的学习是非常重要的。本文所开发的东华理工学院田径运动会管理系统,就是数据库应用的一个很好例子。虽然田径运动会管理系统已经应用到实际中有一段时间了,但是所开发的系统版本是采用visualfoxpro作为后台数据库的。而visualfoxpro数据库目前已经不怎么流行,由于其功能不够强大,界面制作不太美观等的缺点。所以本系统针对这些缺点,采用目前数据库开发流行使用的数据库后台SQLSERVER2000,利用visualbasic中的操作简单,高速度以及较低的内存占用少等优点的ADO(ActiveXDataObjects)控件,通过ODBC创建与数据库的连接。由于本系统涉及到田径运动会管理系统的整个开发,既需要有田径运动会举办单位的专业人员提供具体流程,又需要有管理系统的阶段分析员,并且需要较强的管理信息系统开发经验和编程能力。所以整个系统的开发任务较重,能力较强等。本文共包括6章。其各章节安排内容如下:第2章对管理信息系统基本知识进行介绍,如管理信息系统的应用、管理信息系统界面的特点、管理信息系统开发的一般方法,管理信息系统的组成等。第3章对本系统所采用的开发技术进行详细介绍,例如数据访问技术ADO,数据库访问技术ODBC,界面优化技术,尤其是安装程序制作过程技术。第4章关于本系统的主要相关图进行描绘,如系统功能示意图,ODBC应用程序结构顺序图。第5章就本系统开发所采用的数据表进行介绍说明,以及系统开发中典型且主要的功能模块实现的原理和代码详细介绍。第6章关于本系统调试运行和出错处理过程中遇到的典型问题以及这些问题的解决办法进行详细介绍,以及一些创新的发现。25\n东华理工大学毕业设计(论文)第1章前言在管理信息系统开发过程中,功能实现固然重要,但其界面的操作简便和美观也很重要,本系统就注意了这点,所以利用了几个非常常用的技术,例如界面优化,安装程序等。由于时间有限,加之信息系统开发经验的缺少和编程能力的有限,所以本系统难免存在各种各样的缺点。敬请指导老师能够提出批评和宝贵意见,也希望各位读者提出宝贵意见并进行指正,谢谢!25\n东华理工大学毕业设计(论文)第2章管理信息系统介绍第2章管理信息系统介绍管理信息系统就是我们常说的MIS(ManagementInformationSystem),在强调管理,强调信息的现代社会中它变得越来越普及。MIS是一门新的学科,它跨越了若干个领域,比如管理科学,系统科学,运筹学,统计学以及计算机科学。在这些学科的基础上,形成信息收集和加工的方法,从而形成一个纵横交织的系统。2.1管理信息系统的应用管理信息系统起初应用于基础性的工作,如打印报表,计算工资,人事管理等,进而发展到企业财务管理,库存管理等单项业务管理,这属于电子数据处理(EDP,ElectronicDataProcessing)系统。当建立了企业数据库,有了计算机网络从而达到数据共享后,从系统观点出发,实施全局规划和设计信息系统时,就达到管理信息系统的阶段。随着计算机技术的进步和人们对系统的需求进一步提高,人们更加强调管理信息系统能否支持企业高层领导的决策这一功能,更侧重与企业外部信息的收集、综合数据库、模型库、方法库和其他人工智能工具能否直接面向决策者,这是决策支持系统(DSS,DecisionSupportSystem)的任务。我国20世纪70年代末有少数企业开始MIS的局部应用。“六五”期间,选择一些大型企业进行MIS的开发试点,其中首都钢铁公司、北京第一棉织厂等取得了经验。20世纪80年代中后期,在全国性的计算机应用热潮中,许多企业纷纷从财务管理、人事管理等单项应用入手,尝试建立MIS。许多企业,如北京电视机厂,天津渤海无线电厂的MIS初具规模,建立了覆盖全厂的计算机网络。“八五”期间,企业逐步走向市场,MIS建设的目标和需求日益明确。目前,我国MIS已经有了相当的普及率,几乎覆盖了各个行业及各个部门。2.2管理信息系统的组成管理信息系统在企业中的应用存在三个要素,这就是人、计算机和数据。人是指企业领导者,管理人员,技术人员,以及MIS建设的领导机构和实施机构,他们在系统中起着主导作用。计算机技术是MIS得以实施的主要技术。在这些技术中,软件开发是MIS开发的重点。数据是MIS正常运行的基础。2.3管理信息系统的界面特点MIS人机界面设计一般遵循以下一些基本原则:1.以通信功能作为界面设计的核心;25\n东华理工大学毕业设计(论文)第2章管理信息系统介绍人机界面设计的关键是使人与计算机之间能够准确地交流信息。一方面,人向计算机输入信息时应当尽量采取自然的方式;另一方面,计算机向人传递的信息必须准确,不致引起误解。另外,不要把内部的处理、加工与人机界面混在一起,以免互相干扰,影响速度。2.界面必须始终一致;统一的人机界面不至于会增加用户的负担,让用户始终用同一方式思考与操作。最忌讳的是每换一个屏幕用户就要换一套操作命令与操作方法。3.界面必须使用户随时掌握任务的进展情况;人机界面应该能够告诉用户软件运行的进度。特别是在需要较长时间的等待时,必须让用户了解工作进展情况,如可以设计已经完成了百分之几的任务进度条。4.界面必须能够提供帮助;一个优秀的MIS软件应该提供在线求助功能,甚至提供使用向导,这将给用户带来极大的方便。5.界面友好、使用方便;多数MIS软件的数据输入量较大,对于一些相对固定的数据,不应让用户频频输入(特别是汉字),而应让用户用鼠标轻松选择。6.输入画面尽可能接近实际;7.具有较强的容错功能。误操作、按键连击等均有可能导致数据误录。巧妙地进行程序设计,可以避免此类因素造成的错误。2.4管理信息系统开发的一般方法管理信息系统的开发是一个复杂的系统工程,它涉及到计算机处理技术、系统理论、组织结构、管理功能、管理知识等各方面的问题,至今没有一种统一完备的开发方法。但是,每一种开发方法都要遵循相应的开发策略。任何一种开发策略都要明确以下问题:1.系统要解决的问题:如采取何种方式解决组织管理和信息处理方面的问题,对企业提出的新的管理需求该如何满足等。2.系统可行性研究:确定系统所要实现的目标。其包括目标和方案可行性、技术的可行性、经济方面的可行性和社会影响方面的考虑。3.系统开发的原则:在系统开发过程中,要遵循领导参与、优化创新、实用高效、处理规范化的原则。4.系统开发前的准备工作。5.系统开发方法的选择和开发计划的指定:针对已经确定的开发策略选定相应的开发方法,是结构化系统分析和设计方法,还是其它方法。开发计划的制定是要明确系统开发的工作计划、投资计划、工程进度计划和资源利用计划。25\n东华理工大学毕业设计(论文)第2章管理信息系统介绍MIS开发方法主要有:结构化生命周期开发方法、原型法、面向对象的开发方法等。现在就目前较为流行的结构化生命周期开发方法谈谈。其基本思想是:用系统的思想和系统工程的方法,按用户至上的原则,结构化、模块化地自上而下对生命周期进行分析和设计。其整个开发过程划分为5个依次连接的阶段:1.系统规划阶段:主要任务是明确系统开发的请求,并进行初步的调查,通过可行性研究确定下一阶段的实施。2.系统分析阶段:主要任务是对组织结构与功能进行分析,理清企业业务流程和数据流程的处理,并且将企业业务流程与数据流程抽象化,通过对功能数据的分析,提出新系统的逻辑方案。3.系统设计阶段:主要任务是讨论确定设计方案、划分子系统功能、确定共享数据的组织,然后进行详细设计,如处理模块的设计、数据库系统的设计、输入输出界面的设计和编码的设计等。4.系统实施阶段:主要任务是讨论确定设计方案、对系统模块进行调试、进行系统运行所需数据的准备、对相关人员进行培训等。5.系统运行阶段:主要任务是进行系统的日常运行管理,评价系统的运行效率,对运行费用和效果进行监理审计,如出现问题则对系统进行修改、调试。这五个阶段共同构成了系统开发的生命周期。结构化生命周期开发方法严格区分了开发阶段,非常重视文档工作,对于开发过程中出现的问题可以得到及时的纠正,避免了出现混乱状态。2.5管理信息系统的开发过程管理信息系统开发的过程一般包括系统开发准备、系统调查、系统分析、系统设计、系统实现、系统转换、系统运行和维护、系统评价等步骤。根据开发系统的大小、复杂、投入、方式、方法等因素的不同,各步骤的要求和内容也不同,用户需要根据实际情况进行取舍和计划。25\n东华理工大学毕业设计(论文)第3章本系统开发技术介绍第3章本系统开发技术介绍任何应用系统的开发都需要有相关的技术支持,例如语言技术,界面优化技术等。同样,本系统(东华理工学院田径运动会管理系统)也采样了几个主要的相关技术,尤其是利用了界面优化技术,打包和安装程序技术,使得界面更友好,美观。区别于其它管理系统的优点。下面就其相关技术做详细介绍。3.1ADO数据访问技术从简单的文本文件到各种复杂的关系型数据库,数据库应用程序需要面对各种各样的数据源。VisualBasic6.0提供ADO作为应用程序和OLE-DB连接的桥梁。ADO,即Active数据对象(ActiveDataObjects):实际是一种提供访问各种数据类型的连接机制。ADO设计为一种极简单的格式,通过ODBC的方法同数据库接口相连。用户可以使用任何一种ODBC数据源,即不仅适合于SQLSERVER、Oracle、Access等数据库应用程序,也适合于Excel表格、文本文件等数据文件。ADO是基于OLE-DB之上的技术,因此ADO通过其内部的属性和方法提供统一的数据访问接口方法。ADO集中了DAO和RDO的优点,可以通过简单的编程实现和各种数据结构进行连接。3.1.1ADO编程模型ADO通过下面几步来完成对数据库的操作:1.创建一个到数据源的连接(Connection),连接到数据库;或者开始一个事务(Transction)。2.创建一个代表SQL命令行(包括变量、参数、可选项等)的对象。3.执行命令行。4.如果返回以表格形式组织的数据,则将它们保存在缓存中,产生相应的数据集对象(Recordset)。这样便于查找、操作数据。5.通过数据集对象对数据进行各种操作,包括修改、删除、增加等。6.更新数据源,如果使用事务,确认是否接受事务期间发生的数据变化。7.结束连接和事务。3.1.2ADO对象模型1.连接对象------Connection:代表一个到指定数据源的成功连接。(主要属性:connectionstring主要方法:open、close、execute)。其在ADO中的地位如图3-1所示。图3-1连接对象在ADO中的地位25\n东华理工大学毕业设计(论文)第3章本系统开发技术介绍2.命令对象------Command:是对数据源将要执行的一系列操作的定义。使用命令行对象来查询数据库并返回数据集对象(Recordset)形式的查询结果(主要属性:commandtext、activeconnection主要方法:execute)。其在ADO中的地位如图3-2所示。图3-2命令行对象在ADO中的地位3.数据集对象------Recordset:通过数据集对象可以对记录以及组成记录的列进行各种操作。(主要属性:bof、eof、recordcount、cursortype主要方法:addnew、move、open、close)。其在ADO中的地位如图3-3所示。图3-3数据集对象在ADO中的地位3.2ODBC数据库访问技术ODBC(OpenDatabaseConnectivity,开放数据库互连)是Microsoft公司开放服务结构中有关数据库的一个组成部分,它指定了一套标准,并提供了一组对数据库访问的标准API(应用程序编程接口)使得应用程序只要根据这些标准就能够自由使用API函数。API利用SQL来完成其大部分操作。ODBC本身也提供了对标准SQL语言的支持,用户可以在ODBC中直接使用SQL语句。ODBC是为最大的互用性而设计的,即一个应用程序访问不同的数据库的操作不依赖任何DBMS(数据库管理系统),不直接与DBMS打交道。数据库应用程序调用ODBC接口中的函数,再由对应的DBMS的ODBC驱动程序完成。也就是说,ODBCAPI为访问不同的或者相异的数据库管理系统提供了统一的方法,即不论是foxpro、Acess还是SQLServer2000数据库,均可用ODBCAPI进行访问。一个完整的ODBC有下列几个部件组成。1.应用程序(Application)。执行处理并调用ODBC函数,以提交SQL语句并检索结果;2.ODBC管理器(Administrator)。该程序位于Windows控制面板的32位ODBC内,其主要任务是管理ODBC驱动程序和数据源;3.驱动程序管理器(DriverManager)25\n东华理工大学毕业设计(论文)第3章本系统开发技术介绍。是ODBC中重要部件,加载并卸载驱动程序,实现ODBC函数调用,或者把他们传送到驱动程序。4.ODBCAPI;5.ODBC驱动程序。实现ODBC函数调用后,向指定的数据源提交一个SQL请求,并把结果返回给应用程序;6.数据源。数据源包含了数据库位置和数据库类型等信息以及相关的操作系统信息,实际上是一种数据连接的抽象。它们之间的关系如图3-4所示。数据源(DNS)应用程序ODBC管理器ODBCAPISQL驱动程序管理器ODBC驱动程序数据源(datasource)应用层……………………………………………………………………………………ODBC层………………………………………………………………………………………数据层图3-4ODBC各部件关系注意:在VisualBasic中使用ODBCAPI函数之前,必须事先声明将要使用的函数、常量和数据结构。常用做法是在VisualBasic项目中单独使用一个模块文件,然后将ODBCAPI声明语句加入其中。3.3应用程序界面优化在VisualBasic中创建的窗体都Windows默认的格式,如果所有的窗体都是一个样式的,就会失去自己的特色,所以使用Activeskin控件为应用程序界面添加皮肤,从而创造自己满意的窗体。Activeskin控件是共享软件,可以直接下载使用。其下载网址是:http://www.softshape.com/activeskin25\n东华理工大学毕业设计(论文)第3章本系统开发技术介绍下载得到的一个名为activeskin.zip的压缩文件。双击此文件,运行其中的setup.exe,开始安装activeskin,按照安装向导的提示完成安装过程,安装完成后,可以直接在visualbasic中使用activeskin控件。3.4制作安装程序应用程序开发完成后,必须要制作成安装程序,才能提供给用户使用。所以,本文就安装程序的制作提供了技术方面的介绍,供大家参考。其过程如下:单击“开始”菜单,选择“程序”、“Microsoftvisualbasic6.0中文版”、“Microsoftvisualbasic6.0中文版工具”“package&deployment向导”工具,如图3-5所示。图3-5打包和展开向导编译完成后,将打开“选择包类型”窗口,如图3-6所示。图3-6选择包类型选择“标准安装包”,创建有setup.exe程序安装的包。然后单击“下一步”按钮,打开“打包文件夹”窗口,选择包存储的目录。选择完成后,单击“下一步”按钮。在“包含文件”窗口中,列出了安装包中包含的所有文件,可以单击“添加”按钮,把需要的文件添加到包中,如图3-7所示。25\n东华理工大学毕业设计(论文)第3章本系统开发技术介绍图3-7“包含文件”窗口单击“下一步”按钮,打开“压缩文件选项”窗口,可以选择以下两种选项:1.“单个的压缩文件”2.“多个压缩文件”选择完成后,单击“下一步”按钮,打开“安装程序标题”窗口。输入安装程序标题,这里输入“东华理工学院田径运动会管理系统”。根据其向导先完成打包,然后完成安装过程,双击setup.exe文件,开始安装,安装首先要复制文件,复制完成后,将进入安装程序的主界面,单击“确定”按钮,打开“设置安装选项”窗口,如图3-8所示。图3-8安装程序主界面根据其向导,完成“东华理工学院田径运动会管理系统”的安装,之后,可以在“开始”菜单的程序组中看到应用程序的菜单项,并单击该菜单项运行该系统。综上几个技术的应用,使信息管理系统功能实现更加简单,方便,且应用程序开发界面更加美观、友好,操作性强。25\n东华理工大学毕业设计(论文)第4章本系统开发相关图第4章本系统开发相关图东华理工学院田径运动会管理系统系统设置数据录入统计汇总查询个人成绩系统工具关于系统系别设置班级设置裁判员设置竞赛项目设置运动员报名成绩录入参赛人数统计管理员密码更改数据备份与恢复4.1系统功能模块示意图4-1所示。图4-1系统功能模块4.2ODBC应用程序基本结构顺序创建好数据源后,就可进行ODBC应用程序编写,其基本结构顺序如图4-2所示。连接数据源初始化阶段SQL处理结束阶段申请环境句柄释放语句句柄获取驱动程序能力设置环境句柄断开数据连接执行语句以及处理结果申请连接句柄释放连接句柄申请语句句柄连接数据源释放环境句柄设置语句句柄设置连接属性图4-2ODBC应用程序基本结构顺序25\n东华理工大学毕业设计(论文)第5章数据库设计及功能模块实现第5章数据库设计及功能模块实现5.1数据库设计要实现东华理工学院田径运动会管理系统的功能模块,首先需要利用SQLSERVER2000建立相应的数据信息,所以需要先建立相应的数据库sports,及其中具体的数据表:院系表、班级表、竞赛项目表、裁判员表、运动员表、运动员参赛表、管理员表等。1.院系表:用来保存学校各系,部名称信息。其结构如5-1所示。5-1院系表2.班级表:用来保存每个系或部的班级名称信息,必须首先有系或部的存在,才有班级存在。其结构如5-2所示。5-2班级表3.竞赛项目表:用来保存田径运动会所有比赛项目的基本信息,其结构如5-3所示。5-3竞赛项目表4.裁判员表:用来保存田径运动会所有裁判员的名称信息,其结构如5-4所示。5-4裁判员表25\n东华理工大学毕业设计(论文)第5章数据库设计及功能模块实现5.运动员表:用来保存运动员的基本信息,其结构如5-5所示。5-5运动员表6.运动员参赛表:用来保存运动员参赛的基本信息,其结构如5-6所示。5-6运动员参赛表7.管理员表:用来保存登陆系统的管理员信息,其结构如5-7所示。5-7管理员表5.2各个功能模块实现的原理5.2.1管理员登录界面的实现原理管理员登录界面的实现原理是根据确认用户是否为管理员而登录,如果用户不是管理员将不能登录系统,反之则登录系统,其系统界面如图5-2所示。也就是确认用户名和密码是否匹配,并是否存在该管理员。为了使登录界面更美观,使用activeskin第三方控件进行优化,其效果实现是在form_load()事件中加入相关代码(loadskin方法用来装入指定的皮肤文件,Applyskin方法则将选择的皮肤应用到指定窗体中),注意:如果下载得到的试用软件,则在使用时,每次都会弹出一个对话框,提示用户注册,注册后,此对话框将消失。由于登录系统的代码编写较普遍,所以在此不列举出来,只将利用activeskin25\n东华理工大学毕业设计(论文)第5章数据库设计及功能模块实现控件对登录界面进行优化的实现代码列举如下,其登录界面如图5-1示。图5-1登录界面PrivateSubForm_Load()Skin1.LoadSkinApp.Path+"\Skin2.skn"Skin1.ApplySkinMe.hwndEndSub如果登录输入的用户名和密码匹配,并存在该管理员,则进入系统主界面如图5-2所示。图5-2系统主界面25\n东华理工大学毕业设计(论文)第5章数据库设计及功能模块实现5.2.2竞赛项目设置功能实现的原理竞赛项目设置功能实现的原理是根据男子组,女子组和教工组的竞赛项目分别设置,即利用文本框text和组合框combo,然后采用datagrid控件进行数据处理。其对各组进行增加项目信息功能实现代码如下(其中主要利用了trim函数,即删除字符串左右空格;模块module中自定义的checkhav()函数,即检查由sql语句执行结果中的记录是否存在;insertinto语句,即向sqlserver数据库表插入数据等),其执行界面如图5-2所示。图5-3竞赛项目设置界面PrivateSubCmdOK_Click()sql="select项目名称from竞赛项目表where组别='"&ComboType.Text&"'and项目名称='"&Trim(TxtName.Text)&"'orderbyid"IfcheckHave(sql)ThenMsgBox"["&ComboType.Text&"]已有该竞赛项目记录,不要重复添加!",vbExclamation+vbOKOnly,"错误"ExitSubEndIfIfTrim(TxtName.Text="")ThenMsgBox"请输入竞赛项目名称!",vbExclamation+vbOKOnly,"错误"TxtName.SetFocusExitSubEndIfsql="insertinto竞赛项目表25\n东华理工大学毕业设计(论文)第5章数据库设计及功能模块实现(项目名称,组别,最高记录,创造者,预赛,复赛,决赛)values("sql=sql&"'"&Trim(TxtName.Text)&"',"sql=sql&"'"&Trim(ComboType.Text)&"',"sql=sql&"'"&Trim(TxtResual.Text)&"',"sql=sql&"'"&Trim(TxtUser.Text)&"',"sql=sql&"'"&Trim(ComboYN1.Text)&"',"sql=sql&"'"&Trim(ComboYN2.Text)&"',"sql=sql&"'"&Trim(ComboYN3.Text)&"')"CallExecuteSQL(sql,msgString)MsgBox"添加竞赛项目["&TxtName.Text&"]成功!",vbExclamation+vbOKOnly,"错误"TxtName.Text=""ComboType_ClickEndSub5.2.3运动员报名功能实现原理运动员报名功能实现原理是通过添加运动员基本信息和参赛项目来完成,即利用文本框text和组合框combo输入,采用datagrid控件显示数据,并且运动员报名有限制条件,即各系每个单项只能报4人,每人只能报2项等,容错性比较好。其运动员编号功能(根据系的id号*100开始编号,并根据其系已经报名的运动员人数进行统计,然后利用id*100+count(‘运动员号’)自动生成后面号码)实现代码如下。其执行界面如图5-3所示。图5-3运动员报名界面PrivateSubComboClass_Click()25\n东华理工大学毕业设计(论文)第5章数据库设计及功能模块实现DimidAsIntegerDimsportsNoAsIntegerid=ComboClass.ListIndex+1sql="select班级名称from班级表where系别编号="&idCallshowCombo2(ComboGrade,sql)'***生成运动员编号***sql="selectcount('运动员号')as人数from运动员表where系别编号="&idSetRs=ExecuteSQL(sql,msgString)IfRs("人数")=0ThencodeNo.Text=id*100ElsesportsNo=id*100+Rs("人数")codeNo.Text=sportsNoEndIfEndSub5.2.4班级设置功能实现原理班级设置功能的实现原理是:首先在一个下拉组合框(comboclass)中选择所要设置班级的系别名称,这样考虑到系别的快速选择,而不必输入并且准确,然后在一个文本框(txtgrade)中添加该系所包含的班级名称,添加成功有相应的成功提示信息,如果班级重复,则不能再添加。当然还可以对班级名称进行删除,修改,其实现是利用datagrid控件自带的功能,只要进行相关的属性设置即可。其功能实现界面如图5-4所示。图5-4班级设置界面其添加班级功能实现代码如下:PrivateSubCmdAdd_Click()sql="select班级名称from班级表where班级名称='"&TxtGrade.Text&"'"25\n东华理工大学毕业设计(论文)第5章数据库设计及功能模块实现IfcheckHave(sql)ThenMsgBox"["&ComboClass.Text&"]已有该班记录,不要重复添加!",vbExclamation+vbOKOnly,"错误"ExitSubEndIfIfTrim(TxtGrade.Text="")ThenMsgBox"请填写班级名称!",vbExclamation+vbOKOnly,"错误"TxtGrade.Text=""TxtGrade.SetFocusElsesql="insertinto班级表(系别编号,班级名称)values("sql=sql&"'"&ComboClass.ListIndex+1&"',"sql=sql&"'"&Trim(TxtGrade.Text)&"')"CallExecuteSQL(sql,msgString)MsgBox"添加班级["&ComboClass.Text&"]成功!",vbExclamation+vbOKOnly,"错误"TxtGrade.Text=""ComboClass_ClickEndIfEndSub5.2.5运动员成绩查询功能实现原理运动员成绩查询功能实现原理是通过了解该运动员的组别,例如男子组,女子组还是教工组,然后了解该运动员的项目名称,进行查询其预赛成绩,复赛成绩和决赛成绩。该功能实现的特点是利用组合框控件,进行下拉选择,而不必输入,既快又准确。其相应的界面和代码就不在此列出。5.2.6模块module功能窗体可以实现工程的外观显示,添加程序代码,实现需要的功能,但是如果不借助模块,代码重复率将很大,并且调试起来较难,更正也较多,所以工作量将会增加更多。因此,借助模块,把需要经常用到的功能实现统一放到模块中,然后在窗体程序中调用,这样,效果就会明显很好。在本次系统功能实现中,其模块module中主要包括各种用以执行各种SQL语句函数ExecuteSQL();将回车键转换为tab键的函数entertab();显示系统启动时显示登录窗口函数main()等函数,以及一些变量和常量,其具体代码如下PublicRsAsADODB.RecordsetPublicsql,msgStringAsStringPublicLoginUserAsStringPublicconnStringAsString'调用SQL函数PublicFunctionExecuteSQL(ByValsqlAsString,msgStringAsString)As25\n东华理工大学毕业设计(论文)第5章数据库设计及功能模块实现ADODB.Recordset'传递参数SQL传递查询语句,MsgString传递查询信息'自身以一个数据集对象的形式返回DimcnnAsADODB.Connection'定义连接DimrstAsADODB.Recordset'定义字符串DimsTokens()AsString'异常处理OnErrorGoToExecuteSQL_Error'用Split函数产生一个包含各个子串的数组sTokens=Split(sql)'创建连接Setcnn=NewADODB.Connection'打开连接cnn.Open"DSN=sports;UID=sa;PWD=;Database=sports"'判断字符串中是否含有指定内容IfInStr("INSERT,DELETE,UPDATE",UCase$(sTokens(0)))Then'执行查询语句cnn.Executesql'返回查询信息msgString=sTokens(0)&"querysuccessful"Else'创建数据集对象Setrst=NewADODB.Recordset'返回查询结果rst.OpenTrim$(sql),cnn,adOpenKeyset,adLockOptimistic'返回记录集对象SetExecuteSQL=rstmsgString="查询到"&rst.RecordCount&"条记录"EndIfExecuteSQL_Exit:'清空数据集对象Setrst=Nothing25\n东华理工大学毕业设计(论文)第5章数据库设计及功能模块实现'中断连接Setcnn=NothingExitFunction'错误类型判断ExecuteSQL_Error:msgString="查询错误:"&Err.DescriptionResumeExecuteSQL_ExitEndFunctionSubMain()DimfLoginAsNewLoginFrmconnString="DSN=sports;UID=sa;PWD=;Database=sports"'显示登录窗体fLogin.ShowvbModal'判断是否授权用户IfNotfLogin.okThenEndEndIfUnloadfLogin'判断是将进入系统SetfMainForm=NewmainfrmfMainForm.ShowEndSub综上所列举的代码和界面是实现“东华理工学院田径运动会管理系统”的具有代表性,有特色,关键性的一部分。25\n东华理工大学毕业设计(论文)第6章系统运行调试和出错处理第6章系统运行调试和出错处理当程序有了一定的复杂程度后,无论用户在编写程序时如何仔细,错误总是不可避免的。有些错误非常简单,很容易排除,而有些错误隐藏很深,必须采用一些特殊的手段才能找出来。消灭错误的过程叫纠错,在消灭一个错误之前,首先要发现错误。查找错误最简单的办法是运行程序,逐行检查。但对于大程序来说,逐行检查显然难以被接受的。Visualbasic提供了程序调试工具,通过设置断点、观察变量和过程跟踪等手段,来清除程序代码中存在的错误。所以程序调试运行是非常必要的,从而根据错误去加以纠正,直到调试成功进行为止。在本次系统开发过程中,开始实行模块程序编写和调试,然后对整个系统进行运行和调试。在调试过程中,运动的错误类型有语法错误,编译错误,运行错误和逻辑错误。对于语法错误和编译错误较容易处理,但对于运行错误和逻辑错误较难解决,所以有时借助于viusalbasic提供的帮助窗口解决。在此系统运行过程中遇到的典型运行错误和逻辑错误,以及解决方法简述如下:1.ODBC数据源配置。ODBC数据源没配置好以致程序运行时出现了(实时错误“91”;对象变量或with块变量未设置)的提示信息框出现。以为程序编写有错,但经过查阅资料和参考书,认定程序编写没错。于是,询问指导老师,经过指导老师的提示和讲解,该系统使用了两种解决办法,最后调试发现是信息系统开发过程中重要而且易被遗漏的一步是:数据库创建后,程序运行开始时,首先需要配置ODBC数据源。其配置是利用“控制面板”中的“管理工具”,再双击“数据源ODBC”图标,单击“系统文件”选项,根据向导进行配置完成。在配置过程中要注意Uid和pwd的设置,在连接数据库编程时要设置其相同,否则也连接不上。2.将Enter键转换为TAB键:为了操作更加方便,快捷,有时借助键盘击键更好,例如:当数据输入完毕后,需要点击确定或取消按钮执行程序运行,通常需要用鼠标来执行,但是考虑到执行要快且方便,所以在模块中自定义一个函数entertab(),将回车键Enter转换为Tab键,然后在text的keypress事件中调用该函数,且添加cmd0k_click等事件就可以。这样脱离鼠标,而通过键盘执行程序更好,更快。注意到了程序的操作性强特点。3.datagrid控件。在信息系统开发过程中,经常要对数据进行增加,删除,修改处理,如果利用其它数据觉察控件,则需要通过编写代码来完成。但是datagrid控件封装了这些功能,因此不需要编写代码完成,直接调用它就可以方便完成,这样既快,由简单,而且界面很友好。4.充分利用模块module。由于以前课程设计涉及的管理信息系统较小,不利用25\n东华理工大学毕业设计(论文)第6章系统运行调试和出错处理模块,而在相应的界面中编写代码,也能顺利地实现该系统。但是,随着系统规模的增大,就比如本系统,是个较大系统,开始不利用模块这功能,发现代码重复率较高,而且调试时很难。于是在指导老师和同学的帮助下,充分利用模块,在其中声明常量,变量和一些经常要用到的自定义函数,于是在程序编写时充分调用它们。这样代码编写量大大减少,而且程序调试时也容易发现错误和纠正错误。综上几点,是在东华理工学院田径运动会开发系统中遇到的典型错误和发现,然后利用相关办法来解决。当然也遇到其它的错误和问题,但是就主要的几点简述如上。并且这几点,对信息管理系统是很重要的,也是本人在系统开发过程中的发现。大家以后在系统开发中可以参考,也希望大家能够提出更好的方案,指正本人的不足。因此,系统开发过程中,应用程序功能编程固然重要,但是界面的友好,操作性强也是很关键的。所以需要不断运行程序,并不断调试程序,即能消灭错误,又能发现更好的方案。25\n东华理工大学毕业设计(论文)结束语结束语通过这次的毕业设计,即东华理工学院田径运动会管理系统的开发设计,让本人体会了很多,也学到了不少,归纳起来主要如下:1.大学四年虽然所学的计算机理论知识较优秀,但由于上机实践较少,以致随着时间的前进,理论知识易被忘记,而且掌握不够牢固和灵活。以至本次的毕业设计所涉及的知识虽然大部分是以前所学过的,但应用起来还是觉得陌生,必须重新复习才能够熟悉而顺利地应用。所以本人建议计算机专业的同学应当多多实践,达到事半功倍的效果。对于即将步入工作岗位的本人,要求以后用实践去学习理论;2.了解到进行一个大型的信息管理系统所必不可少的几个阶段。毕业设计能够从理论设计和工程实践相结合、巩固基础知识与培养创新意识相结合、个人作用和集体协作相结合等方面全面的培养学生的全面素质。本人经过这次系统的毕业设计,熟悉了对一项课题进行研究、设计和实验的详细过程。并且提高了自学能力,培养了刻苦专研,孜孜不倦的学习精神。这些在我们在将来的工作和学习当中都会有很大的帮助;3.学会了怎样查阅资料和利用工具书。平时课堂上所学习的知识大多比较陈旧,作为计算机专业的学生,由于专业特点自己更要积极查阅当前的最新资料。一个人不可能什么都学过,什么都懂,因此,当你在设计过程中需要用一些不曾学过的东西时,就要有针对性地查找资料,然后加以吸收利用,以提高自己的应用能力,而且还能增长自己见识,补充最新的专业知识;4.毕业设计培养了严肃认真和实事求是的科学态度。而且培养了吃苦耐劳的精神以及相对应的工程意识。通过这次毕业设计,本人不仅掌握了许多新的知识,更为重要的是,本人的自学能力和把所学知识应用于实践的能力也有了很大的提高,为今后的学习和工作奠定了良好的基础。总之,经过三个多月的毕业设计,终于圆满结束。本人深深体会到这次毕业设计既是一次大学四年综合知识的检阅,又是一次能力锻炼,增强了即将跨入社会和工作岗位去竞争,去创造的自信心!25\n东华理工大学毕业设计(论文)致谢致谢作为一个即将步入社会,即将走上工作岗位的毕业生。在离校之际,深深地向母校鞠躬,向您表示衷心的感谢:感谢您四年以来给予本人许多的能力锻炼机会;感谢您四年授予了本人专业知识,人际关系知识,团体合作知识等;感谢您四年给本人提供美好而舒适的学习环境。经过三个月的深思苦学,不断探索和实践,这次毕业设计终于有所成果。因此在此感谢指导老师王强耐心的指导和帮助,也感谢他的严格要求,使本人学到了更多的知识,提高了专业实践能力,为今后的工作和学习奠定了更好的基础;感谢本校的体育部主任赵克峰详细分析本校的田径运动会实际情况和流程,使本人所开发的“东华理工学院田径运动会管理系统”更加合乎要求,更加完善。同时也谢谢在毕业设计阶段为本人解决疑难问题,提供帮助的同学。最后,要感谢本次毕业设计所参考的文献资料的作者,正是由于学习他们的著作,解决了毕业设计出现的诸多难题,且学到了更多的新知识,扩大了本人的知识面。25\n东华理工大学毕业设计(论文)参考文献参考文献1.刘韬,骆鹃,何旭洪.visualbasic6.0数据库系统开发实例导航.人民邮电出版社,20022.罗运模.SQLSERVER2000数据仓库应用与开发.人民邮电出版社,20013.孙魏泽.SQLSERVER2000数据库设计与实现.清华大学出版社,20014.段兴.visualbasic6.0数据库应用程序设计100例.人民邮电出版社,20025.DineZar.visualbasic6.0编程(提高版)英文原版.电子工业出版社,20026.龚沛曾,陆慰民,杨志强.visualbasic程序设计教程.高等教育出版社,19987.萨师煊,王珊.数据库系统概论(第三版).高等教育出版社,20008.ANSI(AmericanNationalStandardsInstitute).InformationResourceDictionarySystems.DocumentANSIX3.138,19899.NavatheS,KerschbergL.RoleofDataDictionariesinDatabaseDesign.InformationandManagement,198625