基于VFP的学生学籍管理系统学生信息浏览与查询

更新时间:2023-09-13 12:43:01 阅读量: 教学研究 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

山东凯文科技职业学院 2011届毕业论文

基于VFP的学生学籍管理系统 ---学生信息浏览与查询

系 部: 信息学院

学生姓名: 邢恩琳

指导教师: 许艳春

专 业: 计算机应用技术

班 级: 08级1班

完成时间: 2011年6月 29日

山东凯文科技职业学院

摘 要

随着这些年来我过高校的进一步扩招和对高校信息管理要求的进一步提高,原先的一些学生学籍管理系统的局限性已经显现出来了,本文通过结合学生学籍管理的和高校的现实状况,分析了现今学生学籍管理系统中所应应用的几个环节,并针对每个环节做出了详细的阐述和探讨,根据具体的实际情况确定了用户管理、学籍管理、成绩管理、信息一览、统计管理等五大模块,介绍了系统开发用到的JSP环境和使用的编辑语言,以及以后数据库SQL2000,并对模块的功能进行了分析和设计最终实现系统的开发。

关键词: 数据库 学生学籍管理系统 记录

ABSTRACT

As these years I had of university students and further to the university information management requirements of the further improved, and some of the old student registration management system limitations appeared, this paper through the combination of college students' status files management and the reality of the situation, analyses the current status as a student in the management system should be some links, and application for each link make detail and discussed, according to the actual situation of specific determine the user management, the students' identity management, performance management, information list, statistical management etc. Five modules, introduces the system development of JSP environment and use the use of language, and editor SQL2000 database, and the future of the module function analysis and design finally realize system development.

Keywords: Database management system status as a student records

山东凯文科技职业学院

目 录

1.前言 ................................................................. 1

1.1 学生学籍管理的概述 .............................................. 1 2.系统平台的选用 ....................................................... 1

2.1 数据库技术的现状与发展 .......................................... 1 2.2 数据库系统的设计原则 ............................................ 1 2.3系统开发工具、环境的选择 ........................................ 2 3. 学生管理系统分析 .................................................... 3

3.1 系统目标 ........................................................ 3 3.2 系统可行性分析研究 .............................................. 3 3.3 需求分析 ........................................................ 4 4.总体设计 ............................................................. 5

4.1 系统功能模块图 .................................................. 5 4.2 系统功能模块的说明 .............................................. 5 5. 详细设计与实现 ...................................................... 6

5.1 数据需求分析 .................................................... 6

5.1.1 概念设计 .................................................. 6 5.2 数据库概念结构设计 .............................................. 6 5.3 学生信息的浏览、查询 ............................................ 8

5.3.1系统维护模块模块的设计与实现 .............................. 13 5.3.2新生信息录入模块的设计与实现 .............................. 19

6.系统的测试与评价 .................................................... 22

6.1系统的特点 .................................................... 22 6.2系统的缺点 ..................................................... 22 6.3将来可能提出的要求 ............................................ 22 7.设计总结 ............................................................ 23 参考文献 .............................................................. 23 致谢 .................................................................. 23

山东凯文科技职业学院

1.前言

1.1 学生学籍管理的概述

学生学籍管理系统是一个教育单位不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要,所以学生学籍管理系统应该能够为用户提供充足的信息和快捷的查询手段。但一直以来人们使用传统人工的方式管理文件学籍,这种管理方式存在着许多缺点,如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。

随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。

作为计算机应用的一部分,使用计算机对学生学籍信息进行管理,具有着手工管理所无法比拟的优点.例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高学生学籍管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。

因此,开发这样一套管理软件成为很有必要的事情,在下面的各章中将以开发一套学生学籍管理系统为例,谈谈其开发过程和所涉及到的问题及解决方法

2.系统平台的选用

2.1 数据库技术的现状与发展

数据库是60年代末出现的一门计算机软件技术,到现在虽然只有三十多年的历史,但在理论和时间上都得到了和很大的发展。现在,数据库是数据处理的主要工具,是管理信息系统(MIS)的核心部分。数据库系统是当今计算机信息系统的核心,是计算机技术和应用发展的关键。传统的数据库系统旨在处理永久、稳定的数据,强调维护数据的完整性、一致性。

