版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
学位论文学生管理系统的设计与实现论文作者姓名:申请学位专业:申请学位类别:指导教师姓名〔职称〕:论文提交日期:学生管理系统的设计与实现摘要随着信息处理技术的飞速开展,基于计算机网络的信息处理系统已成为人们日常工作,学习和生活必备系统。在Internet飞速开展的今天,互联网已成为人们快速获取,发布和传递信息的重要渠道,它已成为社会生活的一局部。学生信息处理的电脑化,网络化,是实现学校管理现代化和信息化的重要内容,也是方便用户快捷查询相关充足信息的重要工具。与传统学生信息处理模式相比,基于网络的学生管理系统具有无可比较的优越性。本系统是利用VisualBasic程序设计语言及Access2003数据库进行设计与开发的一个简单的学生管理系统。本文首先对学生信息管理系统进行较详细的需求分析,并给出系统总体架构及详细设计步骤?这个系统主要包括系统进入界面、用户登录界面、信息管理〔主界面〕、学籍管理、班级管理以及退出系统等模块,主要功能包括学生信息的添加,修改,删除,查询等功能?该系统的开发目的是利用计算机管理学生的学籍信息,它具有友好的用户界面、检索速度快、查找方便、容易修改、存储量大、数据处理快捷、保密性好、寿命长以及本钱低等。关键词:学生管理系统VisualBasic数据库信息查询表单AccessStudentmanagementsystemdesignandimplementationAbstractAlongwiththerapiddevelopmentofinformationprocessingtechnology,informationmanagementsystem,whichisbasedoncomputernetwork,hasbecomeanecessitysysteminroutinework,studyandlife.WiththerapiddevelopmentoftheInternet,todaytheInternethasbecomeanimportantchannelforfastgaining,issuingandtransmittinginformation,andobviouslyithasbeenanessentialpartofoursociallife.Computerizationandnetworkstationofstudentinformationprocessingareimportantforrealizingmodernizationandinformationofschooladministration,anditalsoisanimportantwayforsearchingsufficientinformationofusers.Comparedwiththetraditionalpattern,studentmanagementsystembasedontheInternethasincomparablesuperiority.ThissystemistheuseofVisualBasicprogramminglanguageandtheAccess2003databasedesignanddevelopmentofasimplestudentmanagementsystem.Thispaperfirstcarriesonadetaileddemandanalysistothestudentinformationmanagementsystem,andthengivestheoverallconstructionandthedetaileddesignprocedure.thesystemaccessinterface,theuserlogininterface,informationmanagement(mainform),schoolmanagement,classmanagementandexitthesystemareincludedinthissystem.Itsmainfunctionsincludestudentinformationstatistics,adding,modifying,deletion,inquiryandsoon.Thepurposeofthesystemistomanagestudentinformationwithcomputer,suchasfriendlyuserinterface,searchquickly,easytoqueryandmodify,largerstoragecapacity,higherdata-processingspeed,goodprivacy,longlifeandlowcostandsoon.Keywords:StudentManagementSystem;VisualBasic;DataBase;InformationInquiry;form;Access目录1学生管理系统的概述 11.1选题的意义 11.3可行性分析 21.3.1社会与经济可行性分析 21.3.2技术可行性分析 21.3.3操作可行性分析 31.3.4开发环境分析 32开发工具的介绍 32.1VB开发环境的特点 32.2数据库根本概念与MicrosoftAccess 52.2.1数据管理技术开展过程 52.2.2数据库系统简介 62.3数据库设计根底 72.3.1数据库设计的标准化 72.3.2数据库设计的步骤 82.4数据管理系统Access概述 82.4.1Access的根本特点 82.4.2Access的根本对象 82.5使用VB数据库开发技术 92.5.1ADO对象模型 92.5.2使用ADO数据控件 92.5.3使用ADO访问数据库 102.5.4SQL语言 133需求分析与数据库设计 153.1需求分析 153.1.1需求分析的原那么 153.1.2用户需求分析及系统性能需求分析 163.2系统总体设计框架图 163.3数据库的设计 193.3.1系统数据流分析 193.3.2实体E-R图分析 203.3.2数据库逻辑设计 223.3.4数据表间关系 234学生管理系统的实现 244.1主窗体的创立 244.3用户登录窗体的创立 254.4学生管理模块的创立 254.5选课管理模块的创立 294.6成绩管理模块的创立 29结论 33参考文献 34致谢 35声明 361学生管理系统的概述1.1选题的意义随着中国信息化的加速开展,位于教育前沿的学校在办公自动化上也加快了脚步,为了摒弃传统的人工对学生的信息进行书面的记录方式,引进了计算机管理方法,在最大的程度上实现学校的办公自动化和现代化。虽然现在的学校在学生档案管理上都使用了计算机进行管理,但是现在市场上流行的学生档案管理软件有些并不是针对学校对学生的档案管理需求研发的,而是针对广阔的企事业单位开发出来的,这就一定会在某些方面给学校的学生档案管理带来不便,有些学生档案管理软件的功能虽然比较强大,但其价位普遍较高,而且其繁琐的操作对于对计算机不是掌握的很好的学校学生档案管理工作人员来说无疑是一道屏障,造成了这样的学生档案管理软件不能很好的得到充分的应用,造成系统的“浪费〞。而学校对计算机不是很熟悉的管理工作人员,运用这样的软件很有可能会由于操作的失误造成学生档案信息的丧失、成绩记录的错误或系统崩溃。给学校带来无法弥补的损失。对于学校的实际情况,本系统在实施后,能使教学管理人员从繁琐的工作中解脱出来,真正的、全身心投入到教学管理工作中去,集中管理,同时带动学校管理步入现代化管理阶段,节省了大量的人力,物力,财力和时间,使管理清晰准确,使学籍管理体系更加科学化,标准化,管理化。基于以上的原因,开发一套操作简单、维护方便、适合各个阶段学校使用的学生档案管理系统就显得十分重要与紧迫。于是提出该课题,解决当今学校亟待解决的学生档案的管理问题。1.2国内外开展情况国外高校一般具有较大规模的稳定的技术队伍来提供效劳与技术支持。国内高校信息化建设相对起步较晚。在数字校园理论逐步应用的过程中,各高校一方面不断投资购建各种硬件、系统软件和网络,另一方面也不断开发实施了各类教学、科研、办公管理等应用系统,形成了一定规模的信息化建设体系。但是,由于整体信息化程度相对落后,经费短缺,理论体系不健全等原因,国内高校教务管理系统在机构设置、效劳范围、效劳质量及人员要求上与国外高校相比都有一定的差距。随着社会的开展和经济时代的到来,管理信息系统在各行各业都越来越重要,特别是教育事业。在经济兴旺的国家,许多教育机构(如公办、私立、培训机构等),都投入了大量的资金开发MIS系统,以求在将来剧烈的竞争中立于不败之地。在我国,教育事业是现在最受重视个行业,是随着改革开放和市场经济的开展根据中国特有的国情开展起来的,特别是中国大力加强教育体制改革,从一定的程度上标准和促进了中国教育事业的开展,这是一个很有开展前途的重要事业,但是同兴旺国家相比,我国的教育行业的信息技术的应用程度还很低,只有在大城市中开展较早、规模较大的院校中才使用计算机进行大规模操作,从各方面提高工作效率,取得良好的社会和经济效益,而一些较小的学校机构还没有全部具备这种功能。因此可见,随着我国教育事业的迅速开展,信息技术在其上的应用会更加地广泛和深入。现在国内市场上流行的学生管理软件有些并不是针对学校对学生管理需求研发的,而是针对广阔的企事业单位开发出来的,这就一定会在某些方面给学校的学生档案管理带来不便。所以,开发一款界面友好,使用方便的学生管理系统已经成为提高学校综合素质的关键之一。1.3可行性分析可行性分析也称为可行性研究,是在系统调查的根底上,针对新系统的开发是否具备必要性和可能性,对新系统的开发从技术、经济、社会的方面进行分析和研究,以防止投资失误,保证新系统的开发成功。可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。社会与经济可行性分析随着科学技术的不断提高,计算机科学的日渐成熟,其强大的功能已经为人们深刻的认识,它已经进入了我们生活的各个领域并发挥着越来越重要的作用。MIS是计算机应用的一局部,使用计算机对学生的相关信息进行管理。同时,为了顺应时代的开展,适应我国教育深化改革,全面实施素质教育的需要,教育部也适时地提出了加快普及信息技术,以教育信息化带动教育现代化的战略目标。所以学生管理系统的开发在社会是可行的。近几年,计算机技术的开展和计算机办公自动化的普及和应用,学校计算机的应用也有了较大的提高。计算机也都成为学校管理工作中的重要设备,每个单位、每个部门都有不同程度的计算机应用。在硬件方面,无需购置性价比很高的计算机,而只需利用目前已有的奔腾Ⅱ、奔腾Ⅲ等的计算机即可。所以从硬件方面上完全可行。根据用户的要求,分析其特点,在经济上本工程是可行的,采集,编辑,发布,人员不需要专业的编程知识就可以快速高效地发布题库信息。这样加快了信息发布速度,减少了人力的开销,缩短了从采集到发布的时间周期,从而提高了效劳的质量,而且由于管理周期缩短和人力开销的减少,可以在学校信息化中获得更多的好处。在软件上,如找软件开发公司单独开发软件所需费用一般比较高,并且实用性不强,日后的维护升级等问题也不易解决。而由我们自己研究开发一套适合学校实际需要的管理软件,即可节约资金,也便于日常维护、备份和系统升级。1.3.2技术可行性分析数据库是指自描述的完整记录的集合。数据库技术在20世纪60年代中期产生,它的出现使信息系统的研制从以加工数据的程序为中心转变为以共享数据库为中心来进行。数据库开始是在大公司或机构中进行大规模数据处理后来随着计算机的逐渐普及,数据库才应用到计算机上。数据库开展到今天,已经是相当成熟的阶段,它对大量数据处理的能力在不断的提高、开展和完善。从技术角度分析,MIS系统在理论上对于操作系统并没有明确的限制,即采用WindowsXP以上的版本;Access是我们学习期间最常用的数据库管理系统,它的稳定性和易用型都是我们大家所熟知的。因此,在数据管理系统上我采用了Access。在开发工具的选择上,我选用了MicrosoftVisualBasic6.0,它不仅是我们大学课程中的核心课,而且在MIS系统的开发中也是被大量经常使用的。所以开发学生管理信息系统在技术上是可行的。操作可行性分析现代计算机软硬件的开展使得本系统具有良好的操作界面,简单直接的操作界面,具有较强的人机对话能力,支持多种汉字输入方式,其适应性强,显示内容简单明了,使操作者不必具有较高的计算机专业知识,也不必进行专门的培训,稍一接触就可以上手进行所有操作。开发环境分析VB具有可视化集成开发环境,以事件驱动、图形用户界面等为特点,在设计时有着其独特的优越性。它采用了可视化的、面向对象的程序设计方法,大大简化了应用系统的开发过程,并提高了系统的模块性和紧凑性。VB中提供了大量的系统开发工具和控件,利用ADO结合SQL技术开发数据库使得操作和管理非常方便,从而使以往费时费力的开发工作变得轻松自如。2开发工具的介绍2.1VB开发环境的特点VisualBasic中的“Visual〞一词意为“可视化〞的意思,它是指一种开发图形用户界面(GUI)的方法。VisualBasic是基于Basic的可视化的程序设计语言,是一种由微软公司开发的包含协助开发环境的事件驱动编程语言。从任何标准来说,VB都是丠界上使用人数最多的语言——不仅是盠赞VB的开发者还是抱怨VB的开发者的数颃。VB拥有图形用户界面(GUI)和快速应用程序开发(RAD)系统,可以轻易的使用DAO、RDO、ADO连接数据库,或者轻松的创立ActiveX控件。程序员可以轻松的使用VB提供的组仠快速建立一个应用程序。VisualBasic之所以受到广阔编程爱好者及专业编程人员的青睐,是因为它具有以下一些特点:1、面向对象VB采用了面向对象的程序设计思想。它的根本思路是把复杂的程序设计问题分解为一个个能够完成独立功能的相对简单的对象集合,所谓“对象〞就是一个可操作的实体,如窗体、窗体中的命令按钮、标签、文本框等。面向对象的编程就好似搭积木一样,程序员可根据程序和界面设计要求,直接在屏幕上“画〞出窗口、菜单、按钮等不同类型的对象,并为每个对象设置属性。2、事件驱动在Windows环境下,程序是以事件驱动方式运行的,每个对象都能响应多个不同的事件,每个事件都能驱动一段的代码——事件过程,该代码决定了对象的功能。通常称这种机制为事件驱动。事件可由用户的操作触发,也可以由系统或应用程序触发。例如,单击一个命令按钮,就触发了按钮的Click(单击)事件,该事件中的代码就会被执行。假设用户未进行任何操作(未触发事件),那么程序就处于等待状态。整个应用程序就是由彼此独立的事件过程构成。3、软件的集成式开发VB为编程提供了一个集成开发环境。在这个环境中,编程者可设计界面、编写代码、调试程序,直至把应用程序编译成可在Windows中运行的可执行文件,并为它生成安装程序。VB的集成开发环境为编程者提供了很大的方便。4、结构化的程序设计语言VB具有丰富的数据类型,是一种符合结构化程序设计思想的语言,而且简单易学。此外作为一种程序设计语言,VB还有许多独到之处。5、强大的数据库访问功能VB利用数据控件可以访问多种数据库,VB6.0提供的ADO控件,不但可以用最少的代码实现数据库操作和控制,也可以取代Data控件和RDO控件。6、支持对象的链接与嵌入技术VB的核心是对对象的链接与嵌入(OLE)技术的支持,它是访问所有对象的一种方法。利用OLE技术,能够开发集声音、图像、动画、字处理、Web等于一体的对象的程序。7、网络功能VB6.0提供了DltTML设计工具。利用这种技术可以动态创立和编辑Web页面,使用户在VB中开发多功能的网络应用软件。8、多个应用程序向导VB提供了多种向导,如应用程序向导、安装向导、数据对象向导和数据窗体向导,通过它们可以快速地创立不同类型、不同功能的应用程序。9、支持动态交换、动态链接技术通过动态数据交换(DDE)的编程技术,VB开发的应用程序能与其他Windows应用程序之间建立数据通信。通过动态链接库技术,在VB程序中可方便地调用C语言或汇编语言编写的函数,也可调用Windows的应用程序接口(.API)函数。10、联机帮助功能在VB中,利用帮助菜单和F1功能键,用户可随时方便地得到所需要的帮助信息。VB帮助窗口中显示了有关的例如代码,通过复制、粘贴操作可获取大量的例如代码,为用户的学习和使用提供方便。本论文主要以VisualBasic6.0企业版(VisualBasic6.0有学习版、专业版和企业版三个不同版本)为背景进行程序设计。2.2数据库根本概念与MicrosoftAccess数据管理技术开展过程数据管理技术的开展,与计算机硬件(主要是外部存储器)、系统软件及计算机应用的范围有着密切的联系。数据管理技术的开展经历了以下几个阶段:人工管理阶段、文件系统阶段、数据库系统阶段和高级数据库系统阶段。人工管理阶段这一时期的数据管理技术具有如下特点(见图2.1):(1)数据管理由应用程序完成。(2)数据不能共享。(3)数据缺乏独立性。(4)数据不能保存。图2.12、文件系统阶段这一时期的数据管理技术具有如下特点(见图2.2):(1)数据管理由文件管理系统完成。(2)数据共享性差、冗余度大。(3)数据独立性差。(4)数据可长期保存。图2.23、数据库系统阶段这一时期的数据管理技术具有如下特点(见图2.3):(1)数据结构化。(2)数据共享程度高。(3)数据独立性强。(4)数据冗余度小。(5)加强对数据的保护。图2.3高级数据库系统阶段这一时期的数据库技术又有了很大的开展,表现如下:(1)数据库方法。(2)商用数据库系统的运行。(3)关系方法的理论研究。2.2.2数据库系统简介数据库系统(DatabaseSystem,DBS)是指拥有数据库技术支持的计算机系统。它可以实现有组织地、动态地存储大量相关数据,提供数据处理和信息资源共享效劳。数据库系统由计算机系统(硬件和根本软件)、数据库、数据库管理系统、数据库应用系统和有关人员(数据库管理员、应用设计人员、最终用户)组成。1、数据描述事物的物理符号序列称为数据(Data)。描述事物的物理符号可以是用来表示长度、体积、重量之类的数字数值,也可以是人名或地名、图形、图像、动画、影像、声音等非数值数据。2、数据库数据库(Database,DB),顾名思义,是存放数据的仓库。是长期存放在计算机内,有组织的、大量的、可共享的数据集合。数据库中的数据按一定的数据模型组织、描述和存储,具有较小的冗余度、较高的数据独立性和易扩展性,并可为多个用户、多个应用程序共享。数据库具有以下特点:(1)数据的共享性:数据库中的数据能为多个应用效劳。(2)数据的独立性:用户的应用程序与数据的逻辑组织和物理存储方式无关。(3)数据的完整性:数据库中的数据在维护活动中始终保持正确性。(4)数据库冗余数据较少。3、数据库管理系统数据库管理系统(DatabaseManagementSystem,DBMS)是位于用户与操作系统(OS)之间的数据管理软件。其主要功能包括以下几个方面:(1)数据库定义功能;(2)数据存取功能;(3)数据库运行管理功能;(4)数据库的建立及日常维护功能;(5)数据库通信功能。4、数据库应用系统数据库应用系统是为特定应用开发的数据库应用软件。数据库管理系统为数据的定义、存储、查询和修改提供支持,而数据库应用系统是对数据库中的数据进行处理和加工的软件,它面向特定应用。一般在不引起混淆的情况下常常把数据库系统简称为数据库5、关系型数据库(1)现行的大局部数据库都采用关系模型,把每一个数据集合或数据间的联系看成是一张二维表,即关系表。(2)数据库(Database):所有相关数据和规那么的集合(3)数据表(Table):数据表简称表,由一组数据记录组成。(4)记录(Record):表中的每一行为一个记录,由假设干字段组成。(5)字段(Field):也称域。表中的每一列称为一个字段。(6)主键(PrimaryKey):某个字段或某些字段的组合可以定义为主键。保证可以通过主键唯一标识一条记录。(7)查询(Query):查询用来从一个或多个表中获取一组指定的记录,一般用SQL语句来表达。6、目前流行的数据库管理系统(1)大中型数据库管理系统。(2)Oracle,Sybase,Infomix,MSSQLServer等。(3)小型桌面数据库管理系统。(4)VisualFoxPro6.0,MicrosoftAccess2000。(5)本论文以MicrosoftAccess为主进行设计。2.3数据库设计根底数据库设计的标准化1、第一范式(1NF)设R是一个关系模式,如果R中的每个属性都是不可再分的最小数据项,那么称R满足第一范式或R是第一范式,第一范式简记为1NF。2、第二范式(2NF)如果关系模式R是第一范式,且所有非主属性都完全依赖于其主关键字,那么称R满足第二范式或R是第二范式,第二范式简记为2NF。3、第三范式(3NF)假设关系中有A、B、C三个属性,传递依赖是指关系中B属性依赖于主关键字段A,而C属性依赖于B属性,称字段C传递依赖于A。如果关系模式R是第二范式,且所有非主属性对任何主关键字都不存在传递依赖,那么称R满足第三范式或R是第三范式,第三范式简记为3NF。数据库设计的步骤包括:1、系统需求分析阶段2、概念结构设计阶段3、逻辑结构设计阶段4、物理设计阶段5、数据库实施阶段6、数据库运行与维护阶段2.4数据管理系统Access概述MicrosoftAccess2000是一种桌面数据库管理系统,而Access是VisualBasic的内部数据库,即默认的数据库类型。Access数据库的所有表和索引都存储在一个.MDB文件中。Access的根本特点1、存储文件单一2、支持长文件名及名称自动更正3、兼容多种数据库格式4、具有Web网页发布功能5、可应用于客户机/效劳器方式6、操作使用方便2.4.2Access的根本对象1、表表是与特定主题(如产品或供给商)有关的数据的集合。对每个主题使用一个单独的表意味着用户只需存储该数据一次,这可以提高数据库的效率,并减少数据输入错误。2、查询查询是通过设置某些条件,从表中获取所需要的数据。按照指定规那么,查询可以从一个表、一组相关表和其他查询中抽取全部或局部数据,并将其集中起来,形成一个集合供用户查看。将查询保存为一个数据库对象后,可以在任何时候查询数据库的内容。3、窗体窗体是Access数据库对象中最具灵活性的一个对象,是数据库和用户的一个联系界面,用于显示包含在表或查询中的数据和操作数据库中的数据。在窗体上摆放各种控件,如文本框、列表框、复选框、按钮等,分别用于显示和编辑某个字段的内容,也可以通过单击、双击等操作,调用与之联系的宏或模块(VBA程序),完成较为复杂的操作。4、报表报表可以按照指定的样式将多个表或查询中的数据显示(打印)出来。报表中包含了指定数据的详细列表。报表也可以进行统计计算,如求和、求最大值、求平均值等。报表与窗体类似,也是通过各种控件来显示数据的,报表的设计方法也与窗体大致相同。5、页页(或称为数据访问页)可以实现数据库与Internet(或Intranet)的相互访问。数据访问页就是Internet网页,将数据库中的数据编辑成网页形式,可以发布到Internet上,提供给Internet上的用户共享。也就是说,网上用户可以通过浏览器来查询和编辑数据库的内容。6、宏宏是假设干个操作的组合,用来简化一些经常性的操作。用户可以设计一个宏来控制系统的操作,当执行这个宏时,就会按这个宏的定义依次执行相应的操作。宏可以翻开并执行查询、翻开表、翻开窗体、打印、显示报表、修改数据及统计信息、修改记录、修改表中的数据、插入记录、删除记录、关闭表等操作。7、模块模块是用VBA语言编写的程序段,它以VisualBasic为内置的数据库程序语言。对于数据库的一些较为复杂或高级的应用功能,需要使用VBA代码编程实现。通过在数据库中添加VBA代码,可以创立出自定义菜单、工具栏和具有其他功能的数据库应用系统。2.5使用VB数据库开发技术ADO对象模型ADO是Microsoft处理数据库信息的最新技术,它是一种ActiveX对象,采用了被称为OLEDB的数据访问模式。它是数据访问对象DAO、远程数据对象RDO和开放数据库互连ODBC三种方式的扩展。ADO对象模型更为简化,不管是存取本地的还是远程的数据,都提供了统一的接口。2.5.2使用ADO数据控件在使用ADO数据控件前,必须先通过“工程/部件〞菜单命令选择“MicrosoftADODataControl6.0(OLEDB)〞选项,将ADO数据控件添加到工具箱。ADO数据控件与VisualBasic的内部数据控件很相似,它允许使用ADO数据控件的根本属性快速地创立与数据库的连接。使用ADO访问数据库在VisualBasic中,可用的数据访问接口有三种:ActiveX数据对象(ADO,ActiveXDataObjects)、远程数据对象(RDO,RemoteDataObjects)和数据访问对象(DAO,DataAccessObjects)。数据访问技术总是在不断进步,而这三种接口的每一种都分别代表了该技术的不同开展阶段。最新的是ADO,它是比RDO和DAO更加简单,然而却更加灵活的对象模型。对于新工程,应该使用ADO作为数据访问接口。ADO特点:ADO最主要的优点是易于使用,速度快,内存支出少。ADO支持建立客户端/效劳器和基于Web的应用程序的关键功能。ADO是实现Internet数据库访问的根底。利用ADO不仅可以通过一个Web网页实现对数据库的访问。初步使用ADO要学习两个根本控件和一个对象。1、ADODC控件即ADO数据控件,用于连接数据源,生成RecordSet。ADODC控件常用属性和方法:ConnectionString属性,RecordSource属性,RecordSet对象,Refresh方法。(1)ConnectionString属性ConnectionString属性包含了用于与数据源建立连接的相关信息。创立连接时,可以采用以下源之一:一个连接字符串,一个文件(MDL),一个ODBC数据源名称(DSN)。(2)RecordSource属性RecordSource确定具体可访问的数据,这些数据构成记录集对象Recordset。该属性值可以是数据库中的单个表名,也可以是使用SQL语言的一个查询字符串。(3)记录集对象(RecordSet)Recordset对象的常用属性与方法:.Open,Close.AddNew.Delete.Update.MoveXXXX.Bof,Eof.RecordCount其中Move方法:.使用Move方法可以遍历记录集中的记录。.MoveFirst,MoveLast:移至第一个或最后一个记录。.MoveNext,MovePrevious:移至下一个或上一个记录。.Moven:向前或向后移n个记录。.AddNew方法:向数据表中添加新记录。.Update方法:数据更新.Delete方法:删除数据表中当前记录。.首先,将要删除的记录定位为当前记录;.然后,调用Delete方法;.最后,移动记录指针,确定所做删除操作。(4)Refresh方法如果在设计状态没有为翻开数据库控件的有关属性全部赋值,或当RecordSource在运行时被改变后,必须使用激活数据控件的Refresh方法激活这些变化。2、DataGrid控件数据表格控件,用于显示RecordSet中的数据记录。DataGrid控件常用属性:(1)DataSource:设置数据来源(2)AllowAddNew:是否允许加新纪录(3)AllowDelete:是否允许删除纪录(4)AllowUpdate:是否允许更新(修改)纪录使用DataGrid控件几乎不用编写代码就可直接将数据库的记录显示在网格内。当把DataGrid控件的DataSource属性设置为一个Adodc控件时,DataGrid控件会被自动地填充浏览数据表的查询结果。3、RecordSet对象记录集对象,用于对数据记录进行操作。4、如何添加ADODC和DataGrid控件ADO数据控件的用途及外形和Data控件相似,但是通过MicrosoftActiveX数据对象(ADO)来建立对数据源的连接。ADO数据控件通过属性实现了对数据源的连接。添加ADODC(ADO数据控件)控件:“工程〞菜单(或鼠标右击控件箱)-“部件〞-“MicrosoftADODataControl6.0〞。添加DataGrid控件:“工程〞菜单(或鼠标右击控件箱)-“部件〞-“MicrosoftDataGridControl6.0〞。见图2.4、图2.5、图2.6。图2.4DataGridADODCDataGridADODC图2.5ADODCDataGridADODCDataGrid图2.65、ADO访问数据库步骤总结(1)放置相应的ADODC和DataGrid控件(2)设置ADODC控件(3)ConnectionString属性连接到数据源(4)RecordSource属性连接到数据表或SQL查询语句(5)将DataGrid控件的DataSource属性设置为ADODC控件名。(6)在相应位置编写对RecordSet对象的数据记录操作。(7)运行程序SQL语言通用的SQL语言,最早于1974年提出,当时称为SEQUEL语言,后来被国际标准化组织ISO采纳为国际标准,现在大多数数据库管理系统都支持SQL语言。SQL是一种处理数据的高级语言,是非过程化语言,在查询数据时,只需指出“要什么〞,而不需指出如何实现的过程。SQL语言包括数据定义、查询、操纵和控制功能。SQL语言的语法格式简单,使用方便灵活。1、表定义语句广义上讲,表定义语句包括数据表的创立语句(Create语句)、数据表修改语句(Alter语句)和数据表删除语句(Drop语句)。2、视图定义语句视图是对数据表中数据的一种显示方式,用一个数据表可以有多个视图,以根据用户的不同需求,将数据表中用户所关心的数据提取出来,显示给用户,忽略数据表中其他数据。视图也可以理解为一种预先定义好的查询。实际上,查询的优点在于可在多个数据表之间按指定的条件对数据进行筛选显示。3、索引定义语句索引是加速数据查询的重要手段,索引一旦被建立起来,就成为了数据库的一部份,并占用数据库的存储空间。使用索引的突出优点就是加快数据的查询速度,但是,对于数据的插入、删除和修改操作来说,索引却降低了执行效率。4、数据操纵语句数据操纵包括数据的插入、更新和删除等操作,数据操纵语句是应用程序编制过程中使用较多的语句之一。5、INSERT语句INSERT语句所实现的功能是向数据库中插入新的数据,该语句的一般语法如下:InsertintotableName[(fieldList)]values(valueList)6、UPDATE语句UPDATE语句用于更新数据表中的数据。所谓的更新是指数据已经存在于数据表,但需要对其中的数据进行修改,此时可以使用UPDATE语句实现。7、DELETE语句如果某些数据需要从数据表中删除,那么可以使用DELETE语句进行,该语句的根本语法如下:DeletefromtableName[Whereselect_conditon]8、查询语句查询语句是SQL语言中使用最为频繁的语句,查询可以根据需要在数据表内或者多个数据表之间进行数据筛选。熟练掌握数据查询语句,才能编写出高质量的数据库管理软件。查询是SQL语言最重要最核心的功能之一。在SQL语言中查询是通过Select语句实现的,最简单的SQL语句结构如下:Select字段列表From表名9、条件查询Select语句除了可以对字段进行筛选以外,还可以对记录进行筛选和操作,此时,要用到Where字句。Where子句在Select语句中用于指定查询条件,其结构一般如下:Select字段列表from表名Where条件表达式10、查询排序SQL语句还可以对查询的结果进行排序,此时,要用到Orderby子句。另外,还要用到两个负责排序方式的关键词ASC和DESC,ASC指明按升序排列查询结果;DESC那么指明按降序进行排列。排序查询的结构一般如下:SelectfieldlistFromtableName[Whereselect_conditon]Orderbyfield1[ASC|DESC],field2[ASC|DESC]11、统计查询SQL语言对数值型的字段具有统计的功能,该功能涉及到5个统计函数,介绍如下:Count(*):统计符合查询条件的记录的个数。AVG(field):计算某个数值型字段的平均值。Max(field):返回某个数值型字段的最大值。Min(field):返回某个数值型字段的最小值。Sum(field):计算某个数值型字段所有记录的和。12、Groupby子句Groupby子句的作用是将查询结果中的数据按指定字段分组,Groupby子句常与统计函数一起使用,以对查询数据实现分组统计。Groupby子句的一般语法如下:Groupby字段1,字段213、Distinct关键词在数据表的某个字段中可能会出现多个重复的值,使用Distinct关键字可以防止查询结果中出现重复的记录。含Distinct关键词的SQL语句结构一般如下:SelectDistinct字段名列表From表名Where条件表达式14、Top关键词Top关键词的作用是限制查询结果的返回数目。该关键词常被用来限制显示查询结果中前多少个或者前百分之多少的记录。因此,Top关键词经常和Orderby子句一起出现。Top关键词的根本语法:TopnTopnPercent15、多表查询SQL语言还可以实现在同一个数据库中的不同数据表之间进行查询。16、多重查询SQL语句允许嵌套使用,这种查询一般是把其中一个查询的结果作为另一个查询语句的查询条件。多重查询中一般会出现In、NotIn、All、Some或者Any等关键词。In和NotIn用来指定某值在和不在某区间或者集合;All表示集合中的全部,而Some和Any那么表示集合中的一局部。17、EXISTS关键词EXISTS(NOTEXISTS)关键词是复合查询语句中的常用关键词,其作用是判断复合查询语句的内层查询是否存在查询结果。使用EXISTS关键词时内层查询只是起到一个判断是否存在查询结果的作用,其筛选出的数据对整个查询没有任何作用。3需求分析与数据库设计3.1需求分析需求分析的原那么需求分析是软件定义阶段的一个重要阶段,需求分析包括用户需求分析和系统性能需求分析。需求分析是指开发人员要准确理解用户的要求,进行细致的调查分析,将用户非形式的需求陈述转化为完成的需求定义,再由需求定义转换到相应的形式功能规约(需求规格说明)的过程。1、需求分析的原那么(1)必须能够表达和理解问题的数据域和功能域。(2)可以把一个复杂的问题按功能进行分解并可逐层细化。(3)建模。模型可以帮助分析人员更好的理解软件系统的信息、功能、和行为,这些模型也是软件设计的根底。2、需求分析的方法(1)功能分解方法功能分解方法是将一个系统看成是由假设干功能构成的一个集合,每个功能可划分成假设干个加工,一个加工又进一步分解成假设干加工步骤。(2)结构化分析方法结构化分析方法是一种从问题空间到某种表示的映射方法,由数据流图表示软件的功能,是结构化方法中重要的,被普遍接受的表示系统。(3)信息建模方法信息建模方法是从数据的角度来对现实世界建立模型的,它对问题空间的认识是很有帮助的。3.1.2用户需求分析及系统性能需求分析学校管理工作是一个十分繁重的工作,学校学生的管理同样十分繁重。在学生日常管理工作中,必须处理大量的信息。而人工进行信息地收集、处理、汇总、统计、报表、存档工作又相当繁琐和复杂。本系统(学生信息与成绩综合管理系统)就是为了解决上述问题而开发的。通过对学校学生日常业务工作内容和信息的分析,确定学生信息与成绩综合管理系统的主要功能如下:(1)实现根本的数据库操作〔包括增加、修改、删除和查询〕。(2)查询功能要实现精确查询和模糊查询。(3)合理管理学生信息与成绩信息及其之间的相互联系。(4)实现成绩以多种方式排序的功能。(5)实现成绩以多种方式显示,如以数据表方式显示等。(6)实现报表并可打印。(7)实现文件翻开和文件保存功能,保存时也可以以多种格式保存。(8)有系统平安功能。(9)界面显示,美观大方,操作简便。系统性能需求分析:(1)准确可靠。(2)功能齐全。(3)有较快的响应速度。(4)便于扩充及维护。(5)操作直观、方便、用户接口友好。3.2系统总体设计框架图下面简要的介绍一下系统各模块的功能:(1)学生管理模块:该模块的主要任务是对学生信息进行查询和管理,包括学生学籍信息的查询、更新功能。其中查询功能可分为按学号和按姓名查询,查询的具体信息包括学生的学号、姓名、性别、、寝室号、住址、及备注信息;更新功能包括对新入学学生信息的添加以及对现有学生信息的修改、删除。(2)课程管理模块:该模块的主要任务是对学生所学课程相关信息的查询和课程信息的添加与修改。在进入该模块时,同样查询条件也分为按姓名查询与按学号查询;按照权限的不同可以分别实现教师选课和学生选课;课程更新的功能只有管理员有相应的权限,包括增添、删除课程,以及对已有课程信息的修改和删除。(3)教师管理模块:该模块的功能由管理员来实现,主要是添加新的教师信息,查询、修改或删除已有的教师信息。(4)成绩管理模块:对于学生身份来说该模块主要完成的任务是通过对学生的姓名、学号的选择进行成绩的查询。另外还有成绩高级查询的功能,可以对学生的成绩按课程名称、学生学号、分数段进行复合查询;成绩更新子模块是针对教师与管理员设计的,该模块中实现的是对学生成绩的添加、修改与删除功能。(5)奖学金管理模块:该模块主要完成用户对学生所获得的奖学金情况的登记记录,查询和修改功能。学生学生管理系统学生管理员教师学生管理选课管理成绩管理奖学金管理信息查询已选课程学生选课课程查询成绩查询奖学金查询学生管理选课管理成绩管理奖学金管理信息查询信息更新教师信息查询教师信息更新教师管理学生已选课程添加信息修改信息添加教师信息修改教师信息课程查询课程更新添加课程修改课程综合成绩查询成绩更新添加成绩修改成绩奖学金查询奖学金添加奖学金修改学生管理选课管理成绩管理奖学金管理信息查询已选课程教师选课课程查询奖学金查询成绩更新综合成绩查询添加成绩修改成绩图3.13.3数据库的设计系统数据流分析管理员管理员学生教师信息P1教师档案管理P2学生档案管理P3课程管理P4奖学金管理P5成绩管理教师档案教师档案表D2教师档案学生档案表D3教师档案课程信息表D6教师档案奖学金表学生信息课程信息奖学金信息成绩信息D4教师档案成绩表教师成绩信息P6查询查询条件查询结果P7查询查询条件查询结果P8选课D5教师档案选课表选课信息P9教师选课D7教师档案教师选课表选课信息D1图3.2实体E-R图分析 实体的E-R图:实体有:学生实体、课程实体、奖学金实体、成绩实体、教师实体。学生学生学号*学号*政治面貌性别出生日期姓名性别出生日期姓名寝室号备注地址寝室号备注地址图3.3学生实体图课程课程学分课程号*学分课程号*上课地点任课教师课程名上课地点任课教师课程名图3.4课程实体图奖学金奖学金学号*等级学号*等级图3.5奖学金实体图成绩成绩分数课程号*分数课程号*学号学号图3.6成绩实体图教师教师教师号*教师号*备注备注政治面貌教师姓名政治面貌教师姓名学历专业性别学历专业性别图3.7教师实体图学生学生成绩课程取得教授奖学金获得管理1mnmn1111管理1m管理1教师m管理1m获得管理1m添加选课11nn11管理员图3.8实体间的关系E-R图说明:其中管理员实体与其他几个实体之间的联系都是管理,并且都是一对多的关系,表示了一个管理员可以管理多门课程,管理多个学生,管理多个教师信息,并且每门课程、每个学生、每个教师都由一个管理员来进行管理;学生实体与成绩实体之间的联系是取得,表示一个学生可以获得多门成绩,一门成绩可以被多个学生获得,因此他们之间具有多对多的联系;课程实体与成绩实体之间的联系是获得,每一门课程只可以有一个成绩,每一个成绩只能被登记在一门课程中,一次他们之间具有一对一的联系。数据库逻辑设计Stu_info(学生信息表)字段名称类型长度备注Sno(学号)Text3主键,输入三位Sname(学生姓名)Text10Sex(姓别)Text2Teleno(号码)Text13Dorno(寝室号)Text3Addr(住址)Text50Comment(备注)Text50Data〔出生日期〕Dtm8Postatus〔政治面貌〕Text10表3.1学生信息表Stu_course(学生课程表)字段名称类型长度备注Cno(课程号)Text2主键Cname(课程名称)Text20Tno(教师号)Text10Credit〔学分〕Text20至4分Caddr(上课地点)Text20表3.2学生成绩表Stuscore(成绩表)字段名称类型长度备注Cno(课程号)Text2主键,输入两位Sno(学号)Text3主键,输入三位Score(分数)single50表3.3奖学金表Scholarship_table(奖学金表)字段名称类型长度备注Sno〔学号〕Text3主键Rank(等级)Text15一等至四等表3.4教师信息表Tea_info(教师信息表)字段名称类型长度备注Tno〔教师号〕Text10主键Tname〔教师姓名〕Text10Sex〔性别〕Text4Tzy〔专业〕Text20Txl〔学历〕Text10Postatus〔政治面貌〕Text50Tbz〔备注〕Text50表3.5教师课程表Tea_kc(教师课程表)字段名称类型长度备注Cno〔课程号〕Text10主键Tno〔教师号〕Text10数据表间关系表间关系的说明:学生信息表〔stu_info〕与学生密码表〔pass_table〕、奖学金表〔Scholarship_table〕之间通过主键学号〔Sno〕相联系,学生信息表〔stu_info〕与学生成绩表〔stu_score〕也是通过主键学号〔Sno〕相联系;学生成绩表〔stu_score〕与学生课程表〔stu_course〕、教师课程表〔tea_kc〕通过主键课程号〔cno〕相联系;教师信息表〔tea_info〕与教师课程表〔tea_kc〕、教师密码表〔teacher〕相联系,特别说明在系统以教师身份登录时,以(teacher_ID)作为密码。数据表之间的关系如以下图所示:scholarship_tablescholarship_tablesnorankpass_tablesnopasswordstu_infosnosnamesextelenodornoaddrcommentdatapostatusteachertnoteacher_IDstu_scorecnosnoscorescore_avgscore_sumtea_infotnotnamesextzytxlpostatustbzstu_coursecnocnamecreditcaddrtea_kctnocno图3.9表间关系4学生管理系统的实现4.1主窗体的创立主窗体菜单的创立:添加一个MDI单击右键在菜单编辑器里设置即可。 图4.1学生管理系统主窗体4.3用户登录窗体的创立用户登录窗体的创立窗体界面如下:图4.2用户登录窗体系统启动后,将出现上图界面,用户首先选择登录身份,之后再输入用户名和密码。如果3次输入密码不正确,将退出程序。主要思想流程:输入,判断用户名是否空,空那么从新输入,查询用户是否存在,不存在那么从新输入,判断密码,假设不正确那么判断输入次数是否超过3次,没超过从新输入,超过退出。4.4学生管理模块的创立(1)学生信息查询窗体的建立窗体界面:图4.3学生信息查询窗体说明:点击选项可分为按学号查询和按照姓名查询。既可以在下拉菜单中选择已存在的学号和姓名,也可以手工输入学号或姓名查询。如果您输入的信息有误,在系统中并不存在,系统那么会提示:图4.4输入有误提示(2)学生信息更新窗体的建立学生信息更新这一子模块中分为两个选项:学生信息添加和学生信息修改。下面以学生信息添加窗体为例做简要说明:①学生信息添加窗体界面:图4.5学生信息添加窗体PrivateSubCommand1_Click()OnErrorGoTowarnIfText1=""OrText2=""OrText4=""OrText5=""OrText6=""OrText7=""ThenMsgBox"请输入完的数据!",48,"警告"Text1.SetFocusExitSubEndIfWithData1.Recordset.AddNew.Recordset("sno")=Text1.Recordset("sname")=Text2.Recordset("sex")=optsex.Recordset("teleno")=Text4.Recordset("dorno")=Text5.Recordset("addr")=Text6.Recordset("comment")=Text7.Recordset.UpdateEndWithMsgBox"记录已经被保存!",64,"提示"Text1="":Text2=""::Text4="":Text5="":Text6="":Text7="":ExitSubwarn:MsgBox"失败!您的输入有误,请重新输入",48,"注意数据的有效性"Text1=""Text2=""Option1(0).Value=TrueText4=""Text5=""Text6=""Text7=""ExitSubEndSubPrivateSubCommand2_Click()UnloadMeEndSubPrivateSubForm_Load()Option1(0).Value=TrueData1.Visible=FalseEndSubPrivateSubOption1_Click(IndexAsInteger)SelectCaseIndexCase0optsex=Option1(0).CaptionCase1optsex=Option1(1).CaptionEndSelectEndSub说明:本窗体实现了对新入学学生信息的添加,在应用时只需按各输入项要求填入信息,点击“更新〞即可。“更新〞按钮的主要功能是判断,看所填入的信息是否符合记录要求。“取消〞按钮使查看的几个按钮有效,使修改的几个按钮无效。4.5选课管理模块的创立此模块与学生管理模块相似,同样分为两个子模块:课程信息查询与课程信息更新,课程信息更新中再分为课程信息添加与课程信息的修改。课程信息查询窗体图4.6学生课程信息查询窗体通过本窗体,可选用学号或姓名中任意查询条件对学生所选课程进行查询,在学号或姓名的Listbox显示相应的学生姓名或学号,便于查询。4.6成绩管理模块的创立这里主要讲查询,界面和前面的查询相似,只是不同权限查询的内容不同。图4.7学生权限的成绩查询窗体图4.8管理员权限的成绩查询窗体主要的代码如下:Submessage()IfAdodc1.Recordset.EOFThenMsgBox"没有您要查询的记录!",64,"提示"DataCombo1.SetFocusExitSubEndIfEndSubPrivateSubCommand1_Click()b="selectstu_info.sno,sname,stu_scoreo,cname,credit,scorefromstu_info,stu_score,stu_coursewherestu_info.sno=stu_score.snoandstu_scoreo=stu_courseo"IfDataCombo1.Text=""AndDataCombo2.Text=""Thena=0ElseIfDataCombo2.Text=""Thena=1ElseIfDataCombo1.Text=""Thena=2Elsea=3EndIfSelectCaseaCase0MsgBox"请输入局部或全部查询条件!",48,"注意"DataCombo1.SetFocusExitSubCase1Adodc1.RecordSource=b+"andstu_info.sno='"&DataCombo1.Text&"'orderbyscoredesc"Adodc1.RefreshCallmessageCase2Adodc1.RecordSource=b+"andstu_scoreo='"&DataCombo2.Text&"'orderbyscoredesc"Adodc1.RefreshCallmessageCase3Adodc1.RecordSource=b+"andstu_info.sno='"&DataCombo1.Text&"'andstu_scoreo='"&DataCombo2.Text&"'orderbyscoredesc"Adodc1.RefreshCallmessageEndSelectEndSubPrivateSubCommand2_Click()UnloadMeEndSubPrivateSubDataCombo1_Click(AreaAsInteger)IfArea=2ThenAdodc4.RecordSource="selectsno,snamefromstu_infowheresno='"&DataCombo1.Text&"'"Adodc4
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 武汉市部分重点中学 2024-2025 学年度上学期期中联考 高二地理试卷
- 2025年高考物理专项复习:机械波及光的运用(分层练)(解析版)
- 广告制作合同范本怎么写
- 2024年证券交易市场委托交易规则
- 绿色环保课程设计
- 农贸市场摊位租赁条款
- 房产抵押借款合同范文模板
- 健身教练聘用协议书
- 员工保密协议书范本模板
- 房屋设计装潢合同样本
- GB/T 44200-2024建筑垃圾再生骨料生产成套装备技术要求
- 2024年二级建造师网考试试题答案
- 15《我与地坛》教学设计2023-2024学年统编版高中语文必修上册
- DL∕T 1687-2017 六氟化硫高压断路器状态评价导则
- 数字教育资源质量评估指标体系建构
- 文言文阅读训练:《通鉴纪事本末-刘邦起兵》(附答案解析与译文)
- 保密及知识产权归属协议范本(2024版)
- 食品辐照行业发展现状及潜力分析研究报告
- 南京2024年江苏南京市审计局所属事业单位招聘人员笔试历年典型考题及考点附答案解析
- (2020版)煤矿安全生产标准化管理体系评分表
- (完整版)工匠精神课件
评论
0/150
提交评论