版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、郑州大学现代远程教育毕 业 论 文题目:学生管理系统的设计与实现入 学 年 月 8 年秋 _ 姓名李少杰_ 学号_ 0885206008_ 专业_ 计算机科学与技术_学 习 中 心_邢台农校 _ 指 导 教 师岳红霞 _ 完成时间2010 年 10 月 11 日i 学生管理系统的设计与实现摘要随着信息处理技术的飞速发展, 基于计算机网络的信息处理系统已成为人们日常工作,学习和生活必备系统。 在 internet飞速发展的今天 , 互联网已成为人们快速获取, 发布和传递信息的重要渠道 , 它已成为社会生活的一部分。学生信息处理的电脑化,网络化, 是实现学校管理现代化和信息化的重要内容, 也是方便
2、用户快捷查询相关充足信息的重要工具。与传统学生信息处理模式相比, 基于网络的学生管理系统具有无可比拟的优越性。本系统是利用 visual basic程序设计语言及access 2003 数据库进行设计与开发的一个简单的学生管理系统。 本文首先对学生信息管理系统进行较详细的需求分析, 并给出系统总体架构及详细设计步骤?这个系统主要包括系统进入界面、用户登录界面、信息管理(主界面) 、学籍管理、班级管理以及退出系统等模块,主要功能包括学生信息的添加, 修改, 删除,查询等功能 ?该系统的开发目的是利用计算机管理学生的学籍信息,它具有友好的用户界面、检索速度快、查找方便、容易修改、存储量大、数据处理
3、快捷、保密性好、寿命长以及成本低等。关键词:学生管理系统 visual basic 数据库信息查询表单 access ii 目录1学生管理系统的概述. 1 1.1 选题的意义. 1 1.3 可行性分析. 2 1.3.1 社会与经济可行性分析. 2 1.3.2 技术可行性分析. 2 1.3.3 操作可行性分析. 3 1.3.4 开发环境分析. 3 2 开发工具的介绍. 3 2.1 vb 开发环境的特点. 3 2.2 数据库基本概念与microsoft access . 5 2.2.1 数据管理技术发展过程. 5 2.2.2 数据库系统简介. 6 2.3 数据库设计基础. 7 2.3.1 数据库设
4、计的规范化. 7 2.3.2 数据库设计的步骤. 8 2.4 数据管理系统access 概述 . 8 2.4.1 access的基本特点. 8 2.4.2 access的基本对象. 8 2.5 使用 vb数据库开发技术. 9 2.5.1 ado 对象模型. 9 2.5.2 使用 ado数据控件 . 9 2.5.3 使用 ado访问数据库 . 10 2.5.4 sql语言 . 13 3 需求分析与数据库设计. 15 3.1 需求分析 . 15 3.1.1 需求分析的原则. 15 3.1.2 用户需求分析及系统性能需求分析. 16 3.2 系统总体设计框架图. 16 3.3 数据库的设计. 19
5、3.3.1 系统数据流分析. 19 3.3.2 实体 e-r 图分析 . 20 3.3.2 数据库逻辑设计. 22 3.3.4 数据表间关系. 23 4 学生管理系统的实现. 24 4.1 主窗体的创建. 24 4.3 用户登录窗体的创建. 25 4.4 学生管理模块的创建. 25 4.5 选课管理模块的创建. 29 4.6 成绩管理模块的创建. 29 结论 . 33 参考文献 . 34 致谢 . 35 第 1 页 共 36 页1 学生管理系统的概述1.1 选题的意义随着中国信息化的加速发展,位于教育前沿的学校在办公自动化上也加快了脚步,为了摒弃传统的人工对学生的信息进行书面的记录方式,引进了
6、计算机管理方法,在最大的程度上实现学校的办公自动化和现代化。虽然现在的学校在学生档案管理上都使用了计算机进行管理,但是现在市场上流行的学生档案管理软件有些并不是针对学校对学生的档案管理需求研发的,而是针对广大的企事业单位开发出来的,这就一定会在某些方面给学校的学生档案管理带来不便,有些学生档案管理软件的功能虽然比较强大,但其价位普遍较高,而且其繁琐的操作对于对计算机不是掌握的很好的学校学生档案管理工作人员来说无疑是一道屏障,造成了这样的学生档案管理软件不能很好的得到充分的应用,造成系统的“浪费”。而学校对计算机不是很熟悉的管理工作人员, 运用这样的软件很有可能会由于操作的失误造成学生档案信息的
7、丢失、成绩记录的错误或系统崩溃。给学校带来无法弥补的损失。对于学校的实际情况,本系统在实施后,能使教学管理人员从繁琐的工作中解脱出来,真正的、全身心投入到教学管理工作中去,集中管理,同时带动学校管理步入现代化管理阶段,节省了大量的人力,物力,财力和时间,使管理清晰准确,使学籍管理体系更加科学化,规范化,管理化。基于以上的原因,开发一套操作简单、维护方便、适合各个阶段学校使用的学生档案管理系统就显得十分重要与紧迫。于是提出该课题,解决当今学校亟待解决的学生档案的管理问题。1.2 国内外发展情况国外高校一般具有较大规模的稳定的技术队伍来提供服务与技术支持。国内高校信息化建设相对起步较晚。在数字校园
8、理论逐步应用的过程中,各高校一方面不断投资购建各种硬件、系统软件和网络,另一方面也不断开发实施了各类教学、科研、办公管理等应用系统,形成了一定规模的信息化建设体系。但是,由于整体信息化程度相对落后,经费短缺,理论体系不健全等原因,国内高校教务管理系统在机构设置、服务范围、服务质量及人员要求上与国外高校相比都有一定的差距。随着社会的发展和经济时代的到来,管理信息系统在各行各业都越来越重要,特别是教育事业。在经济发达的国家,许多教育机构(如公办、私立、培训机构等) ,都投入了大量的资金开发mis 系统,以求在将来激烈的竞争中立于不败之地。在我国,教育事业是现在最受重视个行业,是随着改革开放和市场经
9、济的发展根据中国特有的国情发展起来的,特别是中国大力加强教育体制改革,从一定的程度上规范和促进了中国教育事业的发展,这是一个很有发展前途的重要事业,但是同发达国家相比,我国的教育行业的信息技术的应用程度还很低,只有在大城市中发展较早、规模较大的院校中才使用计算机进行大规模第 2 页 共 36 页操作,从各方面提高工作效率,取得良好的社会和经济效益,而一些较小的学校机构还没有全部具备这种功能。因此可见,随着我国教育事业的迅速发展,信息技术在其上的应用会更加地广泛和深入。现在国内市场上流行的学生管理软件有些并不是针对学校对学生管理需求研发的,而是针对广大的企事业单位开发出来的,这就一定会在某些方面
10、给学校的学生档案管理带来不便。 所以,开发一款界面友好,使用方便的学生管理系统已经成为提高学校综合素质的关键之一。1.3 可行性分析可行性分析也称为可行性研究,是在系统调查的基础上,针对新系统的开发是否具备必要性和可能性,对新系统的开发从技术、经济、社会的方面进行分析和研究,以避免投资失误,保证新系统的开发成功。可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。1.3.1 社会与经济可行性分析随着科学技术的不断提高,计算机科学的日渐成熟,其强大的功能已经为人们深刻的认识,它已经进入了我们生活的各个领域并发挥着越来越重要的作用。mis是计算机应用的一部分,使用计算机对学生的
11、相关信息进行管理。同时,为了顺应时代的发展,适应我国教育深化改革,全面实施素质教育的需要,教育部也适时地提出了加快普及信息技术,以教育信息化带动教育现代化的战略目标。所以学生管理系统的开发在社会是可行的。近几年,计算机技术的发展和计算机办公自动化的普及和应用,学校计算机的应用也有了较大的提高。计算机也都成为学校管理工作中的重要设备,每个单位、每个部门都有不同程度的计算机应用。在硬件方面,无需购买性价比很高的计算机,而只需利用目前已有的奔腾、奔腾等的计算机即可。所以从硬件方面上完全可行。根据用户的要求,分析其特点,在经济上本项目是可行的,采集,编辑,发布,人员不需要专业的编程知识就可以快速高效地
12、发布题库信息。这样加快了信息发布速度,减少了人力的开销,缩短了从采集到发布的时间周期,从而提高了服务的质量,而且由于管理周期缩短和人力开销的减少,可以在学校信息化中获得更多的好处。在软件上,如找软件开发公司单独开发软件所需费用一般比较高,并且实用性不强,日后的维护升级等问题也不易解决。而由我们自己研究开发一套适合学校实际需要的管理软件,即可节约资金,也便于日常维护、备份和系统升级。1.3.2 技术可行性分析数据库是指自描述的完整记录的集合。数据库技术在20 世纪 60 年代中期产生,它的出现使信息系统的研制从以加工数据的程序为中心转变为以共享数据库为中心来进行。数据库开始是在大公司或机构中进行
13、大规模数据处理后来随着计算机的逐渐普及,数据库才应用到计算机上。数据库发展到今天,已经是相当成熟的阶段,它对大量数据处理的能力第 3 页 共 36 页在不断的提高、发展和完善。从技术角度分析, mis系统在理论上对于操作系统并没有明确的限制,即采用windows xp以上的版本; access 是我们学习期间最常用的数据库管理系统,它的稳定性和易用型都是我们大家所熟知的。因此,在数据管理系统上我采用了access。在开发工具的选择上,我选用了 microsoft visual basic 6.0,它不仅是我们大学课程中的核心课,而且在mis系统的开发中也是被大量经常使用的。所以开发学生管理信息
14、系统在技术上是可行的。1.3.3 操作可行性分析现代计算机软硬件的发展使得本系统具有良好的操作界面,简单直接的操作界面,具有较强的人机对话能力,支持多种汉字输入方式,其适应性强,显示内容简单明了,使操作者不必具有较高的计算机专业知识,也不必进行专门的培训,稍一接触就可以上手进行所有操作。1.3.4 开发环境分析vb具有可视化集成开发环境,以事件驱动、图形用户界面等为特点,在设计时有着其独特的优越性。它采用了可视化的、面向对象的程序设计方法,大大简化了应用系统的开发过程,并提高了系统的模块性和紧凑性。vb中提供了大量的系统开发工具和控件,利用ado 结合 sql技术开发数据库使得操作和管理非常方
15、便,从而使以往费时费力的开发工作变得轻松自如。2 开发工具的介绍2.1 vb 开发环境的特点visual basic中的“visual ”一词意为“可视化”的意思,它是指一种开发图形用户界面(gui) 的方法。 visual basic 是基于 basic 的可视化的程序设计语言,是一种由微软公司开发的包含协助开发环境的事件驱动编程语言。 从任何标准来说, vb都是丠界上使用人数最多的语言不仅是盠赞vb的开发者还是抱怨vb的开发者的数颃。 vb拥有图形用户界面 (gui) 和快速应用程序开发 (rad)系统,可以轻易的使用dao 、rdo 、ado 连接数据库,或者轻松的创建activex 控
16、件。程序员可以轻松的使用vb提供的组仠快速建立一个应用程序。visual basic之所以受到广大编程爱好者及专业编程人员的青睐,是因为它具有以下一些特点:1、面向对象vb采用了面向对象的程序设计思想。它的基本思路是把复杂的程序设计问题分解为一个个能够完成独立功能的相对简单的对象集合,所谓“对象”就是一个可操作的实体,如窗体、窗体中的命令按钮、标签、文本框等。面向对象的编程就好像搭积木一样,程序员可根据程序和界面设计要求,直接在屏幕上“画”出窗口、菜单、按钮等不同类型的对象,并为每个对象设置属性。第 4 页 共 36 页2、事件驱动在 windows环境下,程序是以事件驱动方式运行的,每个对象
17、都能响应多个不同的事件,每个事件都能驱动一段的代码事件过程,该代码决定了对象的功能。通常称这种机制为事件驱动。事件可由用户的操作触发,也可以由系统或应用程序触发。例如,单击一个命令按钮, 就触发了按钮的 click( 单击) 事件,该事件中的代码就会被执行。若用户未进行任何操作 ( 未触发事件 ) ,则程序就处于等待状态。整个应用程序就是由彼此独立的事件过程构成。3、软件的集成式开发vb为编程提供了一个集成开发环境。在这个环境中,编程者可设计界面、编写代码、调试程序,直至把应用程序编译成可在windows中运行的可执行文件,并为它生成安装程序。vb的集成开发环境为编程者提供了很大的方便。4、结
18、构化的程序设计语言vb具有丰富的数据类型,是一种符合结构化程序设计思想的语言,而且简单易学。此外作为一种程序设计语言,vb还有许多独到之处。5、强大的数据库访问功能vb利用数据控件可以访问多种数据库,vb6.0 提供的 ado控件,不但可以用最少的代码实现数据库操作和控制,也可以取代data 控件和 rdo 控件。6、支持对象的链接与嵌入技术vb的核心是对对象的链接与嵌入(ole)技术的支持, 它是访问所有对象的一种方法。利用 ole技术,能够开发集声音、图像、动画、字处理、web等于一体的对象的程序。7、网络功能vb6.0提供了 dlttml 设计工具。利用这种技术可以动态创建和编辑web
19、页面,使用户在 vb中开发多功能的网络应用软件。8、多个应用程序向导vb提供了多种向导,如应用程序向导、安装向导、数据对象向导和数据窗体向导,通过它们可以快速地创建不同类型、不同功能的应用程序。9、支持动态交换、动态链接技术通过动态数据交换 (dde)的编程技术,vb开发的应用程序能与其他windows应用程序之间建立数据通信。通过动态链接库技术,在vb程序中可方便地调用c语言或汇编语言编写的函数,也可调用windows的应用程序接口 (.api) 函数。10、联机帮助功能在 vb中,利用帮助菜单和f1 功能键,用户可随时方便地得到所需要的帮助信息。vb帮助窗口中显示了有关的示例代码,通过复制
20、、粘贴操作可获取大量的示例代码,为用户的学习和使用提供方便。第 5 页 共 36 页本论文主要以 visual basic 6.0企业版 (visual basic 6.0有学习版、专业版和企业版三个不同版本 ) 为背景进行程序设计。2.2 数据库基本概念与microsoft access 2.2.1 数据管理技术发展过程数据管理技术的发展,与计算机硬件( 主要是外部存储器 ) 、系统软件及计算机应用的范围有着密切的联系。数据管理技术的发展经历了以下几个阶段:人工管理阶段、文件系统阶段、数据库系统阶段和高级数据库系统阶段。人工管理阶段这一时期的数据管理技术具有如下特点( 见图 2.1) :(1
21、) 数据管理由应用程序完成。(2) 数据不能共享。(3) 数据缺乏独立性。(4) 数据不能保存。应 用 程 序 1 数 据 集 1 应 用 程 序 2 数 据 集 2 应 用 程 序 n数 据 集 n图 2.1 2、文件系统阶段这一时期的数据管理技术具有如下特点( 见图 2.2) :(1) 数据管理由文件管理系统完成。(2) 数据共享性差、冗余度大。(3) 数据独立性差。(4) 数据可长期保存。文 件系 统应 用 程 序 1 应 用 程 序 2 应 用 程 序 n数 据 文 件 1 数 据 文 件 2 数 据 文 件 n图 2.2 3、数据库系统阶段这一时期的数据管理技术具有如下特点( 见图
22、2.3) :(1) 数据结构化。第 6 页 共 36 页(2) 数据共享程度高。(3) 数据独立性强。(4) 数据冗余度小。(5) 加强对数据的保护。应 用 程 序 1 应 用 程 序 2 应 用 程 序 n数 据 库管 理 系统数据库图 2.3 高级数据库系统阶段这一时期的数据库技术又有了很大的发展,表现如下:(1) 数据库方法。(2) 商用数据库系统的运行。(3) 关系方法的理论研究。2.2.2 数据库系统简介数据库系统 (database system ,dbs) 是指拥有数据库技术支持的计算机系统。它可以实现有组织地、动态地存储大量相关数据,提供数据处理和信息资源共享服务。数据库系统由
23、计算机系统 ( 硬件和基本软件 ) 、数据库、数据库管理系统、数据库应用系统和有关人员(数据库管理员、应用设计人员、最终用户)组成。1、数据描述事物的物理符号序列称为数据(data) 。描述事物的物理符号可以是用来表示长度、体积、重量之类的数字数值,也可以是人名或地名、图形、图像、动画、影像、声音等非数值数据。2、数据库数据库 (database ,db),顾名思义,是存放数据的仓库。是长期存放在计算机内,有组织的、大量的、可共享的数据集合。数据库中的数据按一定的数据模型组织、描述和存储,具有较小的冗余度、较高的数据独立性和易扩展性,并可为多个用户、多个应用程序共享。数据库具有以下特点:(1)
24、 数据的共享性:数据库中的数据能为多个应用服务。(2) 数据的独立性:用户的应用程序与数据的逻辑组织和物理存储方式无关。(3) 数据的完整性:数据库中的数据在维护活动中始终保持正确性。(4) 数据库冗余数据较少。第 7 页 共 36 页3、数据库管理系统数据库管理系统 (database management system ,dbms) 是位于用户与操作系统(os)之间的数据管理软件。其主要功能包括以下几个方面:(1) 数据库定义功能;(2) 数据存取功能;(3) 数据库运行管理功能;(4) 数据库的建立及日常维护功能;(5) 数据库通信功能。4、数据库应用系统数据库应用系统是为特定应用开发的
25、数据库应用软件。数据库管理系统为数据的定义、存储、查询和修改提供支持,而数据库应用系统是对数据库中的数据进行处理和加工的软件,它面向特定应用。一般在不引起混淆的情况下常常把数据库系统简称为数据库5、关系型数据库(1) 现行的大部分数据库都采用关系模型,把每一个数据集合或数据间的联系看成是一张二维表,即关系表。(2) 数据库 (database) :所有相关数据和规则的集合(3) 数据表 (table) :数据表简称表,由一组数据记录组成。(4) 记录(record) :表中的每一行为一个记录,由若干字段组成。(5) 字段(field):也称域。表中的每一列称为一个字段。(6) 主键(prima
26、ry key):某个字段或某些字段的组合可以定义为主键。保证可以通过主键唯一标识一条记录。(7) 查询(query) :查询用来从一个或多个表中获取一组指定的记录,一般用sql语句来表达。6、目前流行的数据库管理系统(1) 大中型数据库管理系统。(2)oracle ,sybase,infomix ,ms sql server 等。(3) 小型桌面数据库管理系统。(4)visual foxpro 6.0, microsoft access 2000。(5) 本论文以 microsoft access为主进行设计。2.3 数据库设计基础2.3.1 数据库设计的规范化1、第一范式 (1nf) 第 8
27、 页 共 36 页设 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 。2.
28、3.2 数据库设计的步骤包括:1、系统需求分析阶段2、概念结构设计阶段3、逻辑结构设计阶段4、物理设计阶段5、数据库实施阶段6、数据库运行与维护阶段2.4 数据管理系统 access 概述microsoft access 2000是一种桌面数据库管理系统,而access 是 visual basic的内部数据库,即默认的数据库类型。access 数据库的所有表和索引都存储在一个mdb文件中。2.4.1 access的基本特点1、存储文件单一2、支持长文件名及名称自动更正3、兼容多种数据库格式4、具有 web网页发布功能5、可应用于客户机 / 服务器方式6、操作使用方便2.4.2 access的
29、基本对象1、表表是与特定主题 ( 如产品或供应商 ) 有关的数据的集合。对每个主题使用一个单独的表意味着用户只需存储该数据一次,这可以提高数据库的效率,并减少数据输入错误。2、查询第 9 页 共 36 页查询是通过设置某些条件, 从表中获取所需要的数据。 按照指定规则, 查询可以从一个表、一组相关表和其他查询中抽取全部或部分数据,并将其集中起来,形成一个集合供用户查看。将查询保存为一个数据库对象后,可以在任何时候查询数据库的内容。3、窗体窗体是 access 数据库对象中最具灵活性的一个对象,是数据库和用户的一个联系界面,用于显示包含在表或查询中的数据和操作数据库中的数据。在窗体上摆放各种控件
30、,如文本框、列表框、复选框、按钮等,分别用于显示和编辑某个字段的内容,也可以通过单击、双击等操作,调用与之联系的宏或模块(vba程序) ,完成较为复杂的操作。4、报表报表可以按照指定的样式将多个表或查询中的数据显示(打印) 出来。 报表中包含了指定数据的详细列表。报表也可以进行统计计算,如求和、求最大值、求平均值等。报表与窗体类似,也是通过各种控件来显示数据的,报表的设计方法也与窗体大致相同。5、页页(或称为数据访问页 )可以实现数据库与internet(或 intranet)的相互访问。数据访问页就是 internet网页,将数据库中的数据编辑成网页形式,可以发布到internet上,提供给
31、 internet上的用户共享。也就是说,网上用户可以通过浏览器来查询和编辑数据库的内容。6、宏宏是若干个操作的组合, 用来简化一些经常性的操作。 用户可以设计一个宏来控制系统的操作,当执行这个宏时,就会按这个宏的定义依次执行相应的操作。宏可以打开并执行查询、打开表、打开窗体、打印、显示报表、修改数据及统计信息、修改记录、修改表中的数据、插入记录、删除记录、关闭表等操作。7、模块模块是用 vba语言编写的程序段,它以visual basic为内置的数据库程序语言。对于数据库的一些较为复杂或高级的应用功能,需要使用vba代码编程实现。通过在数据库中添加 vba代码,可以创建出自定义菜单、工具栏和
32、具有其他功能的数据库应用系统。2.5 使用 vb数据库开发技术2.5.1 ado 对象模型ado 是 microsoft处理数据库信息的最新技术, 它是一种 activex 对象,采用了被称为ole db的数据访问模式。 它是数据访问对象dao 、 远程数据对象 rdo 和开放数据库互连odbc三种方式的扩展。 ado 对象模型更为简化, 不论是存取本地的还是远程的数据,都提供了统一的接口。2.5.2 使用 ado 数据控件在使用 ado 数据控件前,必须先通过“工程 / 部件”菜单命令选择“ microsoft ado data 第 10 页 共 36 页control 6.0(ole db
33、)”选项,将 ado 数据控件添加到工具箱。 ado 数据控件与 visual basic的内部数据控件很相似, 它允许使用 ado 数据控件的基本属性快速地创建与数据库的连接。2.5.3 使用 ado 访问数据库在 visual basic中,可用的数据访问接口有三种: activex数据对象 (ado ,activex data objects)、远程数据对象 (rdo ,remote data objects)和数据访问对象 (dao ,data access objects) 。数据访问技术总是在不断进步,而这三种接口的每一种都分别代表了该技术的不同发展阶段。 最新的是 ado ,它是
34、比 rdo 和 dao 更加简单, 然而却更加灵活的对象模型。对于新工程,应该使用ado 作为数据访问接口。 ado特点:ado 最主要的优点是易于使用,速度快,内存支出少。ado支持建立客户端 / 服务器和基于web的应用程序的关键功能。ado 是实现 internet数据库访问的基础。利用ado 不仅可以通过一个web 网页实现对数据库的访问。初步使用 ado 要学习两个基本控件和一个对象。1、adodc 控件即 ado数据控件,用于连接数据源,生成recordset。adodc 控件常用属性和方法:connectionstring属性, recordsource 属性, recordse
35、t 对象, refresh 方法。(1)connectionstring属性connectionstring属性包含了用于与数据源建立连接的相关信息。创建连接时,可以采用下列源之一:一个连接字符串,一个文件(mdl),一个 odbc 数据源名称 (dsn)。(2)recordsource 属性recordsource 确定具体可访问的数据,这些数据构成记录集对象recordset 。该属性值可以是数据库中的单个表名,也可以是使用sql语言的一个查询字符串。(3) 记录集对象 (recordset) recordset 对象的常用属性与方法:.open, close .addnew .delet
36、e .update .move xxxx .bof, eof .recordcount 其中 move方法: . 使用 move方法可以遍历记录集中的记录。.movefirst ,movelast:移至第一个或最后一个记录。.movenext,moveprevious:移至下一个或上一个记录。第 11 页 共 36 页.move n :向前或向后移n 个记录。.addnew方法:向数据表中添加新记录。.update 方法:数据更新.delete方法:删除数据表中当前记录。. 首先,将要删除的记录定位为当前记录;. 然后,调用 delete 方法;. 最后,移动记录指针,确定所做删除操作。(4)
37、refresh方法如果在设计状态没有为打开数据库控件的有关属性全部赋值,或当 recordsource 在运行时被改变后,必须使用激活数据控件的refresh 方法激活这些变化。2、datagrid 控件数据表格控件,用于显示recordset 中的数据记录。 datagrid 控件常用属性:(1)datasource :设置数据来源(2)allowaddnew:是否允许加新纪录(3)allowdelete:是否允许删除纪录(4)allowupdate :是否允许更新 ( 修改) 纪录使用 datagrid控件几乎不用编写代码就可直接将数据库的记录显示在网格内。当把datagrid 控件的 d
38、atasource 属性设置为一个adodc控件时, datagrid 控件会被自动地填充浏览数据表的查询结果。3、recordset 对象记录集对象,用于对数据记录进行操作。4、如何添加 adodc 和 datagrid 控件ado 数据控件的用途及外形和data 控件相似,但是通过microsoft activex数据对象(ado)来建 立对数 据源 的连接 。ado数据控 件通 过属性 实现了 对数 据源的 连接 。添加adodc(ado数据控件 )控件: “工程”菜单( 或鼠标右击控件箱 )-“部件”- “microsoft ado data control 6.0 ” 。 添加 da
39、tagrid 控件: “工程”菜单( 或鼠标右击控件箱 )-“部件”-“microsoft datagrid control 6.0” 。见图 2.4 、图 2.5 、图 2.6 。第 12 页 共 36 页图 2.4 图 2.5 图 2.6 5、ado 访问数据库步骤总结(1) 放置相应的 adodc 和 datagrid 控件(2) 设置 adodc 控件(3)connectionstring属性连接到数据源(4)recordsource 属性连接到数据表或sql查询语句(5) 将 datagrid 控件的 datasource 属性设置为 adodc 控件名。adodc datagrid
40、datagridadodc 第 13 页 共 36 页(6) 在相应位置编写对recordset 对象的数据记录操作。(7) 运行程序2.5.4 sql 语言通用的 sql语言,最早于 1974 年提出,当时称为sequel 语言,后来被国际标准化组织 iso采纳为国际标准,现在大多数数据库管理系统都支持sql语言。sql是一种处理数据的高级语言, 是非过程化语言, 在查询数据时,只需指出“要什么”,而不需指出如何实现的过程。sql语言包括数据定义、查询、操纵和控制功能。sql语言的语法格式简单,使用方便灵活。1、表定义语句广义上讲,表定义语句包括数据表的创建语句(create语句)、数据表修
41、改语句 (alter语句)和数据表删除语句 (drop 语句) 。2、视图定义语句视图是对数据表中数据的一种显示方式,用一个数据表可以有多个视图,以根据用户的不同需求,将数据表中用户所关心的数据提取出来,显示给用户,忽略数据表中其他数据。视图也可以理解为一种预先定义好的查询。实际上,查询的优点在于可在多个数据表之间按指定的条件对数据进行筛选显示。3、索引定义语句索引是加速数据查询的重要手段,索引一旦被建立起来,就成为了数据库的一部份,并占用数据库的存储空间。使用索引的突出优点就是加快数据的查询速度,但是,对于数据的插入、删除和修改操作来说,索引却降低了执行效率。4、数据操纵语句数据操纵包括数据
42、的插入、更新和删除等操作,数据操纵语句是应用程序编制过程中使用较多的语句之一。5、insert语句insert 语句所实现的功能是向数据库中插入新的数据,该语句的一般语法如下:insert into tablename (fieldlist) values(valuelist) 6、update 语句update 语句用于更新数据表中的数据。所谓的更新是指数据已经存在于数据表,但需要对其中的数据进行修改,此时可以使用update 语句实现。7、delete 语句如果某些数据需要从数据表中删除,则可以使用delete 语句进行,该语句的基本语法如下:第 14 页 共 36 页delete fro
43、m tablename where select_conditon 8、查询语句查询语句是sql语言中使用最为频繁的语句,查询可以根据需要在数据表内或者多个数据表之间进行数据筛选。熟练掌握数据查询语句,才能编写出高质量的数据库管理软件。查询是 sql语言最重要最核心的功能之一。在 sql语言中查询是通过select 语句实现的,最简单的 sql语句结构如下:select 字段列表 from 表名9、条件查询select语句除了可以对字段进行筛选以外,还可以对记录进行筛选和操作,此时,要用到 where字句。 where子句在 select 语句中用于指定查询条件,其结构一般如下:select
44、字段列表 from 表名 where 条件表达式10、查询排序sql语句还可以对查询的结果进行排序,此时,要用到order by 子句。另外,还要用到两个负责排序方式的关键词asc 和 desc ,asc指明按升序排列查询结果;desc 则指明按降序进行排列。排序查询的结构一般如下:select fieldlist from tablename where select_conditon order by field1 asc|desc,field2 asc|desc 11、统计查询sql语言对数值型的字段具有统计的功能,该功能涉及到5 个统计函数,介绍如下:count(*) :统计符合查询条
45、件的记录的个数。avg(field) :计算某个数值型字段的平均值。max(field):返回某个数值型字段的最大值。min(field):返回某个数值型字段的最小值。sum(field):计算某个数值型字段所有记录的和。12、group by 子句group by 子句的作用是将查询结果中的数据按指定字段分组,group by 子句常与统计函数一起使用,以对查询数据实现分组统计。group by 子句的一般语法如下:group by 字段 1, 字段 2 13、distinct关键词在数据表的某个字段中可能会出现多个重复的值,使用 distinct关键字可以避免查询结果中出现重复的记录。含d
46、istinct关键词的 sql语句结构一般如下:select distinct 字段名列表 from 表名 where 条件表达式14、top 关键词top关键词的作用是限制查询结果的返回数目。该关键词常被用来限制显示查询结果中前多少个或者前百分之多少的记录。因此,top关键词经常和 order by 子句一起出现。 top第 15 页 共 36 页关键词的基本语法:top n top n percent 15、多表查询sql语言还可以实现在同一个数据库中的不同数据表之间进行查询。16、多重查询sql语句允许嵌套使用, 这种查询一般是把其中一个查询的结果作为另一个查询语句的查询条件。多重查询中
47、一般会出现in 、not in 、all 、some 或者 any等关键词。 in 和 not in 用来指定某值在和不在某区间或者集合;all 表示集合中的全部,而some 和 any则表示集合中的一部分。17、exists关键词exists(not exists) 关键词是复合查询语句中的常用关键词,其作用是判断复合查询语句的内层查询是否存在查询结果。使用 exists关键词时内层查询只是起到一个判断是否存在查询结果的作用,其筛选出的数据对整个查询没有任何作用。3 需求分析与数据库设计3.1 需求分析3.1.1 需求分析的原则需求分析是软件定义阶段的一个重要阶段,需求分析包括用户需求分析和
48、系统性能需求分析。需求分析是指开发人员要准确理解用户的要求,进行细致的调查分析,将用户非形式的需求陈述转化为完成的需求定义,再由需求定义转换到相应的形式功能规约( 需求规格说明 ) 的过程。1、需求分析的原则(1) 必须能够表达和理解问题的数据域和功能域。(2) 可以把一个复杂的问题按功能进行分解并可逐层细化。(3) 建模。模型可以帮助分析人员更好的理解软件系统的信息、功能、和行为,这些模型也是软件设计的基础。2、需求分析的方法(1) 功能分解方法功能分解方法是将一个系统看成是由若干功能构成的一个集合,每个功能可划分成若干个加工,一个加工又进一步分解成若干加工步骤。(2) 结构化分析方法结构化
49、分析方法是一种从问题空间到某种表示的映射方法,由数据流图表示软件的功能,是结构化方法中重要的,被普遍接受的表示系统。(3) 信息建模方法第 16 页 共 36 页信息建模方法是从数据的角度来对现实世界建立模型的,它对问题空间的认识是很有帮助的。3.1.2 用户需求分析及系统性能需求分析学校管理工作是一个十分繁重的工作,学校学生的管理同样十分繁重。在学生日常管理工作中,必须处理大量的信息。而人工进行信息地收集、处理、汇总、统计、报表、存档工作又相当繁琐和复杂。本系统 (学生信息与成绩综合管理系统) 就是为了解决上述问题而开发的。通过对学校学生日常业务工作内容和信息的分析,确定学生信息与成绩综合管
50、理系统的主要功能如下 : (1) 实现基本的数据库操作(包括增加、修改、删除和查询)。(2) 查询功能要实现精确查询和模糊查询。(3) 合理管理学生信息与成绩信息及其之间的相互联系。(4) 实现成绩以多种方式排序的功能。(5) 实现成绩以多种方式显示,如以数据表方式显示等。(6) 实现报表并可打印。(7) 实现文件打开和文件保存功能,保存时也可以以多种格式保存。(8) 有系统安全功能。(9) 界面显示,美观大方,操作简便。系统性能需求分析:(1) 准确可靠。(2) 功能齐全。(3) 有较快的响应速度。(4) 便于扩充及维护。(5) 操作直观、方便、用户接口友好。3.2 系统总体设计框架图下面简
51、要的介绍一下系统各模块的功能:(1) 学生管理模块:该模块的主要任务是对学生信息进行查询和管理,包括学生学籍信息的查询、更新功能。其中查询功能可分为按学号和按姓名查询,查询的具体信息包括学生的学号、姓名、性别、电话、寝室号、住址、及备注信息;更新功能包括对新入学学生信息的添加以及对现有学生信息的修改、删除。(2) 课程管理模块: 该模块的主要任务是对学生所学课程相关信息的查询和课程信息的添加与修改。在进入该模块时,同样查询条件也分为按姓名查询与按学号查询;按照权限的不同可以分别实现教师选课和学生选课;课程更新的功能只有管理员有相应的权限,包括增添、删除课程,以及对已有课程信息的修改和删除。第
52、17 页 共 36 页(3) 教师管理模块:该模块的功能由管理员来实现,主要是添加新的教师信息,查询、修改或删除已有的教师信息。(4) 成绩管理模块:对于学生身份来说该模块主要完成的任务是通过对学生的姓名、学号的选择进行成绩的查询。另外还有成绩高级查询的功能,可以对学生的成绩按课程名称、学生学号、分数段进行复合查询;成绩更新子模块是针对教师与管理员设计的,该模块中实现的是对学生成绩的添加、修改与删除功能。(5) 奖学金管理模块:该模块主要完成用户对学生所获得的奖学金情况的登记记录,查询和修改功能。第 18 页 共 36 页图 3.1学生管理系统学生管理员教师学生管理选课管理成绩管理奖学金管理信
53、息查询已选课程学生选课课程查询成绩查询奖学金查询学生管理选课管理成绩管理奖学金管理信息查询信息更新教师信息查询教师信息更新教师管理学生已选课程添加信息修改信息添加教师信息修改教师 信息课程查询课程更新添加课程修改课程综合成绩查询成绩更新添加成绩修改成绩奖学金查询奖学金添加奖学金修改学生管理选课管理成绩管理奖学金管理信息查询已选课程教师选课课程查询奖学金查询成绩更新综合成绩查询添加成绩修改成绩第 19 页 共 36 页3.3 数据库的设计3.3.1 系统数据流分析图 3.2管理员学生教师信息p1教师档案管理p2学生档案管理p3课程管理p4奖学金管理p5成绩管理教师档案表d2 学生档案表d3 课程
54、信息表d6 奖学金表学生信息课程信息奖学金信息成绩信息d4 成绩表教师成绩信息p6 查询查询条件查询结果p7 查询查询条件查询结果p8 选课d5 选课表选课信息p9 教师选课d7 教师选课表选课信息d1 第 20 页 共 36 页3.3.2 实体 e-r图分析实体的 e-r图:实体有:学生实体、课程实体、奖学金实体、成绩实体、教师实体。图 3.3 学生实体图图 3.4 课程实体图图 3.5 奖学金实体图学生学号 *姓名性别电话地址寝室号备注课程课程名任课教师学 分课程号 * 上课地点奖学金出生日期政治面貌等级学 号* 第 21 页 共 36 页图 3.6 成绩实体图图 3.7 教师实体图图 3
55、.8 实体间的关系e-r 图成绩教师学生成绩课程取得教授奖学金获得管理1 m n m n 1 1 1 1 管理1 m 管理1 教师m 管理1 m 获得管理1 m 添加选课1 1 n n 1 1 管理员课程号 * 学 号分数教师号 * 教师姓名性别专 业学 历政治面貌备 注第 22 页 共 36 页说明:其中管理员实体与其他几个实体之间的联系都是管理,并且都是一对多的关系,表示了一个管理员可以管理多门课程,管理多个学生,管理多个教师信息,并且每门课程、每个学生、每个教师都由一个管理员来进行管理;学生实体与成绩实体之间的联系是取得,表示一个学生可以获得多门成绩,一门成绩可以被多个学生获得,因此他们
56、之间具有多对多的联系;课程实体与成绩实体之间的联系是获得,每一门课程只可以有一个成绩,每一个成绩只能被登记在一门课程中,一次他们之间具有一对一的联系。3.3.2 数据库逻辑设计表 3.1 学生信息表stu_course( 学生课程表 ) 字段名称类型长度备注cno(课程号 ) text 2 主键cname( 课程名称 ) text 20 tno(教师号 ) text 10 credit (学分)text 2 0 至 4 分caddr( 上课地点 ) text 20 表 3.2 学生成绩表stu score(成绩表 ) 字段名称类型长度备注cno(课程号 ) text 2 主键,输入两位sno(
57、学号 ) text 3 主键,输入三位score( 分数 ) single 50 stu_info(学生信息表 ) 字段名称类型长度备注sno(学号 ) text 3 主键,输入三位sname(学生姓名 ) text 10 sex(姓别 ) text 2 teleno( 电话号码 ) text 13 dorno( 寝室号 ) text 3 addr( 住址 ) text 50 comment( 备注 ) text 50 data(出生日期)dtm 8 postatus( 政 治 面貌)text 10 第 23 页 共 36 页表 3.3 奖学金表scholarship_table(奖学金表 )
58、 字段名称类型长度备注sno(学号)text 3 主键rank(等级 ) text 15 一等至四等表 3.4 教师信息表tea_info( 教师信息表 ) 字段名称类型长度备注tno(教师号)text 10 主键tname (教师姓名)text 10 sex(性别)text 4 tzy(专业)text 20 txl (学历)text10 postatus (政治面貌)text50 tbz(备注)text50 表 3.5 教师课程表tea_kc ( 教师课程表 ) 字段名称类型长度备注cno(课程号)text 10 主键tno(教师号)text 10 3.3.4 数据表间关系表间关系的说明:学
59、生信息表(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)作为密码。数据表之间的关系如下
60、图所示:第 24 页 共 36 页图 3.9 表间关系4 学生管理系统的实现4.1 主窗体的创建主窗体菜单的创建:添加一个mdi单击右键在菜单编辑器里设置即可。图 4.1 学生管理系统主窗体scholarship_table sno rank pass_table sno password stu_info sno sname sex teleno dorno addr comment data postatus teacher tno teacher_id stu_score cno sno score score_avg score_sum tea_info tno tname sex t
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年中国防护眼镜行业市场集中度、市场规模及未来前景分析报告
- 信息技术项目可行性研究报告
- 二零二五年度居民社区搬迁补偿合同范本3篇
- 污水处理厂建设项目可行性研究报告
- 2025年度石材行业绿色建材认证服务合同示范2篇
- 二零二五年度WXLX09009号航空航天材料研发与应用合同2篇
- 二零二五年度古建筑修缮包工包料施工合同模板2篇
- 百年风流人物:曾国藩(四川大学)学习通测试及答案
- 2025年度物联网技术开发与推广合同2篇
- 2025年度汽车制造合资企业协议书3篇
- 2023年湖北省公务员录用考试《行测》答案解析
- M200a电路分析(电源、蓝牙、FM)
- 七年级历史试卷上册可打印
- 2024-2030年全球及中国洞察引擎行业市场现状供需分析及市场深度研究发展前景及规划可行性分析研究报告
- 《东南亚经济与贸易》习题集、案例、答案、参考书目
- 烧烤店装修合同范文模板
- 2024年中国樱桃番茄种市场调查研究报告
- 置业顾问考核方案
- 数据分析基础与应用指南
- 吉林市2024-2025学年度高三第一次模拟测试 (一模)数学试卷(含答案解析)
- 自考《英语二》高等教育自学考试试题与参考答案(2024年)
评论
0/150
提交评论