数据库理论与技术的发展极其迅速,其应用日益广泛,在当今的信息社会中,它几乎无所不在。以关系型为代表的三大经典(层次、网状、关系)型数据库在传统的(商务和管理的事务型)应用领域获得了极大成功。计算机世界报社与IBM公司联合举办了\世纪数据库技术发展专家研讨会\。IBM DB2的创始人Donald Haderle先生与国内著名数据库专家,就下世纪数据库发展的趋势、数据库领域革命性的突破、IBM DB2的应用、数据仓库的实施、我国数据库技术和应用的现状及趋势、我国数据库用户的需求等问题,进行了广泛而深入的讨论。

2.2 数据库系统的设计原则

(1)数据库系统采用易于集成的,开放的技术。

(2)产品质量优异,可靠性高,适于长期运行,能支持关键应用。 (3)数据安全,保安型高。 (4)能提供分布式数据库功能。

1

山东凯文科技职业学院

(5)支持多种开发环境,软件开发容易。 (6)扩充性和升级能力强。

2.3系统开发工具、环境的选择

现在市场上有很多管理系统的开发工具,如:Visual basic、delphi、ASP

数据库的开发工具。不过Visual foxpro6.0有着以下几项特点:

Visual foxpro是microsoft公司推出的全新的pc平台关系数据库管理系统。它具有强大的性能、无与匹敌的速度、完整而丰富的工具、及其友好的图形用户界面、简单得数据存取方式、良好的兼容性、独一无二的跨平台特性及真正的可编译性,是系统成为目前最快、最完美的数据库系统。不但兼容早期的dbase以及foxbase各种版本,同时还提供了许多基于windows的崭新功能。Visual foxpro作为具有windows95兼容标志的应用软件,具有快速开发应用程序、面向对象和客户机/服务器的强大功能,它是多年来出现在关系数据库方面最重要的产品。 (1) 简单,易学,易用 1. 快速完成应用任务

Visual Foxpro6.0提供了向导,生成器和设计器三种工具,这三种工具都使用图形交互界面方式,使用户能够最简单而又最快速地完成数据操作任务。

如果用户想突破向导和生成器本身的限制,想要自己对应程序进行更复杂或更灵活的控制,可以利用另一种Visual Foxpro6.0提供的方便有效的工具——设计器,设计器也提供了一个友好的图形应用程序开发接口,通过它对用户能建立起自己的应用程序。例如:用户可以用窗体设计器定义和生成一个窗体,用数据表设计器定义和生成一个数据表。

2. 使用方便的工具栏

像许多其他Microsoft产品一样,Visual Foxpro6.0也给用户提供了使用方便的工具栏,工具栏里有许多按钮,他们代表着菜单里的某些选项。一般来说,用户经常执行的操作或使用的对象多对应一个按钮,用户可以通过选择这些按钮方便而迅速地完成操作,而不必通过菜单选项。

3. 不编程而建立应用程序界面

Visual Foxpro6.0提供的窗体设计器是一种功能强大的工具,用户能够不编程或使用很少的代码来实现友好的交互式应用程序界面以及对界面的控制。例如;用户可以用栅格控制很容易地建立一对多的窗体;用户只需把一个数据表拖到一个窗体上就可以了。也可以利用页格式控件来建立有标签的对话框话或用户自己的生成器界面。

Visual Foxpro6.0比以前的数据库管理系统具有更强大的功能。它通过使用快速查询技术和对系统的优化而使用户最大限度地体会到Visual Foxpro6.0快速而又功能强大的优点。

1. 具有面向对象编程的能力

Visual Foxpro6.0在支持标准的Xbase传统编程方式的同时,也提供了完

全的面向对象编程的能力。在Visual Foxpro6.0的对象模式下,用户可以利用所有的面向对象编程特性,这些特性包括继承,封装,多态性以及分类,他们都作为用户所熟悉的Xbase编程语言的扩展集而实现。

2

等等,数据库开

发工具又有很多种,如:Access,SQL Sever,Oracle等等。这些都是很出色的管理信息系统及

山东凯文科技职业学院

2. 更容易处理事件。

Visual Foxpro6.0包含一种事件模式,它能够帮助用户自动地处理事件。在这种事件模式下,用户可以获取并控制所有标准的WINDOWS Visual Foxpro6.0事件,例如鼠标的移动,通过处理这一事件,用户可以拖动和放置一个对象,用户可以用两种方式来控制事件:一种是通过特性窗体来可视地控制;另一种是通过Visual Foxpro6.0的编程语言来控制这两种方法都能使用户很容易的建立起完全的事件驱动应用程序而不用考虑READ层次及浏览窗口限制,也不用编写事件处理程序。

