还剩43页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
XX科技大学XX学院毕业设计(论文)二〇一二年五月二十六日XX科技大学XX学院毕业设计(论文)任务书院系(教研室)系(教研室)主任:(签名)年月日学生姓名:学号:专业:1设计(论文)题目及专题图书管理系统的设计与开发2学生设计(论文)时间自2012年1月5日开始至2012年5月25日止3设计(论文)所用资源和参考资料1数据库相关书籍;2vb.net语言相关书籍;3MIS相关书籍及相关资料文献;4设计(论文)应完成的主要内容1对图书管理系统进行需求分析和总体设计;2设计数据库,利用Access数据库建立各表和各字段;3系统要求能实现借阅归还管理删改查询等基本功能;4要求代码简洁,界面美观;5提交设计(论文)形式(设计说明与图纸或论文等)及要求1提交毕业设计源代码;2按湖南科技大学本科生毕业设计(论文)格式规范撰写论文;3提交毕业设计论文电子档及纸质文档;6发题时间2012年1月5日指导教师(签名)学生(签名)XX科技大学XX学院毕业设计(论文)指导人评语[主要对学生毕业设计(论文)的工作态度,研究内容与方法,工作量,文献应用,创新性,实用性,科学性,文本(图纸)规范程度,存在的不足等进行综合评价]指导人(签名)年月日指导人评定成绩XX科技大学XX学院毕业设计(论文)评阅人评语[主要对学生毕业设计(论文)的文本格式、图纸规范程度,工作量,研究内容与方法,实用性与科学性,结论和存在的不足等进行综合评价]评阅人(签名)年月日评阅人评定成绩XX科技大学XX学院毕业设计(论文)答辩记录日期学生学号班级题目提交毕业设计(论文)答辩委员会下列材料1设计(论文)说明书共页2设计(论文)图纸共页3指导人、评阅人评语共页毕业设计(论文)答辩委员会评语[主要对学生毕业设计(论文)的研究思路,设计(论文)质量,文本图纸规范程度和对设计(论文)的介绍,回答问题情况等进行综合评价]答辩委员会主任(签名)委员(签名)(签名)(签名)(签名)答辩成绩总评成绩摘要图书馆拥有丰富的文献信息资源,是社会信息系统的重要组成部分,在信息社会中的作用愈来愈重要随着信息技术在管理上越来越深入而广泛的应用,管理信息系统的实施在技术上已逐步成熟图书管理系统可以有效地管理图书资源,控制图书借阅的流程,对高校图书馆的管理有很大的帮助本文简述了图书管理系统的开发过程,包括阐述系统开发的背景及意义,研究其管理员模块的需求分析、系统设计和数据库设计等本系统是采用的是vb.net语言的编程,运用MicrosoftOfficeACCESS作为后台数据存储,基于VisualStudio2005进行开发的图书管理管理系统关键词数据库;图书管理;VB.net;ACCESSABSTRACTLibrarieshaveabundantliteratureinformationresourcessocialinformationsystemisplayinganmoreandmoreimportantpartoftheroleintheinformationsociety.Asinformationtechnologymoreandmoredepthinthemanagementofawiderangeofapplicationsmanagementinformationsystemsimplementationtechnologyhasgraduallymatured.Librarymanagementsystemcaneffectivelymanagethelibraryresourcescontroltheprocessofborrowingbooksandisveryhelpfultothemanagementoftheuniversitylibrary.Thispaperdescribesthedevelopmentprocessofthelibrarymanagementsystemincludingthebackgroundandsignificanceofthesystemdevelopmentresearchneedsanalysissystemdesignanddatabasedesignoftheadministratormodule.ThissystemusesThevb.netasprogramminglanguageMicrosoftOfficeACCESSasabackgrounddatastorageandVisualStudio2005astheprogrammingplatform.Keywords:Database;Librarymanagement;VB.net;ACCESS目录第一章引言
11.1选题的背景及意义
11.2论文的目的
11.3论文的主要内容2第二章系统开发相关技术
32.
1.NET框架与VisualStudio
200532.
1.
1.NET框架概述
32.
1.2VisualStudio2005概述
32.2VisualBasic.Net语言
32.
2.1MicrosoftVisualBasic.Net语言简介
42.
2.2MicrosoftVisualBasic.Net语言特点
52.
2.3MicrosoftVisualBasic.Net语言运行环境
52.3Access数据库
62.4SQL简介7第三章系统分析与设计
93.1图书管理系统分析
93.2系统功能需求
103.3系统结构
103.4数据库需求与设计
113.
4.1数据库需求分析
113.
4.2数据库设计12第四章系统实现
134.1开发运行环境构建
154.2数据库实现
174.
2.1设计数据表结构
174.
2.2数据库实施
204.3系统主要功能模块的实现
214.
3.1系统登录
214.
3.2学生图书借阅管理
234.
3.3学生图书续借管理
264.
3.4学生图书归还管理
284.
3.5管理员图书管理
304.
3.6管理员学生信息管理32第五章结束语35参考文献36致谢37第一章引言
1.1选题的背景及意义随着信息化管理的普及,越来越多的组织、机构、单位等都通过多样化的系统来实现管理的信息化,这样既节约成本又便于管理,信息与资源也易于保存,信息化管理给人们带来的便利与好处显而易见对于图书馆而言,信息化管理可以说是必不可少了,图书馆书籍众多,信息量大,涉及到学生信息,教师信息等复杂信息的管理,外加院系、机构等的多样化及易变性,图书馆对信息系统化管理的要求就更高了由于图书种类众多,每个学生可同时借阅多本图书,每本书都需要经常被借阅,于是会有冲突因此我们需要及时的知道书本的剩余,而同时书本的借阅若没有及时归还,就会造成其他有需要的人无法及时阅读,也会带来许多麻烦,所以我们也需要对图书的归还有一定的规划这时,我们就需要对各种书籍有统一规划的管理,使每本书都有机会被借阅,而每本书都会按时归还图书管理系统是一所现代化教育高校不可缺少的部分一个功能齐全、简单易操作的图书管理系统能对图书馆种类繁多的书籍进行高效管理控制,合理管理好学生的借还信息提高图书馆的工作效率,降低管理成本计算机图书管理系统是我国大部分院校或其它部门不可缺少的部分书籍是人类精神食粮,尤其对一些学校,图书馆来说,非常重要图书管理系统能够为用户实现借阅图书、期刊、试卷合订本等,随着科学技术的不断提高,计算机科学日渐成熟其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用作为计算机应用的一部分,使用计算机对图书资源信息进行管理,具有着手工管理所无法比拟的优点.例如:查阅迅速、安全性高、可靠性高、存储量大、保密性好、成本低等这些优点能够极大地提高图书管理的效率也是企业、学校的科学化、正规化管理与世界接轨的重要条件,因此,开发这样一套管理软件是很有必要
1.2论文的目的课题旨在开发适合于某学校图书馆使用的图书管理系统,方便某学校图书馆管理员对书籍、学生等信息进行管理,同时方便某学校学生对自己所需书籍的借阅归还的管理图书管理系统的管理员模块主要实现了对书籍和学生信息的管理,包括书籍信息的查询与修改和学生的信息查询和修改;对书籍的管理,包括书籍信息的修改和书籍新增等;对学生信息的管理,包括学生信息的查询修改以及学生信息的导入等;还包括对学生借阅信息的查询和修改和锁定从不同用户的角度出发,设置不同的管理权限,使用户对图书的管理更方便快捷
1.3论文的主要内容论文结合系统开发的一般过程与本系统实际情况,首先进行需求分析,了解本系统主要面向什么样的用户,要实现什么功能,做好第一步的需求分析工作然后根据需求分析来进行总体设计,确定开发环境,包括数据流程的把握和数据库的设计等接下来,就是具体的开发过程了,这其中包括
一、系统界面的设计,确保其美观、友好,可行性和实用性
二、具体功能的逐步实现根据前期的具体分析,运用所选择的开发环境,结合以往所学的知识和相关参考文献,完成每个模块所需实现的功能系统开发完成后,还需要细致的测试,通过不同用例的测试,从多方面测试系统的可行性和正确性,对出现错误或不够完善之处加以改进并予以完善本论文具体章节安排如下第一章绪论,主要介绍本课题的背景和意义第二章系统开发相关技术,主要介绍本系统涉及的相关技术以及开发工具和运行环境第三章系统设计,对本系统进行需求分析、可行性分析,以及介绍系统目标、开发环境、系统功能结构和系统目录结构第四章系统实现,是全文的核心部分,包括开发运行环境构建,数据库,系统功能实现等第五章结束语,首先对全文进行总结,接着对未来的研究和工作进行了展望第二章系统开发相关技术
2.
1.NET框架与VisualStudio
20052.
1.
1.NET框架概述.NET框架(.NETFramework)是由微软开发,一个致力于敏捷软件开发(Agilesoftwaredevelopment)、快速应用开发(Rapidapplicationdevelopment)、平台无关性和网络透明化的软件开发平台.NET是微软为下一个十年对服务器和桌面型软件工程迈出的第一步NET包含许多有助于互联网和内部网应用迅捷开发的技术.NET框架是一个多语言组件开发和执行环境,它提供了一个跨语言的统一编程环境.NET框架的目的是便于开发人员更容易地建立Web应用程序和Web服务,使得Internet上的各应用程序之间,可以使用Web服务进行沟通从层次结构来看,.NET框架又包括三个主要组成部分公共语言运行时(CLR CommonLanguageRuntime)、服务框架(ServicesFramework)和上层的两类应用模板——传统的Windows应用程序模板(WinForms)和基于ASPNET的面向Web的网络应用程序模板(WebForms和WebServices)公共语言运行时(CLR),是一个运行时环境,管理代码的执行并使开发过程变得更加简单CLR是一种受控的执行环境,其功能通过编译器与其它工具共同展现在CLR之上的是服务框架,它提供了一套开发人员希望在标准语言库中存在的基类库,包括集合、输入/输出、字符串及数据类
2.
1.2VisualStudio2005概述VisualStudio2005是基于.NET
2.0框架的它同时也能开发跨平台的应用程序,如开发使用微软操作系统的手机的程序等总体来说是一个非常庞大的软件,甚至包含代码测试功能这个版本的VisualStudio包含有众多版本,分别面向不同的开发角色同时还永久提供免费的VisualStudioExpress版本通过将SDLC工具集成到UI级别的表面,VisualStudioTeamSystem提高了团队工作效率并增强了项目的可预见性,下面说明数据级别表面以及过程级别的项目上下文尽管存在一些基本的工具可组成SDLC工具(例如,架构师工具、测试工具等),但是SDLC并未限制住工具的数量当集成支持SDLC的工具时,团队会发现在提高团队效率,同时降低复杂性这些方面的好处VisualStudioTeamSystem将提供基本的平台,让所有提供商能够以一种普通的、公众可理解的形式交换信息这理所当然地铸造了一个充满活力的合作伙伴体系,合作伙伴能够构建完全集成的工具,简化构建IT解决方案的复杂性,以及推动信息交流和鼓励团队协作要获得跨UI、数据和过程集成的最大价值,就需要扩展性扩展性促成交互性 VisualStudioTeamSystem设计基础是扩展性模型Microsoft提供的SDLC工具利用与第三方可用的扩展性功能相同的扩展性功能扩展性体现在集成的三个层次UI、数据和过程当Microsoft首先发布VisualBasic之时,就通过降低其复杂度从而使Windows软件开发得以广泛应用利用VisualBasic
6.0,Microsoft让数以百万计的开发人员能够快速开发客户端/服务器应用程序最近,利用VisualStudio.NET,Microsoft又为开发人员提供了轻松开发分布式应用程序的工具与技术通过VisualStudio2005TeamSystem,Microsoft正在解决日益增加的应用程序复杂性及其设计、开发和部署所必需的生命周期问题这一点是通过提供必需的工具和指导从而能够预见、重复结果(无需付出生产效率和创新的代价)实现的
2.2VisualBasic.Net语言
2.
2.1MicrosoftVisualBasic.Net语言简介VisualBasic.NET是从VisualBasic语言演变而来,是一种为高效地生成类型安全和面向对象的应用程序而设计的语言VisualBasic允许开发人员开发面向Windows、Web和移动设备的程序与所有面向Microsoft.NETFramework语言一样,使用VisualBasic编写的程序都具有安全性和语言互操作性方面优点VB.net常被人称为VB
7.0即对VB6的升级是不对的,几乎在.net中思想已经完全改变,VB6中是基于事件和对象的思想,而在.net中由于使用了.net框架,面对对象在.net中尤为突出,6中过程思想还能运用,但在.net中过程思想已完全被OOP思想取代vb.net是VisualBasic.net的简称提到vb.net,就不能不先提一下vb(VisualBasic)VisualBasic是Windows环境下的一种简单、易学的编程环境,由于其开发程序的快速、高效,深受程序员的喜爱严格地来说,VisualBasic只是半面向对象的编程环境,其面向对象的能力及程序的执行效率往往不能满足一些程序员的需要,因此,大的项目很少使用VisualBasic来开发VisualBasic的最后一个版本是VisualBasic
6.0在VisualBasic
6.0之后,微软公司推出了全新的“.NET构架”,在其第一个版本-VisualStudio.NET
7.0中,集成了VisualBasic
7.
0、VisualC++
7.0及C#,其中的VisualBasic
7.0(vb
7.0),即是vb.net的第一个版本VB.net是微软最新平台技术,是.netframeworkSDK的一种语言VB.net和VC#.net在功能上没有区别编译以后生成的可执行文件被称为Assembly,即程序集VB.net的版本号是VisualBasic
7.0,它的运行是建立在CLRCommonLanguageRuntime和MSILMicrosoftIntermediateLanguage虚拟器上的其实,它的机制和Java差不多在VB.NET中,还删除了某些传统的关键字,提高了类型安全性,并公开了高级开发人员需要的低级别构造
[8]
2.
2.2MicrosoftVisualBasic.Net语言特点真正成为面向对象以及支持继承性的语言窗体设计器支持可视化继承,并且包含了许多新的特性,比如自动改变窗体大小、资源本地化支持、数据类工具内在支持XML数据直接建立在.NET的框架结构上,因此开发人员可以充分利用所有.NET平台特性,也可以与其他的.NET语言交互为Windows应用程序提供了XCOPY部署,开发者不再需要为DLL的版本问题担忧
2.
2.3MicrosoftVisualBasic.Net语言运行环境迄今为止,业界对VB.NET讨论得最多的特色或许就是CLRVB.NET运行在CLR之上,正是CLR为VB.NET带来了许多关键的新特色(包括缺点在内)例如,CLR使得VB.NET支持跨语言的继承以及自由线程在VB6中,分布式VB程序要求有VB运行时库msvbvm
60.dll支持,即该运行时库必须随同应用一起分发其他许多语言,比如C++和Java,也有类似的要求在.NET中,所有VisualStudio语言共享同样的运行时环境CLR改用CLR带来了几个重要的结果现在所有VisualStudio语言都共用同样的IDE、同样的窗体引擎、同样的异常处理机制,等等它意味着VisualBasic在很大程度上已经可以和.NET的其他语言相提并论,如C#等然而,对于CLR的异议仍旧存在,VB业界仍在激励地争辩它地价值不管应用是用VB、C#还是其他.NET语言编写,所有VS.NET代码都是编译成中间语言(IntermediateLanguage,IL)当应用运行时,一个实时编译器(just-in-timecompiler,或称为JIT)就把IL代码编译成机器语言在理论上,它意味着为非Windows的平台构造.NET运行环境是可能的,但目前还没有出现有关这类系统的正式消息IL有一个缺点正如VB在
5.0以前的版本,IL代码对于类似的反向编译工程很敏感由于存在这种可能性,许多开发者对于.NET框架的整体安全性抱有怀疑对CLR进行优化影响IL层次上的代码,它使得所有使用CLR的语言受益然而,对于特定语言的优化涉及到如何把代码编译成IL代码,它根据特定语言的语法进行因此,.NET各种语言之间存在一定的性能差异是必然的但不管如何,从整体上来看这仍旧是好事,例如CLR为VB带来了和C#一样的调试和分析工具——之所以能够如此,是因为它们都使用一样的工具CLR提供了前所未有的跨语言集成能力,其中包括跨语言继承代码的能力所有使用CLR的语言都使用一个公共类型系统(CommonTypeSystem),它使得开发那些运用多种语言的应用变得更为容易在CLR之内运行的代码称为“受管理的代码”(ManagedCode),受管理代码所使用的内存由CLR全面控制受管理的代码有着许多优点,包括交叉语言集成、跨语言异常控制以及一个组件交互的简化模型VisualBasic.NET只能以受管理代码方式运行,与此相对应,C#却具有将代码转入非受管理方式运行的能力(运行在CLR之外),比如执行指针处理之类的操作这是VB.NET不能与C#相提并论的地方之一然而,这种能力的是否重要,对于不同的人、不同的用途来说都有所不同
2.3Access数据库MicrosoftOfficeAccess是由微软发布的关联式数据库管理系统它结合了MicrosoftJetDatabaseEngine和图形用户界面两项特点,是MicrosoftOffice的系统程式之一Access能够存取Access/Jet、MicrosoftSQLServer、Oracle,或者任何ODBC兼容数据库内的资料熟练MicrosoftOfficeAccess的软件设计师和资料分析师利用它来开发应用软件,而一些不熟练的程序员和非程序员的进阶用户则能使用它来开发简单的应用软件虽然它支持部份面向对象(OO)技术,但是未能成为一种完整的面向对象开发工具其实Access也是微软公司另一个通讯程序的名字,想与ProComm以及其他类似程序来竞争可是事后微软证实这是个失败计划,并且将它中止数年后他们把名字重新命名于数据库软件
[4]MicrosoftAccess在很多地方得到广泛使用,例如小型企业,大公司的部门,和喜爱编程的开发人员专门利用它来制作处理数据的桌面系统它也常被用来开发简单的WEB应用程序.这些应用程序都利用ASP技术在InternetInformationServices运行比较复杂的WEB应用程序则使用PHP/MySQL或者ASP/MicrosoftSQLServer它的使用方便程度和强大的设计工具为初级程序员提供许多功能不过,这种便于使用可能使人误解这类开发者都是没有在应用或者数据设计方面训练的办公室从业人员,因此许多人以为这样的开发者能够创造可用的系统,但也有很多人认为工具本身的局限性产生了这样的误导加速数据库运行有许多方法,可以通过简单的操作使数据库运行得更快对于多用户的数据库,数据库的安全性就非常重要,尤其是放置在网络上数据库的安全问题一些专业的应用程序开发人员使用Access用作快速应用开发,特别是给街道上的推销员制作一个初型或独立应用程序的工具可是如果是透过网络存取数据的话,Access的可扩放性并不高.因此当程序被较多使用者使用时,他们的选择多会是倾向于一些客户端-服务器为本的方案,例如Oracle、DB
2、MicrosoftSQLServer、WindowsSharePointServices、PostgreSQL、MySQL、AlphaFive、MaxDB,或者Filemaker无论如何,不少Access的功能(表单,报告,序列和VB代码)可以用作其他数据库的后期应用,包括JET(档案为主的数据库引擎,Access缺省使用)、MicrosoftSQLServer、Oracle和任何其他跟ODBC兼容的产品这种方法允许开发者把一个成熟的应用的数据移动到一台更大功率的服务器而没有已经在适当的位置牺牲发展很多开发者谁使用MicrosoftAccess使用Leszynski命名约定,虽然这不普遍;它是一次编程大会,并非一个DBMS实施的规章一个好处进入从程序员视角在它的有关兼容性有SQL-质问可能被观看并且作为SQL语句编辑,并且SQL语句直接在巨视和VBA模里可以被使用操作进入桌子用户可能混合并且使用两个VBA并且宏编程形式和逻辑既没提供面向对象的可能性 导入导出报表的生成程序,当时有能力和到这项任务的复杂报告创造,没有另一受欢迎数据库报表程序的生成程序充满特色和强有力-水晶报告MSDE微软公司SQL服务器桌面发动机2000,袖珍版本的MSSQL服务器2000,被包括开发版的办公室XP并且被用于进入可能作为除之外的另一种选择JET数据库引擎大约这事实的缺乏知识因进入/喷口家庭的软件产品而为不该受不敬做贡献,特别是关于大工程进入分割和粘贴功能性能使它有用工具在其他数据库之间连结例如,在数据或者数据库变换期间的Oracle和微软公司SQL服务器进入与给与窗子和其他平台应用一起的积分的各种各样进口和退场门特征一起来,一经请求从应用的里面或者手工由用户其中几可以被执行例如非常紧密SNP完全格式化的为分享的形式与没有全部的进入软件的人们报告它也能容易被升级到微软公司SQL服务器 与一般的RDBMS完全不同,它缺乏数据库触发和预存程序自从MSAccess2000Jet
4.0,开发人员可以在查询中设定参数,这跟预存程序很相似的,但这些“预存程序”只能处理一个程序.当资料表内数据发生变化时,它确实允许形式包含被引发的代码,使用是普通的透过查询和其他技术在进入营运储存的程序在方面RDBMS支援这些版本
2.4SQL简介SQL全称是“结构化查询语言StructuredQueryLanguage”,最早是IBM的圣约瑟研究实验室为其关系数据库管理系统SYSTEMR开发的一种查询语言,它的前身是SQUARE语言SQL语言结构简洁,功能强大,简单易学,所以自从IBM公司1981年推出以来,SQL语言得到了广泛的应用目前,SQL语言已被确定为关系数据库系统的国际标准,被绝大多数商品化关系数据库系统采用,如Oracle、Sybase、DB
2、Informix、SQLServer这些数据库管理系统都支持SQL语言作为查询语言SQL是一门ANSI的标准计算机语言,用来访问和操作数据库系统SQL语句用于取回和更新数据库中的数据SQL可与数据库程序协同工作,比如MSAccess、DB
2、Informix、MSSQLServer、Oracle、Sybase以及其他数据库系统不幸地是,存在着很多不同版本的SQL语言,但是为了与ANSI标准相兼容,它们必须以相似的方式共同地来支持一些主要的关键词(比如SELECT、UPDATE、DELETE、INSERT、WHERE等等)结构化查询语言SQL是一种介于关系代数与关系演算之间的语言,其功能包括查询、操纵、定义和控制四个方面,是一个通用的功能极强的关系数据库标准语言在SQL语言中不需要告诉SQL如何访问数据库,只要告诉SQL需要数据库做什么SQL语言是1974年提出的,由于它功能丰富、使用方式灵活、语言简洁易学等突出优点,在计算机工业界和计算机用户中倍受欢迎1986年10月,美国国家标准局ANSI的数据库委员会批准了SQL作为关系数据库语言的美国标准1987年6月国际标准化组织ISO将其采纳为国际标准这个标准也称为“SQL86”随着SQL标准化工作的不断进行,相继出现了“SQL89”、“SQL2”1992和“SQL3”1993SQL成为国际标准后,对数据库以外的领域也产生很大影响,不少软件产品将SQL语言的数据查询功能与图形功能、软件工程工具、软件开发工具、人工智能程序结合起来第三章系统分析与设计本章是系统设计部分,首先,对图书管理系统进行了需求分析,确定系统所需的功能,并对系统各个功能进行了介绍然后,在需求分析的基础上,对本系统涉及到的数据库进行设计,接着,对本系统进行系统设计
3.1图书管理系统分析学校图书馆,书目繁多,用户的信息冗杂,且信息数据在每天变化,如果采用人工方式进行管理控制,不仅工作量庞大,而且容易出错针对这样的情况,采用MIS,让一切都在掌控之中技术上建立图书管理信息系统可以采用常用的设计语言——VisualBasic.net,用MicrosoftAccess数据库完成管理上系统简单易操作,只要对图书管理员简单培训,并设定相应规章制度,即可实行经济上系统的建立可降低管理费用通过本系统,把本校图书书目信息,用户信息及其借阅信息,管理员权限维护管理等各个环节进行有效组织和控制采用图书管理信息系统,可以有效地管理图书资源,控制图书借阅的流程,对图书馆或阅览室的管理有很大的帮助,提高工作效率,减轻管理者工作量,对图书馆或阅览室的管理有很大的帮助图书管理系统是典型的信息管理系统MIS,其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面对于前者要求建立起数据一致性和完整性强.数据安全性好的库而对于后者则要求应用程序功能完备易使用等特点本图书管理系统的应用对象定位在小型图书馆的应用根据要求本图书管理系统主要针对图书管理员进行添加新书、执行修改、查看图书的操作,另外进入该系统的学生只能查看当前图书馆的藏书并能执行查询借阅操作
3.2系统功能需求系统管理的信息主要包括图书基本信息、图书存储信息、借书和还书还有续借信息系统的目的就是有效地处理这些信息,同时为图书管理员提供信息检索和信息统计功能该图书管理系统主要实现管理员操作和学生操作其中,管理员操作包括完成添加图书、修改图书、查询图书、删除图书、查询学生管理员信息、修改管理员学生信息等功能;学生操作包括完成图书查询和借阅图书和还书和续借图书以及密码修改等功能图书管理系统管理员模块的基本功能根据用户类型分为两类管理员用户和学生用户对各个模块的描述如下
一、学生图书借阅系统图书借阅,归还,续借系统,修改登陆密码系统
二、管理员系统1)管理员管理系统添加、删除管理员,系统设有一个最高管理员拥有最高管理权限,修改管理员密码、登陆名2)图书管理
(1)图书管理系统查询、添加、删除、修改图书资料,可选择是否显示图书
(2)图书分类管理系统图书分类添加、修改、删除管理3)教务管理
(1)学生班级管理系统学生班级添加、修改、删除管理
(2)学生信息管理系统查询、添加、删除、修改学生资料4)超时管理图书借阅超时管理系统列出学生超时借阅图书资料,锁定选定的学生,禁止锁定的学生再借阅,列出已锁定的学生名,可解除选定的学生,允许学生再借阅5)系统配置
(1)图书馆基本配置设置系统是否开放图书借阅,可设置可借出数量、借阅时间、续借次数、公告刷新时间,可重置为默认数据,修改配置方案
(2)公告管理系统公告列表,添加、修改、删除公告6)数据管理
(1)管理员数据管理系统浏览管理员详细资料(包括登陆次数,最后登陆时间,是否最高管理员)
(2)学生数据管理系统查询浏览学生详细资料(包括借阅次数,登陆次数,最后登陆时间)
(3)图书借阅管理系统可按书名、借阅学生查询借阅数据,全显示已、没归还图书借阅数据信息,可清除已归还借阅信息
3.3系统结构系统功能结构图描述系统要实现的各个模块的功能具体的模块框架如图
3.1所示图书馆管理系统管理员模块管理员学生管理员管理系统图书管理教务管理超时管理系统配置图书借阅图书归还图书续借登录密码修改数据管理图
3.1 管理员模块框架图
3.4 数据库需求与设计
3.
4.1数据库需求分析立足于当今社会信息的发达,着眼于未来发展,建成符合标准化协议、通用性较强、实用的系统,以提高图书信息的现代化管理水平,实现信息资源的共享图书管理系统是一种基于集中统一规划的数据库数据管理新模式在对图书、读者的管理,其实是对图书、读者数据的管理本系统的建成会为管理者对图书管理系统提供良好的帮助使用该系统之后,图书馆管理人员可以管理学生的登记、图书的录入、借出、归还以及删除等;还可以查询某位学生、某本图书的借阅情况,对当前借阅情况给出一些统计,给出统计表格,以全面掌握图书的流通情况概念结构设计是数据库设计的关键,它根据需求分析得到客户需求转换为抽象的信息结构,是为数据库的建立做好充分准备的过程图书管理系统的开发所需的数据的存储就是使用的access数据库,所以在做详细的编码设计之前,做好数据库的设计时整个系统开发的关键过程本系统是一个图书管理系统,其主要内容当然是图书管理了,而且本系统是专门为学校学生所建立的通过参考目前比较主流的管理系统进行分析、整理,获得了关于本系统的数据库需求如下数据库中共有8张表,分别是管理员资料记录表、公告资料记录表、图书资料记录表、学生班级资料记录表、图书分类资料表、图书借阅登记资料记录表、图书馆基本配置记录表、学生资料记录表
3.
4.2数据库设计我们通常使用E-R模型来描述系统主要实体间的关系用ER图描绘的数据模型称为ER模型ER图提供了表示实体(即数据对象)、属性和联系的方法,以此得出全局ER图如图
3.2所示学生管理管理员nm管理图书nn借阅nm管理班级属于nmnm图
3.2 数据库ER图图书管理系统总体ER图如图
3.3所示图书管理员图书管理学生借书n11111n借出日期还书日期借书期限学生管理1n图
3.3 图书管理系统总体ER图图书信息表ER图包括图书编号、图书名、出版社、数量、剩余数量、类别名、作者、已借阅次数如图
3.4所示图书图书编号剩余数量类别名图书名出版社数量作者已借阅次数图
3.4 图书信息表E-R图学生信息ER图包括姓名、班级、电话号码、密码、借书信息、到期日期、登陆时间、最后登陆时间、学号如图
3.5所示学生密码姓名学号班级电话号码借书信息到期日期最后登录时间登录次数图
3.5 学生信息ER图管理员信息ER图包括数据管理、图书管理、教务管理、超时管理、教务管理、用户名、密码、系统管理如图
3.6所示管理员用户名密码教务管理超时管理系统配置数据管理图书管理系统管理图
3.6 管理员信息ER图第四章系统实现
4.1开发运行环境构建操作系统WindowsXP开发平台Visualstudio2005数据库Microsoftaccess本文以Visualstudio2005为例主要内容包括
(1)将获得的VisualStudio2005光盘放入光盘驱动器,屏幕上将会弹出图
4.1所示的对话框图
4.1 VisualStudio安装界面一
(2)单击“安装VisualStudio2005”链接,进入下一步安装,如图
4.2所示此处可以选择是否参加微软的帮助改进安装活动,读者可以根据自己的意愿选择是否参加图
4.2 VisualStudio安装界面二
(3)单击“下一步”按钮,进入下一步安装,如图
4.3所示这个窗体中包含最终用户许可协议,需要同意其所有条款才能继续下一步安装界面的右下方分别是产品密钥和名称的输入框,输入相应信息图
4.3 VisualStudio安装界面三
(4)单击“下一步”按钮,进入下一步安装,如图
4.4所示图
4.4 VisualStudio安装界面四此处出现的窗体右侧中部可以修改产品安装路径,读者可以根据右下方磁盘空间的提示选择合适的安装位置对于VisualStudio功能比较熟悉的可以在窗体左侧选择自定义安装,自己取舍程序的功能一般来说,选取默认值安装是比较合适的选择单击“安装”按钮,安装程序将进入一个漫长的安装过程安装完成后点击打开就可以使用了
4.2数据库实现
4.
2.1数据表结构将概念结构设计的信息结构ER图转换为方便建立数据库表使用的逻辑结构,从而完成数据库表的设计本系统的数据库表的设计如下表
4.1管理员资料记录表表
4.2公共资料记录表表
4.3图书资料记录表表
4.4学生班级资料记录表表
4.5图书资料分类表表
4.6图书基本配置表表
4.7学生资料登记表表
4.8图书借阅登记表
4.
2.2数据库连接数据库连接建立与及连接数据库对象的SQL脚本文件数据读取公共函数数据更新公共函数
4.3系统主要功能模块的实现
4.
3.1系统登录进入平台后,首先接触到的是登录界面,可以自由选择登录角色然后输入用户名、密码、才能登录用户进入登录界面,如果是管理员,输入自己的用户名、密码后,应该选择管理员角色,如果输入的用户名或密码有误,或者选择错误角色,则会提示用户名或密码错误,若是没有或者没有输入用户名和密码则会提示用户名或密码不能为空如果是学生登录,也是如此登录后管理员进入管理员界面,学生进入系统主界面学生首页会显示学生信息,但是可以选择是否隐藏登录系统流程图如图
4.5所示界面输入学生输入框是否为空管理员输入框是否为空为空为空警告框学号、密码是否有错帐号、密码是否有错有错有错没有错误,隐藏登陆界面,打开学生借阅界面没有错误,隐藏登陆界面,打开管理员管理界面图
4.5系统登录流程系统登录界面,可以选择学生或者是管理员角色,然后验证用户名和密码正确后进入相对的界面如图
4.6所示图
4.6系统登录界面所添加核心代码如下
4.
3.2学生图书借阅管理图书馆管理系统最大的用户群就是学生,而对于学生来说图书馆管理系统最大的作用便是图书的查询、借阅、续借、归还而在图书的借阅当中往往又会涉及到书籍的剩余数量所以书籍的数量也会影响学生借阅是否成功图书的归还和续借不仅影响到书籍的数量,若是书籍被大量借出而没有人归还就会造成书籍的短缺也会对学生们对于书籍的借阅产生麻烦,于是若有学生长期不归还且无续借的操作就会被管理员锁定,被锁定后则会无法借阅书籍,同时图书馆是否开放也会影响书籍借阅的成功与否借阅成功后数据库内相应的表会更新学生图书借阅管理流程图如图
4.7所示是否有选择图书学生是否被锁定是否开放借阅图书是否已借阅添加数据入表landinfo更新表studentinfo更新表bookinfo重新读取学生借阅图书信息警告框图书是否有剩余图
4.7学生借阅图书流程图学生进入图书借阅界面当没有被锁定且图书馆开放的时候可以查询选择书籍后然后选择有剩余数量的图书进行借阅如图
4.8所示图
4.8学生图书借阅界面所添加核心代码如下
4.
3.3学生图书续借管理学生借阅书籍之后,由于对某些书籍还有未完的学习和阅读,往往需要继续借阅,此时我们就需要一个续借功能,同时这个功能也维护了图书所被允许借出的时间限制,防止某些学生一直不归还书籍,若所需要的书籍或者其余的书籍有超时为归还的则会被锁定,此时需要解锁才能续借,若是续借的书籍被续借次数过多也不能续借成功图书续借流程图如图
4.9所示开始进入图书管理系统界面学生是否被锁定书籍查询选择结束NY归还超时图书数据更新续借次数是否超过续借成功NY警告框图
4.9图书续借流程图所添加核心代码如下学生在图书续借管理界面可以对已借阅的书籍进行续借操作如图
4.10所示图
4.10图书续借界面
4.
3.4学生图书归还管理在图书管理系统当中图书的归还也是非常重要的,若是一直持续的借出,而没有归还,那么系统最终会无书籍可借,同时只有在规定的时间内归还书籍才不会被锁定,而锁定后只有归还书籍才能继续进行其他的操作图书归还流程图如图
4.11所示开始进入图书管理系统界面学生是否被锁定选择书籍归还结束归还超时书籍解锁数据更新图
4.11学生图书归还流程图所添加核心代码如下在图书归还界面可以选择书籍进行归还,同时也能归还超时书籍并解锁界面如图
4.12所示图
4.12学生图书归还流程图
4.
3.5管理员图书管理图书管理系统中管理员权限中比较重要的就是图书管理了,包括图书的查询、添加、删除、修改和重置,它保证了图书的更新与信息的同步,也避免了书籍信息的混乱,使各种信息完整简洁其中书籍查询可以通过系统方式和自定义方式选择查询,同时在这个界面我们看见书籍的各种信息,并且可以选择是否锁定书籍管理员图书管理系统流程图如图
4.13所示开始进入管理员图书管理系统后台添加删除修改重置数据更新保存结束查询锁定图
4.13管理员图书管理系统流程图所添加核心代码如下进入管理员图书管理系统可以进行查询、添加、删除、修改、重置等操作界面如图
4.14所示图
4.14管理员图书管理系统界面图
4.
3.6管理员学生信息管理在图书管理系统中,管理员除了图书管理以外还有就是学生的信息管理,因为书籍所面向的对象就是学生,所以学生的基本信息的添加修改删除也比较重要,同时在这个界面我们也可以进行查询和排序等操作管理员学生信息管理的流程图如图
4.15所示开始进入管理员学生管理系统添加删除修改查询数据更新保存结束图
4.15管理员学生信息管理系统流程图所添加核心代码如下管理员可以在学生管理系统中进行查询学生信息还可以进行添加、修改、删除学生信息等操作,同时查询学生信息时可以使用系统方式或者自定义方式管理员学生管理界面如图
4.16所示图
4.16管理员学生管理系统界面图第五章结束语随着计算机技术、网络技术、数据库技术的发展,人类已经逐步迈入信息化社会信息和材料、能源一样成为一种社会的基本生产资料,在人类的社会生产活动中发挥着重要的作用同时人们对信息和数据的利用与处理也已进入自动化、网络化和社会化的阶段,因此,开发相关的管理信息系统已经成为各行各业的必要和必需了,管理信息系统作为一门边缘学科,集管理科学、信息科学、系统科学、现代通信技术和电子计算机技术于一体,可以解决企业或组织所面临的问题,提高工作效率图书管理系统是典型的信息管理系统MIS,要求建立起数据信息一致性和完整性、系统功能完备易操作使用等特点同时,系统的开发建立有MicrosoftAccess数据库、SQL语言、VisualBasic.net等现代信息技术做基础,满足系统建立的要求本次对图书管理系统的设计分析,主要完成对图书管理系统的可行性分析、功能模块划分、流程图设计,数据字典建立,有利于对图书资源进行高效管理控制,并且合理管理好用户的借还信息,提高图书馆的运作效率,降低管理费用本系统是一个面向小型图书企业,具有一定实用性的数据库信息管理系统本系统具有相当的实用功能在查询方面,系统实现了关键字查询,同时在分类查询上实现了动态生成,系统可以自动识别用户不同的输入在图书入库、出库和库存三者之间建立了良好的链接关系,t同时也方便了管理员的管理,为此带来了便利在学生管理方面,系统较好地实现了学生自主管理个人信息等功能通过本次系统的设计分析,加深了对管理信息系统这门课程的认识和理解进一步了解了信息系统的功能和作用,掌握了管理信息系统开发和建立的要点,通过学习,初步掌握开发管理信息系统和在管理中应用计算机的基础能力管理信息系统是一个社会技术系统,它在应用过程中涉及管理制度、权力结构和人的习惯等等,因此它不但技术要求高,而且影响因素众多,是一个极其复杂的系统由于本人本文水平有限,一些研究的结论有待进一步发展但是由于设计时间较短,所以该系统还有许多不尽如人意的地方,用户界面不够美观,出错处理不够等多方面问题这些都有待进一步改善因此在本文中难免会出现一些错误和不足之处,敬请各位给予批评和指正参考文献CommentbyUser:字体大小不对,应该是四号
[1]赛奎春、高春艳.VisualBasic精彩编程200例.北京机械工业出版社,2003.
[2] 高春艳、李俊民、张耀庭等.VisualBasic信息系统开发实例精选.北京机械工业出版社,CommentbyUser:只要一个空格2005.
[3] 高春艳、李俊民.VisualBasic工程应用与项目实践.北京机械工业出版社,2005.
[4] 李俊民、高春燕.Access数据库开发实例解析.北京机械工业出版社,2006.
[5] 黄孝章.信息系统分析与设计.北京清华大学出版社,2010.
[6] 施伯乐、数据库系统教程(第3版).北京高等教育出版社,2009.
[7] 萨师煊、数据库系统概论(第三版).北京高等教育出版社,2003.
[8] 黄志超、李婷婷.VisualBasic.NET项目开发实践.北京中国铁道出版社,2003.
[9] 黄明、梁旭、曹利超.VisualBasic.NET信息系统设计与开发实例.北京机械工业出版社,2005.致谢经过一段时间的修改,这篇毕业论文最终完成,这篇毕业论文给我非常奇妙的感觉,其中最大的感觉我想应该是困惑,似乎每一句话每一个字下笔都很艰难可是现在回头看来确非常成就感,即使我仍然记得那些困难和障碍在这里我要衷心的感谢我的导师陈林书老师他为人热情乐观,治学严谨细心正是他的无私帮助,我才能一步一步的完成这篇论文,尤其在不厌其烦的进行论文的修改和改进整个论文的定稿过程中他从来没有责骂过我一句,一直都是不停的鼓励,这给了我莫大的信心我还要感谢我的班主任XXX老师和辅导员XXX老师以及在大学四年中给我们授课的所有老师们,是他们的耐心教导,让我懂得很多道理,不仅是学业上面的也有生活中的最后我要感谢四年里陪伴我的同学、朋友们,因为他们我才不会孤独,因为他们我才更能感受这个世界的美好题目图书管理系统的设计与开发作者学院专业学号指导教师字段名称数据类型说明长度id自动编号管理员标识号长整型adminname文本登陆名10lpassword文本登陆密码10logins数字登陆次数长整型lastlogin日期/时间上次登陆时间—tiptop数字是否最高管理员是:1否:0字节字段名称数据类型说明长度id自动编号公告标识号长整型content文本公告内容60admin数字发表公告管理员ID长整型addtime日期/时间公告发表时间,默认now—字段名称数据类型说明长度id自动编号图书标识号长整型name文本图书名20classify数字图书分类整型author文本图书作者20bookconcern文本图书出版社25addtime日期/时间进馆时间,默认now—amount数字图书数量整型remain数字剩余数量整型loandegree数字借出次数长整型display数字是否显示是:0否:1字节字段名称数据类型说明长度id自动编号班级标识号长整型name文本班级名20字段名称数据类型说明长度id自动编号分类标识号长整型name文本分类名10字段名称数据类型说明长度id自动编号借出图书标识号长整型bookid数字借出的图书标识号长整型studentid数字借书的学生标识号长整型landtime日期/时间借出时间,默认Now—returntime日期/时间实际还书的时间—shouldreturntime日期/时间应该还书的时间—hadreturn数字标识是否已经归还是:1否:0字节canreland数字续借次数长整型字段名称数据类型说明长度canland数字是否可借出图书是:1否:0字节canlandnum数字可以借出图书的数量默认0整型canlanddays数字图书可以借阅时间默认:60天整型canreland数字可以续借的次数默认:5次整型boardreflash数字公告刷新时间默认时间为6000毫秒长整型字段名称数据类型说明长度id自动编号学生标识号长整型name文本学生名5lpassword文本学生登陆密码10learnid文本学生学号12class数字班级标识号整型phone文本联系电话11lands数字借阅次数长整型logins数字登陆次数长整型lastlogin日期/时间最后登陆时间\islock数字是否超时锁定是:1否:0字节PubliccmdAsOleDbCommandBuilderDimconnstringAsString=Provider=Microsoft.Jet.OLEDB.
4.0;DataSource=getpathPublicconnAsOleDbConnection=NewOleDbConnectionconnstring定义一个数据连接对象,并初始化DimsqlstrAsStringSQL语句标记DimobjDSAsDataSet数据在内存中的缓存sqlstr=SELECTidlpasswordFROMstudentinfoWHERElearnid=filterTrimtbname.Text.ToStringobjDS=GetDatasqlstrIfobjDS.Tables
0.Rows.Count0ThenIfobjDS.Tables
0.Rows0lpassword.ToString=tbpassword.TextThen比较输入密码和数据库的密码DimmainAsNewwin_mainloginid=objDS.Tables
0.Rows0idsqlstr=updatestudentinfosetlogins=logins+1lastlogin=nowwhereid=filterTrimloginid.ToStringobjDS=GetDatasqlstrPublicFunctionGetDataByValsqlstrAsStringAsDataSetds=NewDataSetds.Clear实例化一个数据集对象Tryconn.Open打开数据库连接ADOcmd=NewOleDbDataAdaptersqlstrconn将数据库的数据映射到数据适配器ADOcmd.Fillds填充数据集的数据conn.Close关闭数据连接,这一点很重要CatchMsgBox错误号Err.Number错误描述Err.DescriptionEndTryReturndsds=NothingEndFunctionPublicFunctionUpdateDataByValsqlstrAsStringAsBooleanTrymyCmd=NewOleDbCommandsqlstrconn要对数据源执行的SQL语句或存储过程conn.Open打开数据库连接myCmd.ExecuteNonQuery执行SQLconn.Close关闭数据库连接CatchMsgBox错误号Err.Number错误描述Err.DescriptionReturnFalseEndTryReturnTrueEndFunctionPrivateSubbtsubmit_ClickByValsenderAsSystem.ObjectByValeAsSystem.EventArgsHandlesbtsubmit.ClickIftbname.Text=Then登陆名为空!MessageBox.Show登陆号不能有空!登陆错误MessageBoxButtons.OKMessageBoxIcon.Exclamationtbname.FocusExitSubElseIftbpassword.Text=Then密码为空MessageBox.Show登陆密码不能有空!登陆错误MessageBoxButtons.OKMessageBoxIcon.Exclamationtbpassword.FocusExitSubEndIfPrivateSubbtland_ClickByValsenderAsSystem.ObjectByValeAsSystem.EventArgsHandlesbtland.Click点击借阅按钮IfNotislockThenIfcanland=1ThenlandElseMessageBox.Show图书馆暂时没开放公告MessageBoxButtons.OKMessageBoxIcon.InformationEndIfElseMessageBox.Show由于你借阅的某本书超过时,被暂时锁定ControlChars.CrLf请归还该书,锁定自动解除公告MessageBoxButtons.OKMessageBoxIcon.InformationEndIfEndSubFunctionland先判断该书是否已经借阅了然后判断该书是否有剩余最后更新数据库Ifviewbookid0ThenDimcanlandAsBoolean=TrueTrysqlstr=select*fromlandinfowherebookid=viewbookidandstudentid=stuIDandhadreturn=0判断该书是否已经借阅了objDS=GetDatasqlstrIfobjDS.Tables
0.Rows.Count0ThenMsgBox你已借过该书MsgBoxStyle.Information+MsgBoxStyle.OKOnly错误canland=FalseEndIfsqlstr=select*frombookinfowhereid=viewbookidandremain=0判断该书是否有剩余objDS=GetDatasqlstrIfobjDS.Tables
0.Rows.Count0ThenMsgBox该书没有剩余了MsgBoxStyle.Information+MsgBoxStyle.OKOnly错误canland=FalseEndIfFunctionrelandbookIflandinfo_info.CheckedItems.Count0ThenDimcAsIntegerdbookAsStringrelandAsBooleanallokAsBoolean=TrueForc=0Tolandinfo_info.CheckedItems.Count-1从列表中续本书续借dbook=Splitlandinfo_info.CheckedItemsc.ToString从列表中读出图书IDsqlstr=select*fromlandinfowherebookid=CIntdbook1andstudentid=stuIDandhadreturn=0andcanrelandcanreland读取是否续借过canrelandTryobjDS=GetDatasqlstrIfobjDS.Tables
0.Rows.Count0Then续借次数是否到规定次数sqlstr2=updatelandinfosetshouldreturntime=DateAddycanlanddaysnowcanreland=canreland+1wherebookid=CIntdbook1andstudentid=stuIDandhadreturn=0GetDatasqlstr2更新数据库.该图书续借成功sqlstr=select*fromlandinfowherestudentid=stuIDandDateDiffdshouldreturntimenow=0andhadreturn=0读取借阅超时的图书objDS=GetDatasqlstrIfobjDS.Tables
0.Rows.Count=0Then如果没有超时的图书sqlstr=updatestudentinfosetislock=0whereid=stuIDUpdateDatasqlstrislock=FalseEndIfCallreadlandbookIfnoteThenMessageBox.Show归还成功成功MessageBoxButtons.OKMessageBoxIcon.InformationElseMessageBox.Show没有选择图书ControlChars.CrLf不能续借错误MessageBoxButtons.OKMessageBoxIcon.ExclamationEndIfPrivateSubButton4_ClickByValsenderAsSystem.ObjectByValeAsSystem.EventArgsHandlesButton
4.Clickcan=TrueIfbookid=0ThenMessageBox.Show没有选定图书错误MessageBoxButtons.OKMessageBoxIcon.Informationcan=FalseElseIfislock.Checked=TrueThenMessageBox.Show图书状态锁定错误MessageBoxButtons.OKMessageBoxIcon.Informationislock.Focuscan=FalseEndIfPrivateSubbtadd_ClickByValsenderAsSystem.ObjectByValeAsSystem.EventArgsHandlesbtadd.Clickcan=Truebookname=filterTrimtbbookname.Text.ToStringauthor=filterTrimtbauthor.Text.ToStringclassify=filterTrimcbclassify.Text.ToStringbookconcern=filterTrimtbbookconcern.Text.ToStringamount=filterTrimtbamount.Text.ToStringPrivateSubbtadd_ClickByValsenderAsSystem.ObjectByValeAsSystem.EventArgsHandlesbtadd.ClickDimstunamestulearnidclassnamephoneAsStringcaninsertAsBoolean=Truestuname=filterTrimtbstuname.Text.ToStringstulearnid=filterTrimtbstulearnid.Text.ToStringclassname=filterTrimcbclass.SelectedIndexphone=filterTrimtbphone.Text.ToStringIfcaninsertThensqlstr=insertintostudentinfonamelearnidclassphonevaluesstunamestulearnidclassnamephoneGetDatasqlstrLabeID.Text=tbstuname.Text=tbstulearnid.Text=cbclass.SelectedIndex=0tbphone.Text=stuid=reloadDataMessageBox.Show数据更新成功更新成功MessageBoxButtons.OKMessageBoxIcon.Information。