图书馆信息管理系统设计.doc_第1页
图书馆信息管理系统设计.doc_第2页
图书馆信息管理系统设计.doc_第3页
图书馆信息管理系统设计.doc_第4页
图书馆信息管理系统设计.doc_第5页
已阅读5页,还剩73页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

图书分类号:密 级:毕业设计(论文)图书馆信息管理系统设计THE DESIGN OF LIBRARY INFORMATION MANAGEMENT SYSTEM学生学号XXXXX学生姓名XXX学院名称XXXX专业名称XXXXXXXX指导教师XXX2011年06月08日 徐州工程学院毕业设计(论文)徐州工程学院学位论文原创性声明本人郑重声明: 所呈交的学位论文,是本人在导师的指导下,独立进行研究工作所取得的成果。除文中已经注明引用或参考的内容外,本论文不含任何其他个人或集体已经发表或撰写过的作品或成果。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标注。本人完全意识到本声明的法律结果由本人承担。论文作者签名: 日期: 年 月 日徐州工程学院学位论文版权协议书本人完全了解徐州工程学院关于收集、保存、使用学位论文的规定,即:本校学生在学习期间所完成的学位论文的知识产权归徐州工程学院所拥有。徐州工程学院有权保留并向国家有关部门或机构送交学位论文的纸本复印件和电子文档拷贝,允许论文被查阅和借阅。徐州工程学院可以公布学位论文的全部或部分内容,可以将本学位论文的全部或部分内容提交至各类数据库进行发布和检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。论文作者签名: 导师签名: 日期: 年 月 日 日期: 年 月 日摘要本系统在正常运行中会面对大量的读者信息、图书信息以及两者相互作用产生的借书信息、还书信息。因此需要对读者信息资源、图书资源、借书信息、还书信息进行管理,及时了解各个环节中信息的变更,有利于提高管理效率。本文主要完成对图书管理系统的功能分析、功能模块划分、数据库模式分析,并由此设计了本系统的数据结构和开发应用程序。本系统总体采用面向对象的设计思。前端应用程序设计是用C+语言,在 Visual studio 2005开发,后台的数据库系统采用的是SQL Server 2000关系数据库系统。本系统实现了查询馆藏图书信息、添加、修改和删除馆藏图书信息、查询用户的基本信息、添加、删除和修改用户信息、查询超期的图书和用户、用户借书归档、用户还书归档等功能。关键词:图书管理 Visual studio 2005 SQL server 2000 C+ AbstractThis system in the normal operation will face much information of books and readers, and the interaction between books information, also books information. Therefore we need to manage resources of readers information, library, information of borrowing books, also information of lending books, prompt understanding each link of information, to improve the efficiency of management changes. This paper mainly accomplish functional analysis , functional moduledivides, analysis of database mode of books management system ,and thus designed the data structure and developing applications. This system overall adopts object-oriented design ideas.Front application program design uses the C+ language in Visusl studio 2005 develop plotform. the backend database system is SQL Server 2000 relational database system. This system has achieved search collectional books information, add, modify and delete their information, search the users basic information, add, delete and modify their information, search the detentions of books and user, user borrow filing, users also book archive etc. Function. Keywords: library management Visual studio 2005 SQL server 2000 C+II徐州工程学院毕业设计(论文)目 录1 引言11.1 选题背景11.2 图书馆发展现状11.3本课题研究目的12 开发工具简介22.1 Visual Studio 2005简介22.1.1 .NET Framework介绍22.1.2公共语言运行库(CLR)介绍22.1.3 Windows 窗体32.1.4 显示和操作数据32.2 SQL Server 2000简介43 系统功能分析53.1系统功能分析53.2系统数据分析54 系统模块划分64.1 模式比较64.2系统功能模块设计64.3数据库概念结构设计75 数据库结构设计95.1数据库逻辑结构设计95.2 数据库视图设计105.3 数据库连接146 系统模块设计156.1用户登录模块156.2主菜单界面166.3用户模块176.4查询模块186.4.1图书信息查询186.4.2借阅查询196.5还书历史查询206.6借阅管理模块216.6.1借书操作216.6.2还书操作236.6.3超期图书查询246.7管理模块256.7.1图书管理256.7.2用户管理267 系统测试28结论36致谢37参考文献38附录39711 引言1.1 选题背景随着信息时代的到来,以计算机技术、网络技术和通讯技术为主体的现代技术的发展,给人们的生活带来了方方面面的影响。图书馆作为一种信息资源的集散地,最基本的职能是传播信息知识,服务广大信息用户,有着供人们检索文献和利用文献的服务性。传统的图书馆对信息管理的主要方式是基于文本、表格等纸介质的手工处理,对于图书借阅情况的统计和核实等往往进行人工检查,数据信息处理工作量大,容易出错;且数据繁多,容易丢失,不易查找。因此就需要有高效的图书信息管理系统来提高图书管理工作的效率,通过这样的系统,可以做到图书信息的规范管理、科学统计和快速的查询,从而减少管理方面的工作量。1.2 图书馆发展现状图书馆有着丰富的信息资源,是社会信息系统的重要组成部分。数字和网络技术的发展带动了图书馆现代技术的应用,使传统图书馆彻底打破以往的封闭模式,向着电子化、网络化和数字化的方向迈进。图书馆的馆藏也由传统馆藏向电子、数字化馆藏转变 ,文献信息的载体出现了纸张和电子介质共存的局面。图书馆除了为读者提供传统的借阅服务、参考咨询等外,还可以为读者提供网上服务,如全文检索、文件传输等。各个图书馆之间完全可以借助因特网,将馆藏资源向社会开放,同时通过建立图书馆之间的馆际互借系统、原文复制和网上文献传递业务关系,使参与共建共享的各类图书馆的信息资源为更多的用户服务,提高图书馆信息资源的利用率。1.3本课题研究目的随着信息社会的发展,需要存储和传播的信息量越来越大,信息的种类和形式越来越丰富,图书馆作为重要的信息资源服务场所,用传统的方式实现其信息服务性的职能,显然已经不能满足广大用户的需要,更不能适应信息时代至知识经济时代的发展。以计算机为中心的图书管理系统必然替代传统的手工管理系统,系统高度抽象了图书管理各阶段的业务模型,采用弹性灵活的设计方式,能够帮助图书管理员对图书进行征订、分类、借还、逾期罚款等进行管理,并且对读者的信息进行管理,允许用户根据自己的需要查询信息,管理员可以对系统进行及时、合理地管理和维护。2 开发工具简介2.1 Visual Studio 2005简介Visual Studio 是一套完整的开发工具集,用于生成 ASP.NET Web 应用程序、XML Web Services、桌面应用程序和移动应用程序。Visual Basic、Visual C+、Visual C# 和 Visual J# 全都使用相同的集成开发环境 (IDE),利用此 IDE 可以共享工具且有助于创建混合语言解决方案。另外,这些语言利用了 .NET Framework 的功能,通过此框架可使用简化 ASP Web 应用程序和 XML Web Services 开发的关键技术。2.1.1 .NET Framework介绍.NET Framework 具有两个主要组件:公共语言运行库(CLR)和 .NET Framework 类库。公共语言运行库是 .NET Framework 的基础。可以将CLR看作一个在执行时管理代码的代理,它提供内存管理、线程管理和远程处理等核心服务,并且还强制实施严格的类型安全以及可提高安全性和可靠性的其他形式的代码准确性。事实上,代码管理的概念是运行库的基本原则。以运行库为目标的代码称为托管代码,而不以运行库为目标的代码称为非托管代码。.NET Framework 的另一个主要组件是类库,它是一个综合性的面向对象的可重用类型集合,您可以使用它开发多种应用程序,这些应用程序包括传统的命令行或图形用户界面 (GUI) 应用程序,也包括基于 ASP.NET 所提供的最新创新的应用程序(如 Web 窗体和 XML Web services)。.NET Framework 可由非托管组件承载,这些组件将公共语言运行库加载到它们的进程中并启动托管代码的执行,从而创建一个可以同时利用托管和非托管功能的软件环境。.NET Framework 不但提供若干个运行库宿主,而且还支持第三方运行库宿主的开发。2.1.2公共语言运行库(CLR)介绍公共语言运行库管理内存、线程执行、代码执行、代码安全验证、编译以及其他系统服务。这些功能是在公共语言运行库上运行的托管代码所固有的。公共语言运行库的功能通过编译器和工具公开,您可以编写利用此托管执行环境的代码。使用基于公共语言运行库的语言编译器开发的代码称为托管代码;托管代码具有许多优点,例如:跨语言集成、跨语言异常处理、增强的安全性、版本控制和部署支持、简化的组件交互模型、测试和分析服务等。若要使公共语言运行库能够向托管代码提供服务,语言编译器必须生成一些元数据来描述代码中的类型、成员和引用。元数据与代码一起存储;每个可加载的公共语言运行库可移植执行 (PE) 文件都包含元数据。公共语言运行库使用元数据来完成以下任务:查找和加载类,在内存中安排实例,解析方法调用,生成本机代码,强制安全性,以及设置运行时上下文边界。公共语言运行库自动处理对象布局并管理对象引用,当不再使用对象时释放它们。按这种方式实现生存期管理的对象称为托管数据。垃圾回收消除了内存泄漏以及其他一些常见的编程错误。如果您编写的代码是托管代码,则可以在 .NET Framework 应用程序中使用托管数据、非托管数据或者同时使用这两种数据。由于语言编译器会提供自己的类型(如基元类型),因此您可能并不总是知道(或需要知道)这些数据是否是托管的。公共语言运行库主要有以下几个优点: 性能得到了改进;能够轻松使用用其他语言开发的组件;类库提供的可扩展类型;新的语言功能,如面向对象的编程的继承、接口和重载;允许创建多线程的可缩放应用程序的显式自由线程处理支持;结构化异常处理和自定义属性支持。2.1.3 Windows 窗体Windows 窗体用于在 .NET Framework 上创建 Microsoft Windows 应用程序。此框架提供一个有条理的、面向对象的、可扩展的类集,使您能够开发功能丰富的 Windows 应用程序,生成丰富的交互式用户界面。另外,Windows 窗体可作为多层分布式解决方案中的本地用户界面。Windows 窗体是 .NET Framework 的智能客户端技术,.NET Framework 是一组可简化常用应用程序任务(如读写文件系统)的托管库。使用类似 Visual Studio 的开发环境时,您可以创建 Windows 窗体智能客户端应用程序,以显示信息、请求用户输入以及通过网络与远程计算机通信。 在 Windows 窗体中,“窗体”是向用户显示信息的可视图面。通常情况下,通过向窗体上添加控件并开发对用户操作(如鼠标单击或按下按键)的响应,生成 Windows 窗体应用程序。“控件”是显示数据或接受数据输入的相对独立的用户界面 (UI) 元素。 当用户对窗体或其中的某个控件进行操作时,将生成事件。应用程序使用代码对这些事件进行响应,并在事件发生时处理事件。Windows 窗体包含可添加到窗体上的各式控件:用于显示文本框、按钮、下拉框、单选按钮甚至网页的控件。如果现有控件不满足需要,Windows 窗体还支持使用 UserControl 类创建自己的自定义控件。2.1.4 显示和操作数据许多应用程序必须从数据库、XML 文件、XML Web services 或其他数据源显示数据。Windows 窗体提供了一个名为 DataGridView 的灵活控件,用于使用传统的行和列格式显示此类表格数据,以使每条数据都占据自己的单元格。使用 DataGridView 时,可以自定义各个单元格的外观、将任意行和列锁定在现有位置,以及在单元格内显示复杂控件等。 使用 Windows 窗体智能客户端,通过网格连接数据源成为了一个简单的任务。Visual Studio 2005 和 .NET Framework 2.0 中随 Windows 窗体提供的新组件 BindingSource 可以表示到数据源的连接,并公开了将数据绑定到控件、导航至上一条和下一条记录、编辑记录以及将更改保存回原始源的方法。BindingNavigator 控件提供一个与 BindingSource 组件的简单接口,供用户在记录间导航。使用“数据源”窗口可以轻松地创建数据绑定控件。该窗口可显示项目中的数据源,例如数据库、Web 服务和对象。通过将项从此窗口拖动到项目中的窗体可以创建数据绑定控件。还可以通过将对象从“数据源”窗口拖动到现有控件来将现有控件数据绑定到数据。2.2 SQL Server 2000简介SQL Server 2000是由Microsoft开发和推广的关系数据库管理系统(DBMS)。SQL Server 2000继承了SQL Server 7.0的高性能、可靠性和可扩充性的优点,同时又引进了数据库和服务器增强功能,以及其他一些新的特性,使它成为一个杰出的数据库平台,可用于大型联机事务处理、数据仓库及电子商务等。数据库由DBMS处理,DBMS 则由开发人员和用户通过应用程序直接或间接地使用。它主要包括四个要素:用户数据、元数据、索引和应用元数据。其主要特点是:实现数据共享;减少数据的冗余度;数据的独立性;数据实现集中控制;数据一致性和可维护性,以确保数据的安全性和可靠性。3 系统功能分析3.1系统功能分析系统需要对用户身份进行验证,验证通过后再判断用户是管理员还是普通用户,根据角色判断登录用户可以使用系统中的相应操作功能。如果是普通用户,其只能进行馆藏书目、个人信息和借阅情况的查询。而管理员可进行的操作相对复杂,也是系统开发的主要部分,总流程如下:用户管理管理员图书管理用户信息流通管理图书信息图书借阅图书归还逾期图书逾期读者借阅信息图3-1 系统结构图1、能够对图书信息进行录入,即将图书的基本信息(如:图书流水号、图书编号、图书名称、存放位置、出版社)存入数据库中,供以后检索。2、能够对用户基本信息进行录入,包括用户流水号、用户编号、用户姓名、用户密码和是否为管理员。3、记录每次的借还行为,主要包括:借阅流水号、图书编号、用户编号、借阅时间、到期时间。4、提供方便的查询方法。如:可以方便地查出某用户所有的图书借还记录以及某图书目前被借还等信息。3.2系统数据分析根据以上功能,将图书信息管理系统的数据分为:1、数据输入部分,主要包括图书基本信息的录入、用户基本信息的录入。2、数据输出部分,主要是各种统计查询,包括:用户信息查询、图书信息查询、用户借还历史查询。3、数据处理部分,主要涉及图书借出和归还的处理,如某图书借出后,必须在数据库中将该图书标记为已借出;某图书一旦归还后,同样必须在数据库中将其标记为已经归还,以便再次借出。4、数据修改部分,对用户安全级别进行划分,分为“普通用户”和“管理员”。管理员可以对图书和用户的基本信息进行添加、修改、删除操作,普通用户则不可以。4 系统模块划分确定了功能需求,系统的主要功能有了明确的标准,就进入了设计阶段。下面详细说明系统设计内容。4.1 模式比较目前系统开发主要有两种类型: C/S 和B/S。基于浏览器/服务器(B/S)结构系统的主要优点是系统的安装、修改和维护全在服务器端解决,达到了“零客户端”的功能, 但其缺点是安全性难以控制, 数据处理的响应速度不快, 数据的动态交互性不强, 不利于在线事务处理(OLTP)应用。而基于客户端/服务器(C/S) 结构系统的优点是客户端的安全性较高, 数据处理的响应速度快, 数据的动态交互性强, 缺点是客户端程序设计复杂, 软件的移植、维护和升级困难。C/ S 模式主要由客户端程序(Client) 、服务器管理程序( Server ) 和中间件(Middleware) 三个部件组成。在C/S模式中,由服务器承担对数据的全面管理,在服务器和客户机上分别运行各自的应用程序。系统平台采用C/S 模式的优点是很显然的:首先,由于C/S 模式在客户端有一套完整的应用程序,所以具有很强的交互性,在管理人员进行数据的录入工作时,系统能及时准确地提供出错信息、在线帮助等功能;第二,由于C/S模式是配对的点对点的结构模式,通常采用的是适用于局域网、安全性较好的网络协议,因此C/S模式能提供更为安全的存取模式,而系统的安全性正是图书管理系统最为关注的;第三C/S模式只有两层逻辑结构,其网络通讯量较低,且传输速度快;第四,C/S模式没有过多地占用网络资源。4.2系统功能模块设计根据第三章的系统功能分析,将图书馆信息管理系统分为六大模块,其系统功能模块图如下:图书馆信息管理系统借阅管理历史查询查询删除用户信息更改用户信息查询用户信息更改图书信息查询图书信息增加图书信息删除图书信息添加用户信息历史还书查询借阅查询图书查询用户密码修改登录信息管理图书管理用户管理超期图书查询还书借书图4-1 系统功能模块图4.3数据库概念结构设计根据以上需求分析和数据组织, 开始设计数据结构,即根据需求分析画出实体/关系图(E/R)。在概念上,(E/R)图代表的是系统需要的数据及其这些数据之间的关系。设计局部(E/R)图模型的关键就是正确划分实体和属性。将数据数据抽象后可以得到实体和属性,实际上实体和属性是相对而言的,往往要根据实际情况进行必要的调整在调整中要遵循以下两条原则:(1)实体具有描述信息,而属性没有。即属性必须是不可分的数据项,不能再由另一些属性组成。(2)属性不能与其他实体具有联系,联系只能发生在实体之间。这个系统中存在的实体为图书和用户,其中用户和图书是多对多的关系。根据上面两个原则可以得到如下关系模式:图书(图书流水号,图书编号,图书名称,存放位置,出版社)。用户(用户流水号,用户编号,用户姓名,用户密码,是否为管理员)。通过用户对某一图书进行借阅,产生相对应的借阅时间、到期时间等信息,可以得到如下关系模式:借阅(借阅流水号,用户编号,图书编号,借阅时间,到期时间)。历史借阅(借阅历史流水号,借阅流水号,用户编号,图书编号,借阅时间,到期时间,实际归还时间)在局部E-R模型设计完成后下一步就是集成各种局部E-R模型,形成全局E-R模型,即视图集成。视图集成的方法有以下两种:(1)多元集成法,一次将多个局部E-R图合并为一个全局E-R图。(2)二元集成法,首先集成两个重要的局部E-R图,以后用累加的方法逐步将一个新的E-R图集成进来。合并局部E-R图的关键就是合理地消除各局部E-R图中的冲突:属性冲突、命名冲突和结构冲突。针对本系统,通过对图书信息管理的内容和数据流程分析,可以得到如下E-R图。用 户姓名密码编号流水号号是否为管理员借 阅图 书流水号号编号名称出版社位置借阅流水号到期时间借阅时间图书编号用户编号图4-2 系统的E-R图5 数据库结构设计5.1数据库逻辑结构设计 概念结构设计阶段得到的E-R模型是用户的模型,它独立于任何一种数据类型,独立于任何一个具体的DBMS。数据库逻辑设计的任务是将概念模型转换成塔顶DBMS所支持的数据模型的过程。根据上面的数据库概念结构转化为SQL Server 2000数据库系统所支持的实际数据模型,也就是数据库的关系模型。在此基础上建立起如下表:表5-1 base_book(图书信息表)列名数据类型长度可否为空注释bookidbigint8Not Null图书流水号book_code(主键)varchar50Not Null图书编号book_namevarchar50Null图书名称posvarchar50Null存放位置publishvarchar50Null出版社memovarchar50Null表5-1中包含了图书的基本信息,包括图书流水号、图书编号、图书名称、存放位置和出版社。表5-2 base_user(用户信息表)列名数据类型长度可否为空注释useridbigint8Not Null用户流水号user_code(主键)varchar50Not Null用户编号user_namevarchar50Null用户姓名user_pwdvarchar50Null用户密码user_stateint4Null是否是管理员memovarchar50Null表5-2中包含了用户的基本信息,包括用户流水号、用户编号、用户姓名、用户密码和是否为管理员。user_state为1时表示该用户为管理员,为0时表示该用户为普通用户。表5-3 his_manager_borrow(历史借阅信息表)列名数据类型长度可否为空注释his_idbigint8Not Null借阅历史流水号borrow_id(主键)bigint8Not Null借阅流水号user_codevarchar50Not Null用户编号book_codevarchar50Not Null图书编号borrow_datedatetime8Null借阅时间return_datedatetime8Null到期时间memovarchar50Nullfact_return_datedatetime50Null实际归还时间表5-3包含了历史借阅信息,包括用户流水号、借阅流水号,用户编号、图书编号、借阅时间、到期时间、实际归还时间。表5-4 manager_borrow(借阅管理表)列名数据类型长度可否为空注释borrow_id(主键)bigint8Not Null借阅流水号user_codevarchar50Not Null用户编号book_codevarchar50Not Null图书编号borrow_datedatetime8Null借阅时间return_datedatetime8Null到期时间memovarchar50Null表5-4包含了用户的借阅信息,包括借阅流水号、用户编号、图书编号、借阅时间和到期时间。5.2 数据库视图设计 1、设计视图:v_book_ask(图书查询)该视图包含了馆藏图书的相关信息,由表base_book和表manager_borrow通过left out join连接得到,条件是base_book.book_code = manager_borrow.book_code,得到的信息包括图书编号、图书名称、出版社、借阅流水号和该书的存放位置。图5-1 v_book_ask(图书查询视图)SQL语句如下:SELECTdbo.base_book.book_code,dbo.base_book.book_name,dbo.base_book.publish, ISNULL(dbo.manager_borrow.borrow_id, 0) AS borrow_id,dbo.base_book.posFROM dbo.base_book LEFT OUTER JOIN dbo.manager_borrowON dbo.base_book.book_code = dbo.manager_borrow.book_code2、 设计视图:v_his_return(还书历史查询)该视图包含了还书历史信息,首先由表his_manager_borrow和表base_book通过INNER JOIN连接,再和表base_user通过INNER JOIN连接得到,条件分别是his_manager_borrow.book_code=base_book.book_cod和his_manager_borrow.user_code = base_user.user_code,得到的信息包括图书标号、图书名称、出版社、用户编号、用户姓名、借阅时间、到期时间和实际归还时间。图5-2 v_his_return(还书历史查询视图)SQL语句如下:SELECT dbo.his_manager_borrow.book_code, dbo.base_book.book_name, dbo.base_book.publish, dbo.his_manager_borrow.user_code, dbo.base_user.user_name, dbo.his_manager_borrow.borrow_date, dbo.his_manager_borrow.return_date,dbo.his_manager_borrow.fact_return_date, dbo.his_manager_borrow.his_idFROM dbo.his_manager_borrow INNER JOINdbo.base_book ON dbo.his_manager_borrow.book_code = dbo.base_book.book_code INNER JOIN dbo.base_user ON dbo.his_manager_borrow.user_code = dbo.base_user.user_code3、设计视图:v_manager_borrow(借阅查询)首先由表base_book和表manager_borrow通过INNER JOIN连接,再和表manager_borrow通过INNER JOIN连接得到,条件分base_book.book_code = manager_borrow.book_code和manager_borrow.user_code =base_user.user_code,得到的信息包括图书标号、图书名称、出版社、用户编号、用户姓名、借阅时间和到期时间。图5-3 v_manager_borrow(借阅查询视图)SQL语句如下:SELECT dbo.manager_borrow.book_code, dbo.base_book.book_name, dbo.base_book.publish, dbo.manager_borrow.user_code, dbo.base_user.user_name, dbo.manager_borrow.borrow_date, dbo.manager_borrow.return_dateFROM dbo.base_book INNER JOIN dbo.manager_borrow ON dbo.base_book.book_code = dbo.manager_borrow.book_code INNER JOIN dbo.base_user ON dbo.manager_borrow.user_code = dbo.base_user.user_code4、设计视图:v_manager_overdate(超期图书查询)该视图包含了超期图书的相关信息,包含视图 v_manager_borrow的所有信息和超期天数,超期天数由系统函数DATEDIFF(day, return_date, GETDATE()得到。得到的信息包括图书编号、图书名称、出版社、用户编号、用户姓名、借阅时间、到期时间和超期天数。图5-4 v_manager_overdate(超期图书查询视图)SQL语句如下:SELECT book_code, book_name,book_ publish, user_code, user_name, borrow_date, return_date, DATEDIFF(day, return_date, GETDATE() AS over_dayFROM dbo.v_manager_borrow5.3 数据库连接当系统启动后,就要连接数据库,需要4个参数:数据源名称、初始化窗体、数据库用户账号和密码。应用程序使用 SqlConnection 对象建立连接,然后使用 SqlCommand 对象向服务器发送命令,并接收服务器返回的结果。SqlDataAdapter 是 DataSet 和 SQL Server 之间的桥接器,用于检索和保存数据。SqlDataAdapter 通过对数据源使用适当Transact-SQL 语句映射 Fill(它可更改 DataSet 中的数据以匹配数据源中的数据)和 Update(它可更改数据源中的数据以匹配 DataSet 中的数据)来提供这一桥接。当 SqlDataAdapter 填充 DataSet 时,它为返回的数据创建必需的表和列(如果这些表和列尚不存在)。SqlDataAdapter 与 SqlConnection 和 SqlCommand一起使用,以便在连接到 SQL Server 数据库时提高性能。每个 DataSet 都可以包含多个 DataTable 对象,每个 DataTable 都包含来自单个数据源(如 SQL Server)的数据。SqlDataAdapter类的构造函数SqlDataAdapter (String selectCommandText,StringselectConnectionString)中selectCommandText是将要由 SqlDataAdapter 的 SelectCommand 属性使用的 Transact-SQL SELECT 语句或存储过程,selectConnectionString是连接字符串。SqlDataAdapter 构造函数的此重载使用 selectCommandText 参数来设置 SelectCommand 属性。SqlDataAdapter 将使用 selectConnectionString 参数创建连接并对该连接进行维护。连接数据库的一个方法是对一个 SqlDataAdapter 组件进行初始化,并使用该组件填充 DataTable。然后,将 DataTable 绑定到 BindingSource 组件,但需确保将 connectionString 变量的值设置为与数据库相应的值。6 系统模块设计本系统按功能分为登录、用户、查询、历史查询、借阅管理和信息管理六个模块,下面依次对每个模块进行说明。6.1用户登录模块该模块实现用户登录,防止非法用户使用图书管理系统。当使用者使用此系统时,只有用户名和密码都正确时,才可以通过登录界面进入此系统的主界面。其窗体如下:图6-1 登录界面控件属性列表如下:表6-1 窗体属性表窗体名称StartPositionTextloginCenterScreen登录表6-2 控件属性表控件nameText标签label1账号:标签Label2密码:文本框textBox1 文本框textBox2 按钮button1确定按钮button2关闭流程图如下:开始输入账号和密码账号或密码是否正确?Y结束N图6-2 登录流程图登录到主界面之前,首先调用用户登录模块。textBox1和textBox2与数据库相连接,当在这两个文本框中分别输入用户账号和密码时,从数据库中读入base_user表中的内容,判断用户输入的账号和密码是否正确。若正确则进入主菜单界面,不正确则弹出错误信息,然后重新输入账号和密码。6.2主菜单界面该模块提供菜单选择功能,供用户选择各模块。图6-3 主菜单界面控件属性列表如下:表6-3 窗体属性表窗体名称WindowStateIsMidContainerMainMenuStripTextform1MaximizedTruemenuStrip1图书管理系统表6-4 控件属性表控件NameTex菜单文件ToolStripMenuItem文件子菜单退出ToolStripMenuItem退出菜单用户ToolStripMenuItem用户子菜单修改密码ToolStripMenuItem修改密码菜单查询ToolStripMenuItem查询子菜单图书查询ToolStripMenuItem图书查询子菜单借阅查询ToolStripMenuItem借阅查询菜单历史查询ToolStripMenuItem历史查询子菜单还书历史查询ToolStripMenuItem还书历史查询菜单借阅管理ToolStripMenuItem借阅管理子菜单借书ToolStripMenuItem借书子菜单还书ToolStripMenuItem还书子菜单超期图书查询ToolStripMenuItem超期图书查询菜单信息管理ToolStripMenuItem信息管理子菜单用户管理ToolStripMenuItem用户管理子菜单图书管理ToolStripMenuItem图书管理 6.3用户模块图6-4 修改密码界面控件属性列表如下:表6-5 窗体属性表窗体名称StartPositionTextform_update_passwordCenterScreen修改密码表6-6 控件属性表控件nameText说明标签Label4用户账号:标签Label1旧密码:标签Label2新密码:标签Label3新密码确认:文本框textBox4 输入用户账号文本框textBox1 输入旧密码文本框textBox2 输入新密码文本框textBox3 再次输入新密码按钮button1确定按钮button2关闭该模块实现用户对自己密码的修改。进入主菜单界面之后,单击“用户”菜单的子菜单“修改密码”,系统弹出“修改密码”界面,文本框textBox4、textBox1、 textBox2和textBox4与数据库相连,分别用于输入用户账号、旧密码、新密码和新密码确认,若两次输入的新密码不正确,则弹出错误信息。6.4查询模块6.4.1图书信息查询图6-5 图书信息查询控件属性列表如下:表6-7 窗体属性表窗体名称 StartPosition Text ask_bookCenterScreen图书查询表6-8 控件属性表控件nameText说明标签Label1图书编号:标签Label2图书名称:标签Label3出版社:文本框textBox1 输入图书编号文本框textBox2 输入图书名称文本框textBox3 输入出版社按钮button1查询按钮button2关闭表6-9 数据网格控件属性表控件NameMultitiSelectSelectionMode数据网格dataGridView1FalseFullRowSelect该模块实现用户对馆藏图书的信息查询。进入主菜单界面之后,单击“查询”菜单的子菜单“图书查询”,系统弹出“图书查询”界面,textBox1、textBox2和textBox3与数据库相连,从数据库中读入v_book_ask视图中满足条件的内容。textBox1、textBox2和textBox3分别用于输入图书编号、图书名称和出版社。若文本框中没有任何输入,直接单击“查询”按钮,则显示所有图书的信息。6.4.2借阅查询图6-6 借阅查询界面控件属性列表如下:表6-10 窗体属性表窗体名称

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论