3. 最优化系统

Visual Foxpro6.0能通过优化用户的实际来提高自身的性能。在所有的优化措施中,做有效的方法是尽可能多地增加用户的扩展内存或减少被其他程序所占用的内存。其余的提高Visual Foxpro6.0性能的措施包括加快启动速度和优化设置指令。

4. 使用快速查询技术

快速查询技术是一种专用的数据查询技术,他能够迅速从数据库中选择出一组满足用户要求的记录。使用这种即使能将数据查询所需的时间大大缩短,这样可以极大的提高数据查询效率。 5. 真正的数据库概念

以前的Xbase软件中称.DBF文件为数据库,使人容易产生一个数据库就是一个二维表的错误认识。而visual foxpro 废除了以前Xbase 不合理的数据库概念,采用独特的数据库容器,为用户管理应用系统中的表、查询、表单、报表、程序等数据提供了方便,支持长数据库文件名和字段名设置的显示标题,为字段指定默认值,设置字段级和记录级的有效性规则,设置表的插入、删除和改变记录的触发程序得集合,合理得体现了关系型数据库的思想,与关系数据库理论统一了起来。新的数据库把有关系的表封装在一起,关系清晰、合理且处理方便。

3. 学生管理系统分析

3.1 系统目标

学生信息管理系统属应用系统。系统是一个集成多功能的信息管理系统,有教师资料管理、学生管理、班级管理、专业管理、课程管理、成绩管理和院系管理功能模块。本系统将大大提高学生信息的管理效率,带来数据共享、网络查询和网络管理等便利,实现学生信息管理的数字化和智能化。

3.2 系统可行性分析研究

可行性研究的目的使用最小的代价在尽可能短的时间里确定问题是否能解决,通过复杂

系统的规模与目标,研究与此类似的系统后,我们具体从下面两个方面考虑。

⑴ 技术上的可行性。

由于对学生管理系统这一类的学生信息管理系统进行开发已有一定的时期,有很多成功的实例,技术基础也已经非常雄厚,因而技术上的准备应该不成问题

3

山东凯文科技职业学院

⑵经济上的可行性。

由于学生管理系统是一个比较小型的系统,是由我们合作进行开发的,所以从人力、物力、财力方面来说都是可行的。

3.3 需求分析

对用户需求的分析应该全面、深入、发展,全面是指考查由MIS管理的信息是否有纰

漏,必须保证各静态、动态信息的完全;深入是指对信息的内容、结构、含义、变换、生存周期的分析和认识;发展是指对信息未来发展变化的预测,因为信息在某个系统、机构内的变化往往存在着自身特有的发展规律,需求分析应该预见这种规律,否则就会缩短MIS的使用寿命。为了保证需求分析的完备性,就必须保证需求分析的时间。 1. 模块划分如图

图3-1

2.系统的功能要求

①整体结构合理,风格一致,模块化结构,界面清晰,接口灵活,操作简便。 ②开发方法,文档规范化,便于管理,可扩充。 ③完善的数据输入,维护,输出。 ④自检性能高,用户误输、错输均有提示。

⑤容错性能高,某个用户的操作错误不会引起整个系统的瘫痪,每一功能的操作都有信息提示以免重复操作,错误操作有警告,以便用户及时改正。

4

山东凯文科技职业学院

4.总体设计

本部分主要介绍系统要实现的功能,搭好设计的总体框架,使我们对要开发的系统有一个系统、全面、确切的认识。

4.1 系统功能模块图

本系统在设计时采用结构化程序的设计方法,系统的总体结构采用菜单来调用表单,利

用表单来对信息进行管理、数据加工、信息查询、系统维护等工作,系统的功能模块本结构图如图4-1所示。 学生信息管理系统

图4-1 系统功能模块图

4.2 系统功能模块的说明

登录模块:本模块主要为用户登录,权限验证,管理员添加,实现系统的多用户管理功能,不同权限的用户,可对其进行不同功能的管理。

教师管理模块:本模块主要对教师的资料信息进行查询,删除,修改和添加。

学生管理模块:本模块主要对学生资料信息进行相应的查询,删除,修改和添加。添加了学生所在院系资料与学生所在专业资料,同时可对院系资料与专业资料进行相应的添加,修改,查询。

5

山东凯文科技职业学院

课程管理模块:本模块主要对课程资料进行管理,对其进行查询,添加,修改和删除。又详细划分了课程类别资料,对其进行如上操作。

