大型图书馆图书借阅系统设计_第1页
大型图书馆图书借阅系统设计_第2页
大型图书馆图书借阅系统设计_第3页
大型图书馆图书借阅系统设计_第4页
大型图书馆图书借阅系统设计_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

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

文档简介

1、大型图书馆图书借阅系统设计摘要:图书借阅系统采用三层B/S模式,具有操作方便、界面友好的优点。在系统设计中采纳Visual Studio 2010(C#)开发、SQL Server 2008数据支撑。本系统适合于大型图书馆图书信息管理系统,用于摆脱一系列人工管理的内在问题。用户可以短时间内找到要借阅的图书,同时它具有动态,及时调整文档结构的功能,使图书馆正在逐步向计算机信息化管理转变。包含六个功能模块,信息管理,用户管理,图书馆,图书检索,系统管理和系统辅助。在本系统的实现中,采用了多种查询技术;为提高系统的网上检索的效率,对查询结果采用缓存技术和其它的系统优化技术。同时在开发中采取了安全性措

2、施,确保了系统在一定程度上的安全可靠。前言叙述了图书馆管理现状以及用计算机管理图书馆的前景。对系统的设计思想和模块化设计的基础文本,文档管理系统的可行性分析,数据库设计,系统设计,系统的维护和改进作参考。关键词:图书借阅系统 Visual Studio 2010 SQL Server 2008 Asp.NetLarge library book lending system designAbstract:Library system adopts three layer B/S mode, possesses the advantages of convenient operation, fr

3、iendly interface. In system design to adopt the Visual Studio 2010 (c #) development, SQL Server 2008 data to support. This system is suitable for large library book information management system, is used to get rid of a series of internal problems of artificial management. Users can find to borrow

4、books in a short period of time, at the same time it has dynamic, timely adjust the structure of the document function, make the library to computer information management. Contains six function module, information management, user management, library, books retrieval, system management and system s

5、upport. In the implementation of this system USES a variety of query technology; In order to improve the efficiency of the online retrieval system, with the result of the query cache technology and other system optimization technology. In developing security measures were taken at the same time, to

6、ensure the system to a certain extent, safe and reliable.The foreword describes the library management status quo and the prospect of the management of the library by computer. On the system design and modular design text, the basis of the feasibility analysis for the document management system, dat

7、abase design, system design, system maintenance and improvement for reference.Key words:Book lending system System;Visual Studio 2010;SQL Server 2008;Asp.Net目录1 前言11.1 问题的提出11.2 需求分析12 设计思想及依据22.1 设计思想22.2 开发工具介绍23 系统可行性分析33.1 结构的选择(B/S)33.2 技术可行性33.3 经济可行性33.4 操作环境及运行环境44 总体设计54.1 项目规化54.2 系统功能结构图5

8、5 公共类设计76 数据库设计96.1 数据库概要说明96.2 数据库概念设计96.3 数据逻辑结构设计127 模块设计137.1 用户管理模块137.2 图书信息管理模块137.3 图书借阅模块167.4 图书查询模块197.5 系统辅助模块207.6 系统管理模块218 网站的编译和发布238.1 网站的编译238.2网站的发布23结束语25参考图书261 前言1.1 问题的提出图书馆与我们的生活息息相关。但由于传统的人工管理效率低,图书流通缓慢和图书分类不明致使图书占用了大量馆内空间,因此,开发一套完善的信息管理系统是必不可少的。随着社会的发展与进步,怎样更高效的利用资源以提高效率越来越

9、受到人们的关注。图书管理也提出这样的要求,因此图书的数字化管理越来越受到大众的青睐。传统的图书馆管理方法有一些缺点,如需要更多员工,工作量大,管理资料存储查询不方便等。 图书借阅系统是现代图书管理工具中的重要组成部分。现代化的图书管理就必须要有现代化的管理系统,采用计算机管理信息系统已成为图书管理科学化和现代化的首要特征,并给图书管理带来极大的便利。近年来图书事业的蓬勃发展,以及软件开发技术的逐步成熟,图书借阅系统使得原来繁重而易出错的图书管理变得简单而有条理,我所开发这一图书借阅系统的目的在于能够节省大量的人员成本,加快图书的流通速度,使得管理变得方便可靠。它广泛应用于图书馆管理,力求开发出

10、一套严谨、可靠、功能完整的管理系统。图书馆管理系统的使用可以很好的解决传统图书馆管理存在的各种不同问题 。减少人员需求,提高工作效率,使图书管理更加便利。1.2 需求分析图书馆是图书资源中心,图书阅读中心。根据我们的调查:还有一些中小型图书馆仍然未使用信息管理图书,他们以前的图书管理集中于表,文本和其他纸质的手工处理。图书借阅情况统计,通常人工来完成。各项数据的处理花费大量时间并且数据还很容易丢失。总之,他们缺少简洁、规范的管理技术。虽然计算机已经应用在一些图书馆,但是图书的管理还是捉襟见肘,图书借阅系统的作用没有得到完全的发挥,资源闲置现象突出。如何来运用一种更加便捷简便的方式管理海量的图书

11、信息成为图书馆管理人员的难题。既能加快图书的借阅、流通速,还能减轻管理人员的工作量进而提高效率一直以来困扰着我们。计算机的快速发展给图书借阅管理带来了全新模式,采用图书借阅系统进行全程管理不仅仅是图书的管理拜托了传统的人工带来繁琐的一系列问题,而且是管理工作减少了运行成本,提高了效率。为了使图书管理更加系统化、规范化、程序化,提高图书借阅信息的处理速度,我开发了一个文档借阅系统,该系统能够准确、及时,有效的查询和修改图书信息。2 设计思想及依据2.1 设计思想本系统主要通过在Visual Studio2010集成开发系统和SQL Server 2008作为后台支持,是一套适用于大型图书馆的图书

12、信息管理系统,它的应用摆脱固有的一系列缺点的问题:使管理员及时了解各类图书在图书馆借阅情况,用户可以快速检索需要的书,因此,它可以是动态的,及时调整书库的结构。它包括文档信息检索,用户管理,图书检索,系统管理和系统辅助六大功能模块。在本系统的实现中,采用了多种查询技术;为提高系统的网上检索的效率,对查询结果采用缓存技术和其它的系统优化技术;同时在开发中采取了安全性措施,确保了系统在一定程度上的安全可靠。2.2 开发工具介绍所用到的开发工具:Visual Studio 2010(C#) 和SQL Server 2008。C#是一种集成开发工具,具有传统开发软件的优点,并且它可以可视化,支持面向对

13、象,同时提供安全的、稳定的、简单的编程语言。它继承了C和C+的强大的功能,成为网络开发的首选语言。C#是面向对象的编程语言。它使得程序员可以快速地编写各种基于MICROSOFT .NET平台的应用程序,MICROSOFT .NET提供了一系列的工具和服务来使计算与通讯领域得到最大程度地开发利用。C#使得C+程序员可以高效的开发程序,因为C/C+ 编写的本机原生函数可被调用 ,因此绝没有损失C/C+原有的强大的功能。因为这种继承关系,C#与C/C+具有极大的相似性,熟悉类似语言的开发者可以很快的转向C#。微软公司开发的 SQL Server 2008是一个关系数据库。关系数据库引擎和结构化数据提

14、供了一个更加安全可靠的存储容量,这样我们才能构建和管理高可用性和高性能的企业数据和应用程序。在此我简单介绍其新的特性、功能:·可信任性:为公司运行他们的应用程序提供了安全性、可靠性。·高效性:使得开发者降低开发和管理数据的成本和时间。·智能性:为开发者提供更加全面的平台。3 系统可行性分析3.1 结构的选择(B/S)随着科技的发展,越来越多的层次被划分出来 。目前,在Internet应用系统的体系结构,将业务逻辑划分成一个单一的层,作为网络服务器。 用户通过浏览器提交的表单由它进行分析,并得出对数据库服务器进行的查询,交给数据库服务器去执行并得到查询的结果,最后由

15、Internet服务器用标准的HTML语言反馈回浏览器,称为B/S(Brother/Server)结构。计算机技术发展日新月异,传统的 C/S结构,即Client/Server(客户机/服务器)结构,是大家熟知的软件系统体系结构,通过将任务合理分配到Client端和Server端,降低了系统的通讯开销,可以充分利用两端硬件环境的优势。而B/S结构,即Browser/Server(浏览器/服务器)结构,是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户界面完全通过WWW浏览器实现,主要事务逻辑在服务器端实现,但是一部分事务逻辑在前端实现,从而形成了所谓3-

16、tier结构。B/S结构利用不断成熟和普及的浏览器技术实现原来需要复杂专用软件才能实现的强大功能,并节约了开发成本,是一种全新的软件系统构造技术。传统的CS体系结构虽然采用的是开放模式,但这只是系统开发一级的开放性,在特定的应用中无论是Client端还是Server端都还需要特定的软件,没能提供用户真正期望的开放环境;BS结构则不同,它的前端是以TCPIP协议为基础的,企业内的WWW服务器可以接受安装有Web浏览程序的Internet终端的访问,作为最终用户,只要通过Web浏览器,各种处理任务都可以调用系统资源来完成,这样大大简化了客户端,减轻了系统维护与升级的成本和工作量,降低了用户的总体拥

17、有成本。3.2 技术可行性我们从前、后台开发工具的选择对技术进行分析。ASP.NET是由微软公司开发的,它缩短了开发周期,为从业人员提供了灵活性使其远远超过了其他开发软件。同时与网络有着密切联系,通过Web浏览器显示操作数据。SQL Server 2008支持分布式事务处理和开发工具,有很好的支持,为企业提供数据库项目的解决方案。3.3 经济可行性在系统运行后的维护是非常重要的,并且其维护的费用还是很大的,如果是一个Windows Form的管理系统,要对数据的维护将要付出很大的代价,而且它的维护人员也比较的多和分散,因此对数据库的操作在各个时间段都是很频繁的,人也很容易出现疲劳,问题也就会比

18、较容易发生。但是我们现在用基于Web的B/S模型,我们修改数据的操作只在服务器端就可以了,而且它的人员也比较集中,对数据的修改只是在某段时间内比较的频繁,过了这个时间后就较轻松,所以人的精力也比较集中,那么数据库的操作也就不怎么会出现问题,因此在这方面的维护费用也大大的减少。3.4 操作环境及运行环境软件环境:操作系统:Windows Server 2003, 数据库:SQL Sverver 2008,前台环境:Visual Studio.NET(C#)硬件环境:至少在80MB以上的硬盘空间,至少256 MB内存,显示1366×768或更高的分辨率 Web服务器:IIS 客户端浏览器

19、:IE 6.0或更高的版本4 总体设计4.1 项目规化4.1.1 总体思想本系统主要设计思想是:计算机图书馆管理的功能,添加,删除,修改,查询等功能。系统的设计方法是结构化实际方法,系统开发使用C#语言,用户可以清晰的了解图书馆内的情况。4.1.2 图书借阅系统内容视图的查询定义,以及视图和查询的SQL语句中定义的,它们有许多相似之处,但也有许多差异。存储:视图能够遏制使用用户连接数据库中的基表,并且要求用户只可经过视图操纵数据。这种方法可以保护用户和应用程序不受某些数据库修改,还可以保护安全数据表。排序:你可以任何查询结果排序,但只有当视图包括分类视图顶部的条款。加密:加密可以查看,但没有加

20、密的查询。 视图能够利用CREATE VIEW语句,下面为语法展示示例:CREATE VIEW view name (column,.n)WITH<view_attribute>,.nASSelect_staement参数说明如下:CREATE VIEW:视图的名称column:为视图定义的字段名称。如果没有指定,则字段将获得与select语句中字段相同的名称。但对于以下的情况则必须指定字段名:从视图中的多个表生成的,表中的列名称数据。当列从算术表达式得到的,功能或常数的导数。当一列是从不同的源表中的列名称中的视图。利用CREATE VIEW语句建立视图时,只要在检索分析器中写入对

21、应的选择语句便可。创建一个视图的程序是在桌子上的书的数量信息的类型是由相应的文本替换。 4.2 系统功能结构图系统功能结构如图4.1所示:图4.1 系统结构5 公共类设计在开发过程中,经常会用到一些公共模块,如数据库连接及操作的类、字符串处理的类等,因此,在开发系统前首先需要设计这些公共模块。下面将具体介绍图书管理系统中所需要的数据库操作类等。数据库操作类用来完成数据库的连接操作,以及数据库的查询、添加、删除和修改操作。这几种操作编写到一个公共类里,可以减少重复代码的编写,有利于代码的维护。在dataoperate类这种一共定义了5个方法,下面分别对这几个方法进行讲解。首先在命名空间区域引用u

22、seing systemData.Sqlclient空间。ExecSQL()方法用来添加、插入、删除数据。此方法返回一个布尔型值,用来表示添加、插入、删除数据是否成功,执行成功返回true,否则返回false。调用此方法时应传入string类型的参数,此参数表示所需要执行的代码语句。关键代码如下:public static bool execSQL(string sql) SqlConnection con = createCon(); con.Open(); SqlCommand com = new SqlCommand(sql, con); try com.ExecuteNonQuery(

23、); con.Close(); catch (Exception e) con.Close(); return false; return true;SeleSQL方法用来查找数据是否存在。此方法返回一个布尔型值,用来表示是否查找到数据,如查找到数据则返回true,否则返回false,调用此方法应传入string类型的参数,此参数要执行sql语句。关机代码如下: public static int seleSQL(string sql) SqlConnection con = createCon(); con.Open(); SqlCommand com = new SqlCommand(sq

24、l, con); try return Convert.ToInt32(com.ExecuteScalar(); con.Close(); catch (Exception e) con.Close(); return 0; Getdataset方法用来查找并返回多行数据。此方法返回一个dataset数据集。在此调用方法应传入两个string类型的参数,第一个参数表示要执行sql语句,第二个表示表名。Getrow方法用来查找并返回一行数据,此方法返回一个sqlcommand对象,在调用此方法应传入一个string类型的参数,此参数表示所要执行的sql语句。关键代码如下:public stati

25、c SqlDataReader getRow(string sql) SqlConnection con = createCon(); con.Open(); SqlCommand com = new SqlCommand(sql, con); return com.ExecuteReader();6 数据库设计6.1 数据库概要说明数据库设计是合理的,在很大程度上影响数据库的安全,效率的完整性,程序运行。本应用程序选用SQL Server 2008数据库,定义名称“db_tsrj”,此中包括的数据表。接下来,我将叙述数据的概要说明、数据表的关系图以及表的结构。从用户角度出发,我设计了一个数据

26、表的树形结构,能够使用户对数据库中的数据一目了然,如图6.1所示:图6.1 数据表结构图6.2 数据库概念设计通过对系统的需求分析,系统设计和过程来确定系统的功能结构,利用规划系统中的实体的数据库对象,下列规定:在系统的管理中只有指定的影虎可以管理系统只,由于用户的不同,他们的权限也不同。管理员的权限信息E-R如图6.2所示: 图6.2 权限设置信息实体E-R图图书借阅信息实体,所有图书信息存储条件,准确记录每本图书的借阅情况。文件要求信息实体的E-R图如图6.3所示:图6.3 图书借阅实体E-R图图书馆的图书分类通常是不同类型的书籍放在适当的类型的书架。该实体贮存本书架上图书全部信息,该实体

27、E-R图如图6.4所示: 图6.4 图书书架E-R图不同的书,信息不同。关于这些书的更多信息的记录,便于图书的分类和查询,图书信息实体存储的所有信息关于这本书的时候,书的信息E-R图,如图6.5所示。图6.6 图书信息实体E-R图将有不同类型的图书馆,图书馆分类法,为了避免混乱,建立物理书所需的信息类型,类型信息的书店。这种实体类型的信息E-R图如图6.7所示:图6.7 图书类型实体E-R图当一个读者的借阅书籍,读者的信息需要做记录,以方便书籍的归还和图书的查询。该信息实体,为全部读者信息库。实体E-R图如图6.8所示:图6.8 读者信息实体E-R图读者群,将有一个不同的类别,如图书馆的读者可

28、能是一个老师,学生,或公众,等等。因此,观众有效的分类是关键。类型的实体,读者类型是用来存储信息的。实体E-R图,如图5.9所示:图6.9 读者类型实体E-R图当系统管理员登录的图书管理系统,需要经过表单认证管理员的登录名、密码,认证成功后才能进入系统的主页。管理员信息E-R图如图6.10所示:图6.10 管理员实体E-R图6.3 数据逻辑结构设计在设计完数据库实体E-R图之后,需要根据实体设计数据表结构。下面给出主要的数据表的数据结构和用途。字段名数据类型长度是否主键描述userNamevarchar80否管理员名称Systemcheckbit2否系统设立readermanagebit1否读

29、者管理documentmanaebit1否图书管理bookborrowbit1否图书借还systemquerybit1否系统查询表6-1 管理员权限设置表字段名数据类型长度是否主键描述Bookcodevarchar80是图书条码Documentnamevarchar80否图书名booktypeint6否图书类型Bookshelfcaseint6否书架种类Publisher Namevarchar80否出版社称号authorvarchar80否作者名pricemoney8否图书价格Lendingsumint6否借阅次数表6-2图书信息表7 模块设计7.1 用户管理模块在“管理员”按钮,输入管理员

30、设置页。此页显示管理员特权和名称的所有。该模块运行效果如图7.1所示:图7.1 管理员权限设置界面单击“增添管理员”按钮,呈现相应的增添输入框,在此输入框能够输入要添加管理员消息,新增添的管理员的权限为默认拥有系统查询和图书借还,图7.2所示:图7.2 添加管理员界面单击“权限设置”按钮,弹出显影的设置权限对话框,在此对对管理员的权限进行设置即可。如图7.3所示:图7.3 管理员权限设置界面 用户模块主要包括用户添加,删除,设置权限,并查看管用户列表。7.2 图书信息管理模块 图书管理模块主要包含对图书的增添、删除、修改、查。点击“添加”或“修改”按钮会弹出修改或添加页的图书信息对话框,如图7

31、.5所示:图7.5 添加或修改图书信息界面7.2.1添加或修改图书页面的实现过程设计步骤如下:“(1)新的Web网站,命名为addbookinfo.aspx,用于添加或修改表的文档信息(2)在Web表单中添加,用于页面布局”。方法:“基于传入的管理页面的账面价值确定图书信息的当前操作的页面加载事件”。例如,出现在书的信息是来临前是增加值增加;前到来的信息修改书的信息是通过updet。判断出图书信息的操作后执行不同的操作实现其功能:添加新的图书信息调用barcode()方法产生新的图书信息,修改图书信息执行bindBookInfo()方法打印图书信息。关键代码示例如下: id= Request.

32、QueryString"ID".ToString(); /获得图书的运作模式 if (!IsPostBack) /判别是不是初次加载 bindBookType(); /自定义方法绑定图书类型 bindBookcase(); /自定义方法绑定书架 if (id != "add") /确定是否添加 this.Title = "更新图书信息" bindBookInfo(); /调用自定义方法显示图书信息 else this.Title = "增添图书" txtBarCode.Text = barcode(); /调用自定

33、义方法生成条形码 通过自定义的bindBookinfo()方法处理书籍管理页面传入的信息,读出一条图书记录并在页面显示出来,代码如下: string sql = "select * from tb_bookInfo where bookBarCode='" + id+"'" SqlDataReader sdr = dataOperate.getRow(sql); sdr.Read(); /读取一条记录 txtBarCode.Text = sdr"bookBarCode".ToString(); txtBookName.

34、Text = sdr"bookName".ToString(); ddlBookType.SelectedValue = sdr"bookType".ToString(); /显示图书类型信息 ddlBookcase.SelectedValue = sdr"bookcase".ToString(); /显示书架信息 txtBookConcern.Text = sdr"bookConcern".ToString(); /显示图书出版社信息 txtAuthor.Text = sdr"author".

35、ToString(); txtPrice.Text = sdr"Price".ToString(); /显示图书典籍价格讯息 利自定义bindBookType()方法和bindBookcase()方法,由于这两方法类似,这里列出bindbooktype()方法的代码,实现代码如下: public void bindBookType() string sql = "select * from tb_bookType" /获取所有图书类型 ddlBookType.DataSource = dataOperate.getDataset(sql, "t

36、b_bookType"); ddlBookType.DataTextField = "TypeName" /文本设置DropDownList控件 ddlBookType.DataValueField="TypeID" ddlBookType.DataBind(); 自定义barcode()方法用来将日期中的年、月、日、小时、分钟转化成字符串。 public string barcode() string date = DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString() + D

37、ateTime.Now.Day.ToString(); /获取当前时间的小时,分钟转换成字符串类型用于表示条形码 string time = DateTime.Now.Hour.ToString() + DateTime.Now.Second.ToString() ; return "10"+date +time; /返回一个位的条形码 通过保存功能中的click事件,来判断用户对系统的操作,进而执行SQL语句。例如增添新的书籍执行插入语句,修改书籍信息执行更新语句。关键示例代码如下: /判断当前对图书信息的操作protected void btnSave_Click(ob

38、ject sender, EventArgs e) string bookBarcode = txtBarCode.Text; /获取图书条形码信息 string bookName = txtBookName.Text; /获取图书名称信息 string bookType = ddlBookType.SelectedValue; string bookcase = ddlBookcase.SelectedValue; string bookConcern = txtBookConcern.Text; /获得图书出版信息 string author = txtAuthor.Text; /获取图书

39、作者信息 string price = txtPrice.Text; /获取图书价格信息 string sql = "" /判断当前对图书信息的操作 if (id = "add") sql = "insert into tb_bookInfo(bookBarCode,bookName,bookType,bookcase,bookConcern,author,price) values('" + bookBarcode + "','" + bookName + "','

40、;" + bookType + "','" + bookcase + "','" + bookConcern + "','" + author + "'," + price + ")" else sql = "update tb_bookInfo set bookName='" + bookName + "',bookType='" + bookType + &quo

41、t;',bookcase='" + bookcase + "',bookConcern='" + bookConcern + "',author='" + author + "',price=" + price + " where bookBarcode='" + bookBarcode + "'" if (dataOperate.execSQL(sql) /判断来添加或修改成功 Response.Write(&q

42、uot;<script language=javascript>alert('成功添!');window.opener.location.href=window.opener.location='bookInfoManage.aspx'window.close();</script>"); else RegisterStartupScript("", "<script>alert('添加失败!')</script>"); 7.3 图书借阅模块图书借还

43、概述该模块主要包括的借阅、归还。选择图书的借还”或“图书的借阅”按钮,进入相应的界面,单击图书的信息中“借阅”实现借阅功能。图书的借阅界面运行效果如图7.6所示:图7.6 图书借阅界面选择“图书归还”,进图书的归还界面。在此输入框填写图书的信息,显示借阅用户的信息和借阅图书信息。单击“归还”按钮实现归还的功能。该功能运行效果如图7.7所示:图7.7图书归还界面图书借还页面的实现过程:设计步骤 (1)在网站上创建一个web表单,命名bookborrow.aspx,用于书图书的借阅。(2)在web表单添加一个表用于布局表布局。 图书的借阅,首先判断是否有管理员登录,如果登录再接着判断该管理员是否拥

44、有相应的权限,如果不拥有,弹出提示消息对话框并跳转到首页,关键代码如下: if (Session"userName" != null) /判别用户是不是登录 if (!getSet() /判断是否有权 Response.Write("<script>alert('你没有权限');location='index.aspx'</script>"); else Response.Redirect("entry.aspx"); /返回到登录页面 利用bindReaderInfo()方法,

45、呈现读者的目前借的图书的本数、用户信息,下面展示具体的代码: public void bindReaderInfo() string readerBarCode = txtReaderBarCode.Text; /获取读者条形码 string readerSql = "select * from tb_readerInfo where readerBarCode='" + readerBarCode + "'" SqlDataReader sdr = dataOperate.getRow(readerSql); if (sdr.Read(

46、) /读取一条记录 txtReaderName.Text = sdr"readerName".ToString(); /显示读者姓名 txtReaderSex.Text = sdr"Sex".ToString(); /显示读者性别 txtCertificateType.Text = sdr"certificateType".ToString();/显示证件类型 txtCertificate.Text = sdr"certificate".ToString(); /显示证件号 / /创建与读者类型编号记录读者类型的S

47、QL语句查询表 string readerTypeSql = "select * from tb_readerType where id=" + sdr"readerType".ToString(); SqlDataReader typeSdr = dataOperate.getRow(readerTypeSql); typeSdr.Read(); /读取一条记录 txtReaderType.Text = typeSdr"type".ToString(); /显示读者类型 int borrowNum = Convert.ToInt32

48、(typeSdr"num"); /获取可借图书总数 string selSql = "select count(*) from tb_bookBorrow where readerBarCode='" + readerBarCode + "' and isReturn ='0'" int alreadyNum = dataOperate.seleSQL(selSql); /获得总共借了多少书 txtNum.Text = Convert.ToString(borrowNum - alreadyNum);

49、/显示可以借阅数isSum=1; 读者需要输入信息库,请单击“搜索”按钮将显示信息,在“参考图书”单击事件来确定当前用户是否可以借,如果可以借阅判断用户是否输入用户的信息,代码如下:protected void btnBookSearch_Click(object sender, EventArgs e) if(isSum>0)if (Convert.ToInt32(txtNum.Text.Trim() > 0) /判断是否能阅读 if (txtBookBarCode.Text.Trim() != "") string bookBarCode = txtBook

50、BarCode.Text; /获取图书条形码 string sql = "select * from tb_bookInfo where bookBarCode='" + bookBarCode + "'" DataSet ds=dataOperate.getDataset(sql,"tb_bookInfo"); if(ds.Tables"tb_bookInfo".DefaultView.Count>0) gvBookBorrow.DataSource = ds.Tables"tb_

51、bookInfo".DefaultView; /获得数据源 gvBookBorrow.DataKeyNames = new string "bookBarCode" ; /设置主键 gvBookBorrow.DataBind(); /绑定GridView控件 图书的归还功通过Gridview控件中selectindex事件实现,selectindex事件用来更新图书的借阅,实现代码如下:protected void gvBookBorrow_SelectedIndexChanging(object sender, GridViewSelectEventArgs e) /获取选中图书条形码 string bookBarCode = gvBookBorrow.DataKeyse.NewSelectedIndex.Value.ToString(); /创建SQL语句中使用/内加入连接条件本式号码,查询条件的记录图书条码一致 string sql

温馨提示

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

评论

0/150

提交评论