26页VB图书管理系统论文.docx
《26页VB图书管理系统论文.docx》由会员分享,可在线阅读,更多相关《26页VB图书管理系统论文.docx(21页珍藏版)》请在冰豆网上搜索。
26页VB图书管理系统论文
摘要
本系统主要完成学校所有学生相关信息的录入及管理,主要任务首先为登录界面,此界面中包含了用户的注册与登录
用户注册
通过本界面可跳到各种管理方式中,类似于一个中介
学生信息添加
学生信息修改
学生信息删除
学生信息查询
学生信息的图形统计与以文本形式的输出。
本程序采用VB+ACCESS开发,较好的实现了以上功能
关键词:
ACCESS,学生,借阅,查询
Abstract
Thesystemismainlytocompletetheschoollibraryallthebooksrelatedtoinformationinputandmanagement,themaintaskofthefirstfortheloginscreen,thisinterfacecontainstheuser'sregistrationandlogin
Register
Jumpthroughtheinterfaceinavarietyofmanagement,similartoanintermediary
AddBookInformation
BookInformationChange
DeleteBookInformation
BookInformationQuery
Statisticsandgraphicsbookinformationastextoutput.
ThisprogramdevelopedbyVB+ACCESS,betterrealizationoftheabovefunctions
Keywords:
ACCESS,books,lending,query
朗读
显示对应的拉丁字符的拼音
绪论
学生档案管理系统是典型的信息管理系统,其开发主要包括后台数据库的建立和维护以及前端的应用程序的开发两个方面。
对于前者要求建立数据的一致性和完整性,对于后者则要求应用程序功能的完备,易用等的特点。
基于上述考虑本系统主要利用MicrosoftVisualBasic6.0作前端的应用开发工具,利用MicrosoftAccess作为后台的数据库,利用WINDOWS作为系统平台开发的学生档案管理系统。
另外本学生档案系统利用软件工程化思想和方法,总体上是采用结构化生命法进行系统分析和设计的,而系统实现等步骤则采用了原型法和面对对象的方法
第1章管理信息系统背景
1.1学生档案管理系统开发方法
管理信息系统的开发方法有生命周期法、原型法和面向对象的开发方法等:
生命周期法(LifeCycleMethod)是20世纪60年代发展起来的一种应用广泛且比较成熟的管理系统开发方法,它的基本思想是将系统的开发工作从开始到结束划分为若干个阶段,每个阶段都有明确的任务,而系统开发出来后,并不意味着生命周期的结束,而意味着根据组织的需要对系统的修改和重建的开始。
原型法(PrototypingMethod)是20世纪80年代发展起来的,旨在改变生命周期法的缺点的一种系统开发方法,该法的开发思路是首先根据用户的要求,由用户和开发者共同确定系统的基本要求和主要功能,利用系统快速生成工具,建立一个系统模型,再在此基础上与用户交流,将模型不断补充、修改、完善,如此反复,最终直至用户和开发者都比较满意为止,从而形成一个相对稳定、较为理想的管理信息系统。
面向对象(ObjectOriented)的开发方法于20世纪80年代开始兴起的,是一种基于问题对象的自底向上的一种系统开发方法,这种方法的特点是以对象为基础,对象是分析问题和解决问题的核心。
1.2本系统开发过程
一个MIS系统的开发过程一般包括如下几个步骤:
A.需求分析:
需求分析主要是了解用户的需求。
需求了解得越详细,程序的后期开发与维护费用就会越少。
一般的开发团队中,需求分析都是由资历较深的系统分析员或项目经理担当,可见它的重要性。
需求分析制订好后,需要反复修改。
将最后的结果交给用户审定,确认无误后,由系统分析员完成需求分析文档,再开始下一步工作。
B.概要设计:
概要设计紧跟在需求分析之后。
用户需求明确后,将得到的数据分析后,开始构建数据库的逻辑结构。
此时,数据库中的表格还未成形,通过各种分析工具(如PowerDesigner等)画出数据流图,最后就可抽象出数据库的具体表结构。
这时由系统分析人员反复审核。
确认所有的需求都考虑在内,没有遗漏后,就可以开始制订概要设计文档。
概要设计文档形成后,整个程序的逻辑框架也就形成了。
C.详细设计:
概要设计完成后,根据设计中制订的业务模块。
就可以进行详细分析设计了。
详细设计就是将各个业务模块的窗口全部建好,各个窗口控件的处理代码全部用语言表达出。
所以详细设计是整个系统中最繁琐的环节。
详细设计完成后,整个程序就确定了,再由编程人员根据详细设计文档将代码完成。
整个开发工作就宣告结束。
D.程序编码:
程序编码相对于其他环节来说比较简单,程序员只需要根据详细分析文档写程序编码,保证代码没有错误即可。
程序编码需要注意的是整个程序书写中命名的规范化与编程风格的规范化,这需要较长时间的培养来形成。
需要在不断的实践中形成自己独特的风格。
总的来说,不要过分地追求复杂的算法,因为那可能会导致后期维护人员无法读懂你的代码而造成维护的困难。
E.测试:
程序编码完成后,就需要测试。
测试有几种类型,主要是测试代码有无逻辑错误以及在加载数据环境下程序的稳定性问题。
测试工作中发现的错误应及时改正,然后将它记录到测试文档中。
F.打包:
测试完成,确认无误后。
程序就可以打包发行了。
打包一般使用工具如PWISE等。
以上是一个完整的MIS系统开发过程,其实不仅MIS系统,其他类型的程序开发也基本相同。
第2章学生档案管理系统可行性分析
可行性分析(FeasibilityAnalysis)也称为可行性研究,是在系统调查的基础上,针对新系统的开发是否具备必要性和可能性,对新系统的开发从技术、经济、社会的方面进行分析和研究,以避免投资失误,保证新系统的开发成功。
可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。
该系统的可行性分析包括以下几个方面的内容。
2.1学生档案系统设计思路
学生档案管理系统基本设计思路是把整个系统按照实际模块进行分解,利用VB+Access进行编程,
2.2经济可行性分析
主要是对项目的经济效益进行评价,本系统开发经费对于学校在经济上是可以接受的,并且本系统实施后可以显著提高工作效率,有助于学校完全实现信息化管理。
所以本系统在经济上是可行的。
2.3技术上的可行性
技术上的可行性分析主要分析技术条件能否顺利完成开发工作,硬、软件能否满足开发者的需要等。
该系统采用的简单的二层结构,数据库选用MicrosoftAccess,它能处理大量数据,它的灵活性、安全性和易用性为数据库编程提供了良好的条件。
因此,系统的软件开发平台已成熟可行。
硬件方面,科技飞速发展的今天,硬件更新的速度越来越快,容量越来越大,可靠性越来越高,价格越来越低,其硬件平台完全能满足此系统的需要。
2.4时机可行性
目前,学生档案管理系统是学校学生档案管理的需求,校良好的网络设施为信息化、数字化学生档案管理建设奠定了坚实的基础。
2.5管理上的可行性
主要是管理人员是否支持,现有的管理制度和方法是否科学,规章制度是否齐全,原始数据是否正确等。
规章制度和管理方法为系统的建设提供了制度保障。
综上所述,此系统开发目标已明确,在技术和经济等方面都可行,并且投入少、见效快。
因此系统的开发是完全可行的。
第3章需求分析
在可行性分析阶段已经粗略的研究了该项目的需求,并分析了开发平台及软件的可行性,但为了准确的确定目标系统必须做什么,了解用户的明确需求,在公司相关部门进行了详细的调研,进一步明确了作者所实现系统的功能。
3.1任务描述
本系统主要完成学校学生档案相关信息的录入及管理,主要任务首先为登录界面,此界面中包含了用户的注册与登录
用户注册
通过本界面可跳到各种管理方式中,类似于一个中介
学生信息添加
学生信息修改
学生信息删除
学生信息查询
学生信息的图形统计与以文本形式的输出。
3.2VB概述
3.2.1VB语言的特点
1.VisualBasic语言用其设计应用程序时具有两个基本特点:
可视化设计和事件驱动编程。
(1)可视化设计:
表现在VB在设计应用于程序界面时有“所见即所得”的处理功能。
(2)事件驱动编程:
在设计应用程序时,把对象添加到窗体中,在用户与程序进行交互时,用户基本上是通过鼠标、键盘与应用程序进行交互的,那些对象就必须对鼠标和键盘操作所引发的事件做出响应,来执行一段应用程序。
2.VisualBasic系统几个在程序应用中的相关概念
VisualBasic系统除了一般高级语言所具有的一些名词术语外,还有几个系统常用的名词。
其基本含义如下:
(1)视窗(Form)
视窗是进行人机交互的界面或接口,也叫窗体。
VB系统的人机交互界面或接口,无论是在设计时或是在运行时,都是Windows系统的标准视窗。
(2)对象(Object)
对象是VB系统内部提供给设计者可以直接使用的处理输出的控制工具。
本程序所应用到的对象类型有标签框(LabelBox),文本框(TextBox),命令按扭(CommandButton),网格(DataGrid),ADO控件(Adodc1)等。
当把这些工具放置到用户界面对应的窗体上时,被称为对象或控件。
用户可以通过设置对象的“属性”和“方法”,便于对象适应自己所设计应用程序的输入输出内容,对象的生成过程及结构都被封装起来。
正确使用对象可以减少程序和开发时间,提高程序设计者的工作效率。
(3)属性(Properties)
属性是VB系统提供的有关对象的参数或数据接口。
用户通过适当地设置或改变对象的属性来确定对象的外观及性能特征,从而有效地使用系统提供的对象。
比如,对象的名称、在屏幕上显示的位置、大小、颜色、接收或容纳的数据内容及数据的表现格式等。
(4)事件(Events)
事件是指用户或操作者对计算机进行的某一操作(如击键、单击或移动鼠标等)的行为或系统状态发生的变化。
VB系统常用事件来引导计算机执行一段程序。
程序所用的键盘事件有KeyPress(按键)事件,KeyDown事件和KeyUp事件;鼠标事件有Click(单击鼠标)事件,DbDlicd(双击鼠标)。
(5)方法(Method)
方法主要是指对一个对象使用某种作用的过程。
它是在程序执行的过程中要计算机执行的某种操作。
其程序的方法有Show(显示)方法,Hide(隐藏)方法,Refresh(刷新)方法。
(6)过程(Procedure)
过程是指经过定义或说明的,或基于某一对象对应的事件所引发的程序段。
(7)模块(Module)
模块是指一些运算量或过程进行声明或定义的一个集合。
系统程序大体可分成四个模块:
数据输入、根据查询、数据打印和通讯。
3.2.2MicrosoftAccess介绍
ACCESS2000是office自带的数据库,Access数据库由六种对象组成,它们是表、查询、窗体、报表、宏和模块。
表(Table)表是数据库的基本对象,是创建其他5种对象的基础。
表由记录组成,记录由字段组成,表用来存贮数据库的数据,故又称数据表。
查询(Query)查询可以按索引快速查找到需要的记录,按要求筛选记录并能连接若干个表的字段组成新表。
窗体(Form)窗体提供了一种方便的浏览、输入及更改数据的窗口。
还可以创建子窗体显示相关联的表的内容。
窗体也称表单。
报表(Report)报表的功能是将数据库中的数据分类汇总,然后打印出来,以便分析。
宏(Macro)宏相当于DOS中的批处理,用来自动执行一系列操作。
Access列出了一些常用的操作供用户选择,使用起来十分方便。
模块(Module)模块的功能与宏类似,但它定义的操作比宏更精细和复杂,用户可以根据自己的需要编写程序。
模块使
当对表格和报表进行操作时,MicrosoftAccess有一个无正式文本的特性。
这个特性允许你从设计视窗性质sheetwindow中进行过程调用,调用的方法时同时按下shift和F2键。
第4章数据库设计
4.1数据库的引入
数据库(Database),是按照数据结构来组织、存储和管理数据的仓库,是用于查询的大量数据的存储区域。
使用数据库可以带来许多好处:
如减少了数据的冗余度,从而大大地节省了数据的存储空间,实现数据资源的充分共享等等。
此外,数据库技术还为用户提供了非常简便的使用手段,使用户易于编写有关数据库应用程序。
特别是近年来推出的计算机关系数据库管理系统,操作直观,使用灵活,编程方便,功能强大,环境适应广泛,数据处理能力极强。
数据库的设计是指对一个给定的应用环境,构造数据库模式,建立数据库及其应用系统,满足各种用户需求。
作为信息资源开发、管理和服务的一种有效的手段,数据库技术的应用已越来越广泛,从小型的单项事务处理系统到大型的信息系统大都用先进的数据库技术来保持系统数据的安全性、完整性和共享性。
对一个实际的系统来说,数据库表的设计在遵循数据库理论的同时,必须能用开发工具来实现用户在各方面提出的功能要求。
我们现在可以使用的数据库有很多种,如:
Fox数据库(.dbf)、Access数据库(.mdb)、DB2、Informix、Oracle和SQLServer等等,在本次设计中,选择了ACCESS作为后台数据库工具,因为它简单易行,便于管理
4.2数据库的完整性和安全性
4.2.1数据的完整性
数据库的完整性是指数据的正确性和相容性。
数据库管理系统(DBMS)用一定的机制来检查数据库中的数据是否满足规定的条件——完整性约束条件,数据的约束条件是语义的体现,将作为模式的一部分存入数据库中。
在此系统中为确保数据的完整性,在不同的模块中修改数据,将对与其关联的数据进行更新。
4.2.2数据的安全性
数据库的安全性是指保护数据库以防止不合法的使用所造成的数据泄漏、更改或破坏。
在数据库系统中,大量的数据集中存放,而且为许多用户直接共享,是宝贵的信息资源,系统的安全保护措施就显得更为重要,它保护数据库防止恶意的破坏和非法的存取。
由于设计时间的限制,此系统对数据安全的设计还不够完善,将在以后进一步完善。
4.3数据库结构设计
本程序的数据库是使用Microsoftofficeaccess2003创建与设计
该程序中使用到两个表——用户信息与学生信息
用户信息
用户信息中包含了帐号、密码与权限,帐号的数据类型为文本,字段大小调为20,密码数据类型为数字,字段大小为长整型,权限数据类型为数字,权限可设为1,当帐号权限为1时,则该帐号为学生档案管理员,其可进行学生档案的添加,修改与删除,而其他帐号为普通用户,不能进行此操作
图书信息该表中包含了书名、作者、价格、数量、分类、出版时间、出版单位与封面。
书名类型为文本,作者数据类型为文本,字段大小调为20,价格数据类型为数字,字段大小为长整型,数量数据类型为数字,字段大小为长整型,分类数据类型为为本,出版时间数据类型为日期/时间,格式为短日期(例1965-6-5),出版单位为文本,封面数据类型为OLE对象。
图书信息表:
记录所有图书信息,结构如表4-1:
表4-1图书信息表
图书信息
编号
书名
作者
价格
数量
分类号
出版时间
出版单位
封面
2
红楼梦
曹雪芹
65
32
古典名著
1865-12-6
人民出版社
3
三国演义
吴承恩
65
14
军事
1834-4-5
天津出版社
4
傲剑狂刀记
三少
12
23
武侠
1965-4-9
利民出版
5
we
wer
34
34
wer
1922-1-2
sdfds
账号信息表,结构如表4-2
表4-2书信息表
帐号信息
帐号
密码
权限
1
1
0
123456
123
0
2
2
0
a
1
0
admin
123456
1
第5章系统功能模块的设计实现
对本系统的各个子模块进行了系统分析和数据库设计之后,本章将主要讨论该系统所实现的各部分功能。
5.1账号登陆
帐号登录模块中登录与注册两按钮,单击注册会进入注册模块中,单击登录会进入系统进行下一步的操作,帐号文本框与数据库相连接,当在帐号文本框输入帐号后点击登录按钮后,会在数据库中进行查询看数据库中是否会有该帐号,且该帐号的密码是否与密码框中输入的相同,如果相同会进入系统,如果不存在该账号或密码与帐号不相匹配,则会提示“帐号或密码错误”,帐号文本框会得到焦点,让重新输入。
1.窗体截图(如图5.1)
图5-1注册窗体
2.功能实现
5.2账号注册
当单击登录界面中的注册按钮是会进入该模块,该模块能实现用户帐号输入到数据库中,在帐号文本框中输入帐号,当输入帐号再数据库中存在时,则会跳出一个提示框“该帐号已存在,请重新输入”。
输入完毕后点击“确定”,则会将数据写入到数据库中,点击“重置”则两个文本框就会清空,帐号文本框会得到焦点。
1.窗体截图(如图5-2)
图5-2登陆窗体
2.功能实现
5.3中介模块
该模块可进行数据的输入与查询,当然不是谁都能输入的,当登录界面中输入的帐号在数据库帐号信息中的权限为“1”时才可进行输入与修改等功能的使用,否则只能进行查看与统计。
该模块中使用了菜单编辑器,还可使用点击右键跳出菜单。
1.窗体截图(如图5-3)
图5-3基本信息管理窗体
5.4图书信息添加模块
将该模块中的各个文本框与数据库相连接,要注意图片的添加方法,首先要添加一个Image控件,再添加一个CommonDialog控件,图片是以二进制的方式输入到数据库中进行保存
1.窗体截图(如图5-4)
图5-4图书信息添加窗体
2.功能设计与实现举个例子进行添加:
例如“书名”的添加,先将text的datesource属性进行绑定,再代码框中输入代码Adodc1.Recordset.AddNew
Adodc1.Recordset.Fields("书名")=Text1.Text
Adodc1.Recordset.Update
MsgBox"输入成功!
",,""
则可以将书名文本框中的内容输入到数据库中
该模块中还得注意一点就是数据的验证
在价格与数量的文本框中必须为数字,出版时间中必须为日期,否则程序运行会出现错误。
数字验证方法:
IfNotIsNumeric(Text)Then
MsgBox"输入格式必须为数字,请重新输入",,"警告"Text=""Text.SetFocus
EndIf
日期验证方法:
IfNotIsDate(Text)Then
MsgBox"输入格式必须为日期,请重新输入",,"警告"
Text.Text=""
EndIf
5.5图书信息的修改
将文本与Image与数据库相连接只需在“确定”修改按钮中添加
Adodc1.Recordset.Update
MsgBox"修改成功!
"
就可实现对数据的修改
5.6图书信息的删除
1.窗体截图(如图5-6)
5-6图书信息删除窗体
2.功能设计
将文本与Image与数据库相连接只需在“确定”修改按钮中添加
DimaskAsInteger
ask=MsgBox("是否删除?
",vbYesNo)
Ifask=6Then
Adodc1.Recordset.Delete
Adodc1.Recordset.MoveNext
IfAdodc1.Recordset.EOFThenAdodc1.Recordset.MoveLast
EndIf
选“确定”就会删除信息,“取消”则不会删除信息。
5.7图书信息查询
图书查询分了两种方式:
按顺序查询与搜索查询
[]按顺序查询(如图5-7-1)
图5-7-1按顺序查询
搜索查询(如图5-7-2)
图5-7-2
按顺序查询中直接将文本框与数据库相连接,可以翻到首页、上一页、下一页与尾页四种选择。
搜索查询中有精确查询与模糊查询,精确查询可通过书名或作者进行查询,通过代码“Adodc1.RecordSource="select*from图书信息where书名='"&Text1.Text&"'"”来实现,模糊查询是通过书名来进行查询的,例如查询“红楼梦”这本书的信息,则再文本框中输入“红”点击查询后,就会出现该图书的信息,本模块中新添了一个DataGrid控件,查询到的信息都将在其上面显示。
5.8根据分类进行数据的图形统计
需要与数据库绑定的模块需添加adodc控件,且将其与数据库进行绑定
图5-8-1直方图
图5-8-2饼图
第6章程序调试中遇到的主要问题及解决方法
6.1注册帐号出现的错误
数据库中帐号被设为主键,当注册时的帐号与数局库中的帐号有相同时就会出错。
解决方法:
在写入数据库前先进行查询数据库
Adodc1.Recordset.Find("帐号='"&Text1.Text&"'"),,1
IfNotAdodc1.Recordset.EOFThen
MsgBox"此帐号已存在,请重新输入"
Text1.Text=""
Text1.SetFocus
EndIf
6.2密码的非文本信息输入时出错
当数据库中设计的数据是非文本时(如:
数字、时间),在文本框中输入信息时对应格式不同时就会出错
解决方法:
进行数据的验证
数字验证方法:
IfNotIsNumeric(Text)Then
MsgBox"输入格式必须为数字,请重新输入",,"警告"
Text=""
Text.SetFocus
EndIf
日期验证方法:
IfNotIsDate(Text)Then
MsgBox"输入格式必须为日期,请重新输入",,"警告"
Text.Text=""
6.3文件以文本(txt)形式输出时出错
如果文件(txt)输出的位置不在该程序所在的文件夹下就会出错
解决方法:
将输出路径设为相对路径
OpenApp.Path&"\文件.txt"ForOutputAs#1
结 论
本论文主要介绍了图书信息管理系统,根据学校图书馆的实际情况进行了可行性分析和需求分析,并对数据的结构设计进行了分析,初步设计出了系统的总体结构,此后对整个系统的功能和设计实现作出了详细的介绍。
由于设计时间仓促,对各个方面考虑的还不够全面,系统设计难免存在欠缺,有很多模块操作还不够人性化,对很多错误的信息处理还不够全面,包括数据的格式错误,数据的录入是否合乎实际要求等等。
对于一个完整的图书信息管理系统的功能实现还不够完整,很多功能还没有考虑到,还需要添加个别的功能模块,以达到系统的完整性。
由于设计时间的短暂,对于该系统的开发已经基本达到了最初的设计要求,能够基本满足用户的需求。
在以后