成绩管理模块:本模块对学生成绩进行查询操作,如发现成绩有输入错误,可对其进行相应的修改,还可对学生的成绩进行录入‘

班级管理模块:本模块班级资料信息进行管理,对其进行相应的查询,修改,删除和添加。 包括教师资料管理和教师资料添加。

5. 详细设计与实现

5.1 数据需求分析

5.1.1 概念设计

概要设计基础是完成需求分析后提供的需求说明书,用概念数据模型表示数据及其相互间的关系,这种数据模型是与DBMS无关的、面向现实世界的、易如理解的数据模型,其独立于计算机的数据模型,独立于计算机的软硬件系统,与用户进行交流十分方便。

概念性数据模型关心的是如何完整、正确地反映客观实际情况,不关心在数据库中如何实现。这种数据模式能真实地反应用户要求的实际情况,是一种容易被人们理解的直观的数据库结构模式。同时也是一种相对稳定统一的数据模式,一般情况下很少变动。概念性数据在用户和设计者之间建立了桥梁。是设计数据库结构的基础。

通过对学生管理内容和过程的分析,本系统应设计的实体和属性如下: 本系统一共用到了个表。如下:

学生信息(姓名、学号、性别、出生年月、所属专业)

成绩信息(学号、专业、课程名、课程类型、开课学期、课时数,学分) 管理员信息表(管理员帐号、管理员姓名、密码)

5.2 数据库概念结构设计

1学生基本信息表 序号 1 2 3 4 5 字段名称 studentno studentname sex birthday special 数据类型 文本 文本 文本 文本 文本 字段大小 255 255 255 255 255 小数位 字段含义 学号 姓名 性别 出身日期 专业 2课程信息表

6

山东凯文科技职业学院

序号 1 2 3 4 5 6 7 字段名称 courseno special coursename coursetype openterm hours credit 数据类型 文本 文本 文本 文本 数字 数字 数字 字段大小 255 255 255 255 整型 整型 单精度 小数位 字段含义 课程号 所属专业 课程名 课程类型 开课学期 课时数 1 学分 3.学生课程成绩表 序号 1 2 3 4 字段名称 studentno course score credit 数据类型 文本 文本 数字 数字 字段大小 255 255 单精度 单精度 1 1 小数位 字段含义 学号 课程号 成绩 学分 4.管理员信息表 序号 1 2 3 字段名称 administrator administername password 数据类型 文本 文本 文本 字段大小 255 255 255 小数位 字段含义 管理员账号 管理员姓名 密码 7

山东凯文科技职业学院

5.3 学生信息的浏览、查询

登录模块的设计与实现 1.用户身份验证IPO图 输入:用户名和密码。 处理:

(1) 用户登录窗体启动。 (2) 输入用户名和密码。

(3) 从用户信息表中检查是否有相应的用户名和密码。 (4) 如果用户名或密码为空或者错误,进行提示。

(5) 如果输入的用户名和密码正确,则允许该用户进入系统。 (6) 进入主控制平台。 输出:主控制平台。

2.用户登录模块的窗体设计,如图5-1

图5-1

