学生信息管理系统VB.docx
- 文档编号:9381017
- 上传时间:2023-02-04
- 格式:DOCX
- 页数:29
- 大小:202.38KB
学生信息管理系统VB.docx
《学生信息管理系统VB.docx》由会员分享,可在线阅读,更多相关《学生信息管理系统VB.docx(29页珍藏版)》请在冰豆网上搜索。
学生信息管理系统VB
1引言…………………………………………………………………………………………21.1课题背景……………………………………….………………………….….….2
1.2课程设计目的………………………………………………………………..….3
1.3课程设计任务……………………………….……………………………….……3
2系统结构分析………..……………………………….……………………….…………4
2.1需求分析…………………………………………………………..…………….4
2.2系统模块图……………………………………………………………..…….….5
3数据库设计…………………………………….………………………………..…….…7
3.1概念结构设计………………………………………………………..……….…7
3.2逻辑结构设计…………………………………………………………..…….…8
3.3数据库表的建立…………………………………………………………..……9
4系统实现………………..……..…………………………………….……………………10
4.1数据库的连接……………………………………………………………….…10
4.2建立记录表……………………………………………………………..………12
4.3实现数据库访问………………………………………………….…………13
5功能测试……………..……..………………………….………………..……………14
5.1登陆界面………………………………………………………….……………14
5.2主界面…………………………………………………………..……………14
5.3各功能模块的测试……………………………………………………………15
6系统技术实现……………..……..………………….………………..…………………18
6.1ODBC………………………………………………………..…………………18
6.2Access…………………………………………………………..……………18
6.3VisualC++………………………………………………………..……………19
7结束语……………..……..………………….………………..…………………………20
参考文献…….………..……..…………………………………………….………………21
附录………….………..……..…………………………………………….………………22
1引言
1.1课题背景
学生信息管理系统是一个教育单位不可缺少的部分。
一个功能齐全、简单易用的信息管理系统不但能有效地减轻学校相关工作人员的工作负担,它的内容对于学校的决策者和管理者来说都至关重要。
所以学生信息管理系统应该能够为用户提供充足的信息和快捷的查询手段,但一直以来人们使用传统人工的方式管理文件档案、统计和查询数据,这种管理方式存在着许多缺点,如:
效率低、保密性查、人工的大量浪费;另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少困难。
随着人类社会进入信息时代,计算机越来越多的活跃在社会各个领域:
管理、网络、计算、控制、多媒体等,并且在某些方面成为不可缺少的工具,尤其在管理方面,管理软件的出现使大量繁琐复杂的问题变的简单易行。
当前,许多学校正在逐步完善学生信息管理工作,需要一个能满足内部管理需求、提高管理效率的应用系统进行内部管理,许多学校经过多年的发展,学校规模不断扩大,学生人数成倍增长,积累了大量的学生信息,急需进行统一管理以防止信息的流失,因此,许多学校需要一个功能全面的学生信息管理系统来进行管理,以使管理学生信息的工作在该系统的配合下更加高效和便捷,所以,如何开发一个应用简单,界面友好,容易操作,数据安全性好的管理系统就成为非常重要的技术问题。
1.2课程设计目的
随着学校办学规模的扩大,学生数量急剧增加,有关学生各种信息的数量也在成倍增长。
面对庞大的信息量,利用计算机信息管理系统对学生的学籍、成绩、德育等综合信息进行管理已经成为一种必然趋势。
笔者根据学校特点,通过开发学生信息管理系统,可以做到信息的规范管理、科学统计和快速查询,从而解决学生学籍管理、成绩管理、德育管理、宿舍管理等大量繁琐的工作,实现学生信息管理的办公无纸化和高效化,
通过学生信息系统的设计与实现,熟悉掌握VisualC++、Access2000等工具软件,
系统地掌握需求分析、数据库设计、编码实现、测试等软件开发的流程,提高自身分析问题、解决问题的能力。
1.3课程设计任务
本课程设计任务是通过学生信息管理系统的设计与实现,将所学的数据库系统概论理路结合实际课程任务,进一步学习数据库系统的设计与开发,提高实践动手能力,系统使用VisualC++和Access2000等软件作为开发工具,通过调研目前学生信息管理系统,了解管理的业务流程;通过分析比较,结合用户对系统的改进意见与实现情况,运用面向对象思想方法,设计和实现一个满足功能和性能,并有所创新的学生信息管理系统,以提高管理系统的自动化、友好性等。
2系统结构分析
2.1需求分析
学校工作总体规划由教务人员在学生信息管理系统中完成对运行教务处所需的基本数据的维护,包括这些信息的增加、修改及对各项信息的变动都将进行操作,新的学年,教务人员首先加入年级信息、学生基本信息、学生选修课程信息等,新生入学后由教务人员在学籍系统中完成新学生信息的维护。
每学期期末开始完毕以后,需要由由任课老师对各学生成绩进行录入,学生可对以上录入的信息跟据自己的需要进行适当的查询。
经过以上对信息系统使用流程的分析,系统设计分析其功能主要分:
(1)用户管理功能
检查用户名称,密码的合法性,并依据用户类型分配权限,进入系统。
登陆界面要求设计直观,操作简单,友好而且使用方便,尽量使用用户的数据输入最少,具有人机亲和力,做到画面尽可能接近实际,界面保持一致,让用户始终用同一种方式思考和操作,同时界面应该是用户随时能够掌握任务进展情况,具有较强的容错功能,避免一位误操作等可能导致的数据侮辱。
(2)学生信息管理功能
管理学生的基本信息,并对其进行必要的维护操作,这主要包括了包含学籍所在的年纪和班级等信息在内的学生基本信息以及学生信息输入、修改和学生信息查询。
(3)课程管理功能
实现学校对各专业开设课程和学分管理,并能够按照实际情况不断更新,以符合课程改革和学分管理需要,尤其在课程信息的更改和学分的记录与公布方面能够及时得到相应修改和维护,包含对课程信息输入、修改和查询。
(4)信息查询功能
实现对学生各种信息的查询,为数据更新提供依据,系统主要完成学籍和基本资料的查询,同时所有用户多具有查询的权利,但作为学生只能查看本人信息,以保障信息安全,包含简易检索就是按照学号查询,高级检索综合多种信息一起给出查询结果,以及根据SQL语句进行查询。
(5)信息排序功能
按照用户需要,实现对学生信息按一定规则进行排序,方便系统用户迅速了解信息,包括按学生学号、学生姓名、和学生专业号升序排序。
2.2功能模块图
根据需求和系统分析,可以设计出系统的总体功能模块,如图2.1所示。
图2.1系统功能模块示意图
1.系统用户管理功能模块,各用户拥有特定权限,实现用户管理和修改用户密码功能,用户在在输入用户名和密码后可以进入程序,浏览各种详细信息以及添加和修改用户信息等。
其功能模块如下图2.2所示。
学生信息管理模块
学生基本信息
学生学籍信息
班级信息管理
图2.2系统用户管理功能模块图2.3学生信息管理模块
2.学生信息管理模块,保存和更新学籍数据信息,学生基本信息和班级信息,分别包括学生入学年月、注册时间、注册类型等,学生学号、学生姓名、性别、出生日期、联系电话、家庭住址、备注等数据,学生专业、班级等数据,实现对应模块的添加,浏览,删除和修改。
模块如上图2.3所示。
3.课程信息管理模块:
保存和更新课程数据信息,包括课程号、课程名称、课程
类别、课程描述以及所学课程等数据,实现设置、添加和修改课程信息功能,同时保存学生成绩数据。
模块如图2.4所示。
图2.4课程管理模块图2.5学生信息查询模块
4.学生信息查询模块:
实现简单的按照学生学号查询和根据已知的专业代号、班级、籍贯等进行搜索,功能模块如图2.5所示。
5.信息排序显示模块:
为方便用户快速得到有效信息,实现了按照学号、姓名、专业好排序显示,功能模块如图2.6所示。
图2.6信息排序显示模块
3数据库设计
3.1概念结构设计
通过对用户需求进行综合、归纳和抽象,形成一个独立于具体数据库的概念模型。
根据前面的设计规划处实体有:
用户实体、总体。
构建E-R图用来描述本系统中的概念模型。
(1).用户实体包含的属性:
用户名、密码、用户类型。
用户实体与各属性是对应的关系,各属性之间则是部分存在对应关系,如用户名确定,则可以推断其它两个属性,但是密码确定,却不能推断其它属性,用户实体E-R图如图3.1所示。
图3.1用户实体E-R图
(2)根据分E-R图和需求分析,可得到总E-R图,如图3.2所示。
图3-2总E-R图
3.2逻辑结构设计
根据以上的E-R,结合关系数据库理论原则,可以得到以下的关系模型:
管理员信息表:
(存放管理员用户名和密码)
专业信息表:
(存放专业信息:
包括专业编号、专业名词等)
选修信息表:
(存放学生选课信息,如:
学生学号以及所选修的课程标号等)
学生信息表:
(存放学生的基本信息,如:
班级、姓名、入学年份、联系电话等等)
课程信息表:
(存放课程信息,包括课程编号、课程名称、课程学分、课程课时等等)
我们用数据字典来罗列关系模型的属性及其描述,本学生管理系统的数据字典如图3.3所示。
名字
描述
数据类型
AdminPassword
描述管理员密码的数据
50变长字符串
Admin
描述管理员用户名的数据
20变长字符串
SpecialtyID
描述专业号的数据
整形数据
SpecialtyName
描述专业名称的数据
50变长字符串
GradeID
描述年纪标号的数据
整形数据
ClassID
描述班级编号的数据
整形数据
ClassName
描述班级名名称的数据
50变长字符串
CourseID
描述课程编号的数据
整形数据
CourseName
描述课程名称的数据
50变长字符串
CourseInfo
描述课程信息的数据
100变长字符串
CouserCR
描述课程学分的数据
整形数据
TeacherPassword
描述教师用户密码的数据
50变长字符串
Teacher
描述教师用户名的数据
20变长字符串
Student
描述学生用户名的数据
20变长字符串
StudentPhone
描述学生用户密码的数据
15变长字符串
StduentHomeAddress
描述学生家庭住址的数据
50变长字符串
StduentParentName
描述学生父母亲姓名的数据
50变长字符串
StudentRegisterType
描述学生注册类型的数据
10变长字符串
StudentParentPhone
描述学生父母联系方式的数据
50变长字符串
StudentEmail
描述学生EMAIL的数据
30变长字符串
StudentBirthTime
描述学生出入年月的数据
50变长字符串
StudentNationality
描述学生民族的数据
50变长字符串
StudentIDCard
描述学生身份证号码的数据
50变长字符串
StudentBankCardNum
描述学生银行卡号的数据
50变长字符串
图3.3学生信息管理系统数据字典
3.3数据库表的建立
在设计数据库表结构之前,首先要创建一个数据库,学生信息管理系统选用Access2003创建用户数据库,其建设过程如下图所示。
图3.4创建数据库界面
图3.5学生数据表
图3.6课程数据表
图3.7用户数据表
4系统实现
4.1数据库的连接
学生信息管理系选用了ODBC工具,数据库是应用程序与数据库系统连接的桥梁,它为ODBC应用程序指定运行数据库系统的服务器名称以及用户的缺省连接参数等。
首先我们需要建立名为Student的数据源,从控制面板的管理工具中点击数据源图标,启动ODBC驱动程序,其数据源管理器的界面如图4.1所示。
图4.1数据管理器界面
添加数据库源图如下图4.2所示。
图4.2创建新数据源
完成选择正确驱动程序以后,配置数据源,如图4.3、4.4所示。
图4.3配置数据源
图4.4选择数据库
4.2建立记录集
VisualC++的MFC类库中集成了许多ODBC类,当使用AppWizard创建一个数据库应用程序时,在该程序中应该加入许多不同的ODBC类,针对学生信息管理数据库,
选择CRecordset类,实现过程如下图4.5,4.6,4.7所示。
图4.5建立SetdataClass
图4.6选择数据源
图4.7选择数据库中的表
4.3实现数据库访问
(1)添加信息
IfoSet.AddNew();
IfoSet.SetFieldNull(&(IfoSet.m_stuid),FALSE);
IfoSet.m_stuid=m_pSet->m_stuid;
IfoSet.m_native=dlg.m_native;
……
(2)删除信息
IfoSet.Open();
IfoSet.m_strFilter.Format("stuid='%s'",m_pSet->m_stuid);
IfoSet.Requery();
if(!
IfoSet.IsEOF()){
IfoSet.Delete();
……
(3)修改记录
m_pSet->Edit();
m_pSet->m_stuid=dlg.m_StuID;
……
m_pSet->m_address=dlg.m_address;
m_pSet->Update();m_pSet->Requery();
5功能测试
5.1登陆界面
用户更具自己的用户名字和密码有学生、教师和管理员三类,不同的权限用户名和密码在相同的操作操作界面下进行系统功能使用,学生管理系统登陆界面,如图5.1。
图5.1学生信息管理系统登陆界面
5.2主界面
选择管理员的用户名输入密码,将会进入如下窗口界面,本系统特点:
对于不同权限用户使用的是同样主界面,对于权限较低用户,相应模板不支持其使用。
图5.2:
学生信息管理系统主界面。
图5.2学生信息管理系统主界面
5.3其他界面功能测试
学生基本信息添加模块界面,我们可以录入学生的基本信息,我们在选择输入某一同学姓名和学号之后完善其他基本信息,界面如图5.3所示。
图5.3生信息管理系统基本信息界面
关于学生开设课程模块:
选取本院的计算机科学与技术专业设置专业课开课信息,为了体现功能,如图5.4学生专业课课程安排模块。
图5.4学生专业课课程安排模块
关于学籍管理部分:
用户可以通过选择管理系统主界面学籍管理按钮查询学籍信息,系统将读取数据库信息,判断学生是否注册,对于学生只有浏览自己学籍信息权力,系统管理员可以对学生进行注册,如图5.5学生学籍管理模块。
图5.5学生学籍管理模块
系统提供两种检索学生信息方法:
1.根据输入学生学号搜索,如下图所示。
图5.6学生信息检索学搜索模块
2.根据入学年份、专业代号、班级等的模糊搜索,如下图5.7所示。
图5.7学生信息检索高级搜索模块
显示模块:
学生信息管理系统在主操作界面为用户提供按照学号、姓名、专业代号等排序显示方式方法,如下5.8图为主界面用户选择操作方式模块,图5-9选择学号升序排列显示结果所示。
图5.8学生信息排序显示模块
图5.9按学号排序结果
6系统技术实现
6.1ODBC
ODBC(Open Database Connectivity,开放数据库互连)是微软公司开放服务结构(WOSA,Windows Open Services Architecture)中有关数据库的一个组成部分,它建立了一组规范,并提供了一组对数据库访问的标准API(应用程序编程接口)。
这些API利用SQL来完成其大部分任务。
ODBC本身也提供了对SQL语言的支持,用户可以直接将SQL语句送给ODBC。
ODBC(OpenDatabaseConnectivity,开放数据库互连)提供了一种标准的API(应用程序编程接口)方法来访问DBMS(DatabaseManagementSystem)。
这些API利用SQL来完成其大部分任务。
ODBC本身也提供了对SQL语言的支持,用户可以直接将SQL语句送给ODBC。
ODBC的设计者们努力使它具有最大的独立性和开放性:
与具体的编程语言无关,与具体的数据库系统无关,与具体的操作系统无关。
6.2Access
Access是微软公司推出的基于Windows的桌面关系数据库管理系统(RDBMS),是MicrosoftOffice套装办公系列应用软件之一,具有见面友好、方便快捷、效率高、扩展性强等优点。
Access作为一种关系型数据库管理系统,其主要特点如下:
面向对象:
Access是一个面向对象的开发工具,利用面向对象的方式将数据库系统中的各种功能对象化,将数据库管理的各种功能封装在各类对象中。
通过对象的方法、属性完成数据库的操作和管理,极大地简化了用户的开发工作。
同时,这种基于面向对象的开发方式,使得开发应用程序更为简便。
界面友好、易操作:
Access是一个可视化工具,是风格与Windows完全一样,用户想要生成对象并应用,只要使用鼠标进行拖放即可,非常直观方便。
系统还提供了表生成器、查询生成器、报表设计器以及数据库向导、表向导、查询向导、窗体向导、报表向导等工具,使得操作简便,容易使用和掌握。
Access支持ODBC(开发数据库互连,OpenDataBaseConnectivity),利用Access强大的DDE(动态数据交换)和OLE(对象的联接和嵌入)特性,可以在一个数据表中嵌入位图、声音、Excel表格、Word文档,还可以建立动态的数据库报表和窗体等。
6.3visualC++
VisualC++是可视化编程语言中的佼佼者,VisualC++系列是微软公司在多年不断改进的基础上推出的一组强大的开发工具,VisualC++6.0不仅是一个C++编译器,而且是一个基于Windows操作系统的可视化集成开发环境。
VisualC++6.0由许多组件组成,包括编辑器、调试器以及程序向导AppWizard、类向导ClassWizard等开发工具。
这些组件通过一个名为DeveloperStudio的组件集成为和谐的开发环境。
其最主要的有点是可视化编程环境和支持面向对象的编程技术。
AppWizard:
用来创建一个Windows程序的基本框架结构。
AppWizard向导会一步步向程序员提出问题,询问他所创建的项目的特征,然后AppWizard会根据这些特征自动生成一个可以执行的程序框架,程序员然后可以在这个框架下进一步填充内容。
AppWizard支持三类程序:
基于视图/文档结构的单文档应用、基于视图/文档结构的多文档应用程序和基于对话框的应用程序。
也可以利用AppWizard生成最简单的控制台应用程序(类似于DOS下用字符输入输出的程序)。
库(library)是可以重复使用的源代码和目标代码的集合。
MFC(MicrosoftFundamentalCasses)是VisualC++开发环境所带的类库,在该类库中提供了大量的类,可以帮助开发人员快速建立应用程序。
这些类可以提供程序框架、进行文件和数据库操作、建立网络连接、进行绘图和打印等各种通用的应用程序操作。
使用MFC库开发应用程序可以减少很多工作量。
参考文献
[1]梁建武,陈英.VisualC++程序设计实验指导与实训[M].第一版.北京:
中国水利水电出版社,2007
[2]宋绅,刘锐宁.VisualC++开发技术大全[M].第三版.北京:
人民邮电出版社,2007
[3]华创工作室,李波.Access2003实用教程[M].第二版.陕西:
西安电子科技大学出版社,2005
[4]韩泽坤.Access行业数据库开发范例应用[M].第一版.北京:
中国青年电子出版社,2005
[5]求是科技王正军.VisualC++6.0程序设计从入门到精通[M].第一版.北京:
人民邮电出版社,2006
[6]萨师煊,王珊.数据库系统概论[M].第四版.北京:
高等教育出版社.2009
[7]郑阿奇,丁有和.VisualC++教程[M].第三版.北京:
机械工业出版社,2006
附录部分程序代码
//程序名称:
DATABASEView.cpp
//程序作者:
王斌
//修改日期:
2010-9-10
//DATABASEView.cpp:
implementationoftheCDATABASEViewclass
IMPLEMENT_DYNCREATE(CDATABASEView,CRecordView)
BEGIN_MESSAGE_MAP(CDATABASEView,CRecordView)
//{{AFX_MSG_MAP(CDATABASEView)
ON_BN_CLICKED(IDC_REC_ADD,OnRecAdd)
ON_BN_CLICKED(IDC_REC_DEL,OnRecDel)
ON_BN_CLICKED(IDC_REC_EDIT,OnRecEdit)
ON_BN_CLICKED(IDC_SORT,OnSort)
ON_BN_CLICKED(IDC_XUEJI,OnXueji)
ON_BN_CLICKED(IDC_XUANXIU,OnXuanxiu)
ON_BN_CLICKED(IDC_SCORE,OnScore)
ON_BN_CLICKED(IDC_SAERCH1,OnSaerch1)
ON_BN_CLICKED(IDC_SQL,OnSql)
ON_BN_CLICKED(IDC_SEARCH2,OnSearch2)
ON_BN_CLICKED(IDC_SHOUDONG,OnShoudong)
ON_WM_CTLCOLOR()
ON_BN_CLICKED(IDC_IFO,OnIfo)
//}}AFX_MSG_MAP
//Standardprintingcommands
ON_COMMAND(I
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学生 信息管理 系统 VB
![提示](https://static.bdocx.com/images/bang_tan.gif)