用户登录模块的主要代码 using System; using System.Drawing; using System.Collections; using System.ComponentModel; using System.Windows.Forms; using System.Data; using System.Data.SqlClient; namespace StudentManagementsystem {

public class Login : System.Windows.Forms.Form {

8

山东凯文科技职业学院

public static String Username=\保存用户登陆名,以便以后使用。 public static bool loginOrnot;//判断用户登陆成功与否。 private string strconn;//查询更新数据库字符串。 private string connstr=\private SqlDataAdapter sqlda;//查询数据库时使用的适配器。 private SqlConnection myconn;//数据库连接。 private DataTable mytable;//查询返回的数据表。 private DataRow Userrows;//表中的行。

private void login_butt_Click(object sender, System.EventArgs e) { }

private void Logout_butt_Click(object sender, System.EventArgs e) {

loginOrnot=false; this.Close();

9

Security=SSPI;database=StuMagSys\连接数据库字符串。

private DataSet dset =new DataSet();//保存查询结果的数据集。

}

myconn=new SqlConnection(connstr); sqlda=new SqlDataAdapter(strconn,myconn); dset.Clear();

sqlda.Fill(dset,\

mytable=dset.Tables[0];//查询的结果在Tables[0]中。 for(int j=0;j

{ }

MessageBox.Show(\用户名/密码错误!请重试!\确认loginOrnot=false; this.User_name.Text=\this.Passwords.Text=\

\

catch(Exception ex) { }

MessageBox.Show(ex.ToString(),\确认\

return;

山东凯文科技职业学院

}

}

}

主操作页面效果

1.主控制平台的窗体设计,如图

图5-2用户登录模块的窗体效果

2.窗体和控件特殊属性的设置: 控件 MainMenu StatusBar 3.主控制平台的主要代码 using System; using System.Drawing; using System.Collections; using System.ComponentModel; using System.Windows.Forms; namespace StudentManagementsystem {

public class MainFrm : System.Windows.Forms.Form { {

private System.Windows.Forms.MenuItem menuItem1; private System.Windows.Forms.MenuItem menuItem2; private System.Windows.Forms.MenuItem menuItem3; private System.Windows.Forms.PictureBox pictureBox1; private System.Windows.Forms.MenuItem Stu_JC;

控件名称 StuMenu MainstatusBar 10

山东凯文科技职业学院

}

InitializeComponent(); this.MainFrm_Load();

/*此处省略程序自动生成的代码*/ static void Main() { }

//根据登陆的用户名设置窗体状态。 private void MainFrm_Load() { }

//-----------显示学生信息查询窗体--------- private void QueryStu_Click(object sender, System.EventArgs e) { }

//-----------显示更新学生信息窗体--------- private void UpdateStu_Click(object sender, System.EventArgs e) }

//-----------显示学生成绩录入窗体--------- private void InputGrade_Click(object sender, System.EventArgs e) { }

//-----------显示学生成绩查询窗体--------- private void QueryStuGrade_Click(object sender, System.EventArgs e) { }

11

Login log=new Login(); log.ShowDialog();

if(Login.loginOrnot==true) Application.Run(new MainFrm());

this.MainstatusBar.Text=\欢迎使用学生信息管理系统:\

QueryStu QryStu=new QueryStu(); QryStu.Show();

UpdateStu updstu=new UpdateStu();

updstu.Show();

InputGrade inptgrade=new InputGrade(); inptgrade.Show();

QueryStuGrade qrystu=new QueryStuGrade(); qrystu.Show();

山东凯文科技职业学院

//-----------显示权限管理窗体--------- private void UpdateRole_Click(object sender, System.EventArgs e) { }

//-----------显示新生信息录入窗体--------- private void Newstu_Click(object sender, System.EventArgs e) { }

//-----------退出主界面--------- private void ExitSys_Click(object sender, System.EventArgs e) { }

//-----------显示密码修改窗体--------- private void ChgPsw_Click(object sender, System.EventArgs e) { }

//-----------显示班级管理窗体--------- private void AddClass_Click(object sender, System.EventArgs e) { }

//-----------显示课程管理窗体--------- private void Addcour_Click(object sender, System.EventArgs e) { }

//-----------显示帮助窗体---------

12

UpdateRole updrole=new UpdateRole(); updrole.Show();

NewStu nfrm=new NewStu(); nfrm.Show();

if(MessageBox.Show(\您确认要退出本系统?\确认

this.Close();

\

ChgPsw ChangePsw=new ChgPsw(); ChangePsw.Show();

NewClass NewC=new NewClass(); NewC.Show();

AddCourse AdCour=new AddCourse(); AdCour.Show();

山东凯文科技职业学院

}

}

private void SysHlp_Click(object sender, System.EventArgs e) { }

SysHelp hp=new SysHelp(); hp.Show();

5.3.1系统维护模块模块的设计与实现

1.权限管理模块的设计与实现

权限管理模块负责整个系统的安全性,只能增加新的用户而不能修改、删除用户,这样保证了系统的恶意操作、误删除等情况出现。

(1).权限管理模块实现的功能

权限管理模块主要实现增加新的用户和并设定该用户权限和设置初始密码。 (2).权限管理模块实现的效果

权限设置模块的窗体设计效果如图5-3所示。

图5-3权限管理模块的窗体效果

(3)权限管理模块的IPO图

功能:从对话框中取得新的用户名和密码以及相应的职务,写入到数据库内的Syuser表中。 输入:用户名、初始密码和职务 处理: 1) 2)

权限管理窗体启动。

在用户名、密码输入对话框中取得用户名和密码,在数据库StuMagSys内的Syuser表内查找该用户名如果已存在该用户名,则提示错误信息,否则在Syuser表内添加一条新的记录

输出:对用户表Syuser进行记录添加 (4)权限管理模块的主要代码

using System;

13

山东凯文科技职业学院

using System.Drawing;

namespace StudentManagementsystem {

public class UpdateRole : System.Windows.Forms.Form }

密码修改模块负责登陆用户随时修改密码,保证密码的安全性。 (1)密码修改模块实现的功能

密码修改模块主要实现修改登陆用户的密码。 (2)密码修改模块实现的效果

密码修改模块的窗体设计效果如图5-4所示。

{ }

if(MessageBox.Show(\您确认要退出?\确认

this.Close();

\

2.密码修改模块的设计与实现

图5-4 密码修改模块的窗体效果

(3)密码修改模块的IPO图

功能:从登陆窗体中取得登陆成功的用户名,在数据库的Syuser表内查找该用户,并据此把输入:新密码和确认密码 处理:

1)密码修改窗体启动。

2)首先从登陆对话框Login内取得登陆系统的登陆用户的登陆用户名。

2)根据已经取得的登陆用户名在数据库StuMagSys的Syuser表内查找该用户,然后比较用户输入的新密码和确认密码,如果比较结果相同,则把新密码写入到相应记录内,如果两次输入不一致,则提示错误信息。 3)把用户的新密码记录到数据库内。

输出:对用户表进行记录修改

输入的新密码写入到数据库内的Syuser表中。

14

山东凯文科技职业学院

(4).密码修改模块的主要代码

using System; using System.Drawing; using System.Collections; using System.ComponentModel; using System.Windows.Forms; using System.Data.SqlClient; using System.Data;

}

else { }

MessageBox.Show(\密码不一致,请重新输入\确认\NewPsw.Text=\ConfPsw.Text=\

3.班级管理模块的设计与实现

班级管理模块负责登陆用户录入班级信息。 (1)班级管理模块实现的功能 班级管理模块主要实现录入班级信息。 (2)班级管理模块实现的效果

班级管理模块的窗体设计效果如图5-5所示。

图5-5 班级管理模块的窗体效果

(3)班级管理模块的IPO图

功能:用户输入要添加的班级信息,包括班级名称、所在年级和最大人数,录入信息到数据输入:班级名称、所在年级和最大人数 处理:

1)班级管理窗体启动。

2)把用户输入要添加的班级信息,包括班级名称、所在年级和最大人数信息录入到数据库StuMagSys内的class表中,如果成功则在class表内添加一条记录,给出成功信息。否则给

15

库内的class表中。

山东凯文科技职业学院

出失败的提示信息。

输出:对班级表进行记录修改 (4)班级管理模块的主要代码

using System; using System.Drawing; using System.Collections; using System.ComponentModel; using System.Windows.Forms; using System.Data; using System.Data.SqlClient; namespace StudentManagementsystem { }

4.课程管理模块的设计与实现

课程管理模块负责登陆用户随时课程信息,包括录入新开设的课程;修改已有课程的名称、学分;删除不再开设的课程等。

(1)课程管理模块实现的功能

课程管理模块主要实现课程信息的维护。 (2)课程管理模块实现的效果

课程管理模块的窗体设计效果如图5-6所示。

}

private void NewClassCanl_Click(object sender, System.EventArgs e) { }

if(MessageBox.Show(\您确认要退出?\确认

this.Close(); }

catch(Exception Ex) { }

MessageBox.Show(Ex.ToString(),\错误\

NewClassConn=new SqlConnection(NewClassStrConn); NewClassConn.Open();

NewClassComd=new SqlCommand(SqlStr,NewClassConn); int Succnum=NewClassComd.ExecuteNonQuery();

if(Succnum>0) MessageBox.Show(\录入成功\

\

16

山东凯文科技职业学院

图5-6 课程管理模块的窗体效果

(3)课程管理模块的IPO图

1).增加新的课程

功能:在课程信息表中增加新的课程,并把结果写入到数据库StuMagSys内的course表中。 输入:新课程的名称和学分信息 处理:

? 在数据库StuMagSys内的course表内检索课程信息,显示到窗体的DataGrid 控件

AddCourDA中。

? 取得用户输入的新课程的名称和学分信息。

? 在数据库StuMagSys内的course表内检索该课程,如果存在该课程,则提示错误信息。 ? 如果不存在该课程信息,则把用户添加的新课程信息记录到数据库StuMagSys内的

course表中。

输出:对课程表course进行记录修改 2).删除课程

功能:在课程信息表中删除已有课程,并把结果写入到数据库内的course表中。 输入:选中一条课程记录 处理:

? 在数据库StuMagSys内的course表内检索课程信息,显示到窗体的DataGrid 控件

AddCourDA中。

? 在数据库StuMagSys内的course表内检索该课程,如果不存在该课程,则提示错误信息。 ? 如果存在该课程信息,则把该课程信息记录从数据库StuMagSys内的course表中删除。 ? 把数据表的改动记录到数据库内。

输出:对课程表进行记录修改 2).修改课程

功能:在课程信息表中修改课程信息,包括课程名称和学分,并把结果写入到数据库内的course表中。

17

山东凯文科技职业学院

输入:选中一条课程记录,输入修改信息 处理:

? 在数据库StuMagSys内的course表内检索课程信息,显示到窗体的DataGrid 控件

AddCourDA中。

? 在DataGrid 控件AddCourDA中录入修改的课程信息。 ? 把对数据表course的改动记录到数据库内。

输出:对课程表进行记录修改 (4).课程管理模块的主要代码

using System; using System.Drawing; using System.Collections; using System.ComponentModel; using System.Windows.Forms; using System.Data; using System.Data.SqlClient; namespace StudentManagementsystem

private void AddCourse_Load() { }

private void ChgCour_Click(object sender, System.EventArgs e) { }

private void AddCour_Click(object sender, System.EventArgs e) {

int row=this.CourList.VisibleRowCount;

this.CourList.CurrentCell=new DataGridCell(row+1,0);

18

this.AddCourDA.Fill(AddCourseset,\CourList.DataSource=AddCourseset.Tables[0];

try { }

catch(Exception Ee)

int rowNumber=this.CourList.CurrentCell.RowNumber; catch {}

int row=this.CourList.CurrentCell.RowNumber; this.CourList.CurrentCell=new DataGridCell(row+1,0); if(AddCourseset.HasChanges())

山东凯文科技职业学院

}

}

5.3.2新生信息录入模块的设计与实现

新生信息录入模块负责登陆用户录入学生信息,包括必须输入的学生姓名,所在班级,入学日期等信息。

1.新生信息录入模块实现的功能

新生信息录入模块主要实现录入学生信息。 2.新生信息录入模块实现的效果

新生信息录入模块的窗体设计效果如图5-7所示

图5-7新生信息录入模块的窗体效果

3.窗体和控件特殊属性的设置: 控件 ComboBox ComboBox ComboBox 4.新生信息录入模块的IPO图

控件属性 Name Name Name 设置 BirthdateTime ERdateTime Class 功能:用户输入要添加的学生信息,包括必须输入的学生姓名、所在班级、入学日期等信息,输入:学生姓名、性别、年龄、出生日期、民族、籍贯、入学日期、班级、政治面貌、身份处理:

(1)新生信息录入窗体启动。

(2)在数据库StuMagSys的class表检索班级信息,并显示在窗体的Class控件的下拉菜单内。

(3)用户输入新学生信息,检验输入是否完整,并核对是否符合标准,如果不符合则提示用户错误信息。

(4)如果检验通过,在数据库StuMagSys内的class表内根据用户输入的班级信息查找相应

19

录入信息到数据库StuMagSys内的student表中。 证号、职位和所学专业信息

山东凯文科技职业学院

的班级号Class_id。以便于进行student表中的数据插入。

(5)在数据库StuMagSys内的student表中查找输入的学生姓名和班级,如果存在该信息,则表明输入重复,给出提示信息。

(6)否则,把用户输入要添加的学生信息录入到数据库StuMagSys内的student表中,给出成功的提示信息。

输出:对学生表student进行记录修改 5.新生信息录入模块的主要代码

using System; using System.Drawing; using System.Collections; using System.ComponentModel; using System.Windows.Forms; using System.Data; using System.Data.SqlClient;

public class NewStu : System.Windows.Forms.Form {

private System.Windows.Forms.DateTimePicker ERdateTime; private System.Windows.Forms.DateTimePicker BirthdateTime; public NewStu() { }

/*此处省略程序自动生成的代码*/ private void NewStu_Load() { {

Stu_name.Text=\Stu_sex.Text=\Stu_age.Text=\

20

InitializeComponent(); this.NewStu_Load();

DataSet NewStudClassset=new DataSet();

string NewStuStrConnSql=\this.NewStuConn=new SqlConnection(this.NewStuStrConn);

this.NewStusqlda=new SqlDataAdapter(NewStuStrConnSql,this.NewStuConn); NewStudClassset.Clear();

this.NewStusqlda.Fill(NewStudClassset,\for(int i=0;i

private void drawbackbutt_Click(object sender, System.EventArgs e)

山东凯文科技职业学院

}

Stu_home.Text=\Stu_nation.Text=\Stu_specialty.Text=\Stu_position.Text=\Stu_idnum.Text=\Stu_politic.Text=\

private void ExitNStu_Click(object sender, System.EventArgs e) { }

private void InputnewStu_Click(object sender, System.EventArgs e) {

try {

string date=this.ERdateTime.Value.Date.ToString();;

if(date==\保证学生姓名和入学日期必须得到填写 { } else

MessageBox.Show(\学生姓名、入学时间、班级必须填写!\提示\

if(MessageBox.Show(\您确认要退出?\确认

this.Close();

\

this.Stu_politic.Text.ToString().Trim()+\

+\+\

}

else { } }

21

NewStuConn=new SqlConnection(NewStuStrConn); NewStuConn.Open();

NewStuComd=new SqlCommand(NewStuStrComd,NewStuConn); int Succnum=NewStuComd.ExecuteNonQuery(); if(Succnum>0) MessageBox.Show(\录入成功\

MessageBox.Show(\录入信息重复。\确认\

山东凯文科技职业学院

}

catch(Exception Ex) { }

MessageBox.Show(\该生已经录入或类型不匹配。\确认

\

6.系统的测试与评价

系统评价就是客观,公正的从各个方面评价系统的各项功能。本部分将具体从三方面阐述:优点,缺点以及将来可能提出的要求。

6.1系统的特点

1.流程符合学校学籍管理的要求。

2.界面友好,输入信息方便(好多信息,系统自动生成)。

3.查询全面,对任何情况或字段都可以查询,从而对管理进行监督。 4.系统扩充容易。由于资料有限,有很多地方还需要更好的完善。 5.即面向开发人员,又面向用户。

6.2系统的缺点

1.由于时间的原因。输出报表不完善。 2.界面有待进一步改进,使其更加美观。

3.网络功能欠缺。本系统只能在单片机上运行,不能实现网络连接,资源共享。 4.容错性不高。系统的抗错,容错性不高。这方面有待加强。

5.由于资料有限,有很多地方还设计的不够详细,如奖学金,助学金,学分的增减问题,还需要更好的完善。 6.系统的维护功能要更强。

7.没有良好的用户权限和密码限制以防止人为的破坏与盗窃数据资源。

6.3将来可能提出的要求

1. 网络化。

系统能支持网络数据传输,数据共享;数据远程访问能自动采取一定的加锁策略;远程报表处理。 2. 多媒体化。

系统能够支持语音输入。

22

山东凯文科技职业学院

7.设计总结

通过这次毕业设计,使我受到了一次用专业知识、专业技能分析和解决问题的全面系统的锻炼。使我在综合知识的选用方面,在应用软件开发的基本思想、方法方面,以及在常用编程设计思路技巧的掌握方面都能向前迈了一大步。为日后成为合格的应用型人才打下良好的基础。这次在指导老师的帮助下,在同学的帮助下,基本上完成了设计任务,在软件的设计方面也有了一定的提高,熟练掌握了VISUAL FOXPRO命令和编程技巧,为今后走上工作岗位打下了专业基础。 在这次的毕业设计中,让我深深地体现到进行软件开发不是一件简单的事情,它需要设计者具有全面的专业知识、缜密的思维、严谨的工作态度以及较高的分析问题、解决问题的能力,而我在很多方面还有欠缺。

参考文献

1. 王勇 数据库基础与应用 电大教材 2000.6 2.王汝涌 管理信息系统 中国财政经济 2001.7 3.张海藩 软件工程 清华大学出版社 2001.6 4.刘瑞新 VFP程序设计教程 机械工业出版社 2002.3 5.毛一心 VFP6.0应用 人民邮电出版社 2003.3 6、萨师煊、王珊《数据库系统概论(第二版)》高等教育出版社 2001.4

致谢

最后,我要衷心感谢许艳春老师在我的设计过程中给予我的极大帮助利地完成此次的毕业设计。同时,也要感谢我的老师和同学们及实习企业在本系统的设计过程中给予我的支持和帮助。

23

本文来源:https://www.bwwdw.com/article/v4hh.html

Top