毕业论文(设计)图书馆管理信息系统.pdf
《毕业论文(设计)图书馆管理信息系统.pdf》由会员分享,可在线阅读,更多相关《毕业论文(设计)图书馆管理信息系统.pdf(58页珍藏版)》请在咨信网上搜索。
摘 要本文首先阐述了基于,NET Framework平台的图书馆管理信息系统的开发背 景以及其实践意义,其次说明了图书馆管理信息系统的功能以及相比同类软 件的创新之处。然后就图书馆管理系统开发中所使川的一些的技术进行研究 探讨。主要针对数据库的设计技术、存储过程技术、ADO.NET技术以及川SQL Server.NET Framework数据提供程序访问SQLserver2000数据库技术四个 方面进行了研究。最后还附上了图书馆管理信息系统的安装说明、简单使用 说明和一些通川性的经典代码。笔者化了大量的时间川于程序设计,这也是 笔者工作的重点,所开发的软件具有实用价值,所编写的代码对.NET程序员 也有很好的参考性。在系统的开发过程中,笔者深刻体会到了.NET平台的强 大性、优越性以及存储过程在提高数据访问性能和增强数据访问安全性上所 起到的重要作川。止匕外,对于关系代数在数据库科学里的应川,笔者在编程 过程中也做了一定的研究。关键词:数据库;.NET Framework;ADO.NET;存储过程;SQL Server.NET Framework 数据提供程序ABSTRACTThe Management Information System of Library using.NETThis paper expatiate the Management Information System of Library using.NET,its background and the significance it has when application.Then,it presents the function of the Management Information System of Library and also discuss some technologies using when develop this system.Especially,it discuss the design technology of database,Stored Procedure,ADO.NET and control SQL Server 2000 using SQL Server.NET Framework Data Provider.In the end,it details the setup introduction and the users guide for the Management Information System of Library and also some classic code.The writer used a lot of time to design the program which is the keystone of all the works.The writer realized the importance of Stored Procedure for better performance and improving the security and also the advantage of.NET when programming.Moreover,the writer also investigates the applications of relational algebra in database science when programming.Keywords:Database;NET Framework;ADO.NET;Stored Procedure;SQLServer.NET Framework Data Provider目 录摘要.1ABSTRACT.2!系统开发背景以及主要内容阐述.42系统概述.52.1系统提供的功能.52.2系统一些新特点.73系统设计过程及原理阐述.93.1数据库设计.93.1.1 数据库设计重点.133.1.2规范化设计.133.1.3数据库完整性设计.143.1.4数据库的保护.153.2使用存储过程.153.3.NET Framework 平台概述.173.4 ADO.NET 技术探讨.183.4.1 ADO.NET 概述.183.4.2 ADO.NET访问数据的基本方法.193.4.3 使用 ADO.NET 访问 SQLserver2000.204 软件使用说明.244.1环境要求.244.2软件的安装.245程序源代码经典部分选录.265.1存储过程.265.2 winForms 代码选求.295.3 ASP.NET WebForms 代码选录.42毕业设计成果.45致谢.46参考文献.47附录英文翻译.48附录二英文原文.531系统开发背景以及主要内容阐述随着当今社会的迅猛发展,知识变的越来越重要,终身学习的观念 已经深入人心。而图书馆这传统的获取知识的场所,它的地位也变的 越来越重要。而图书馆的管理方法也更新了很多次。从最初的手工管理到现 在的计算机管理等等。笔者经过调查些图书馆的现状,发现各图书馆使用的管理系统基本都 是几年前的产品,大多使用VB+ADO方式,web平台也主要使用asp或php 开发。开发技术比较陈旧,功能上也有一些不足。而且以前的VB面向对象 化编程(OOP)支持的不是很好,软件维护起来也相当困难。Microsoft.Net技术的推出,将计算带入一个新时代。现在.Net已经引起 业界广泛的关注。.Net是专门为程序员设计的、功能强大的开发工具,利用 该工具能够构建各类应用程序。.NET可以说是博大精深,蕴含者丰富的新技 术新思想。.Net使应用程序的功能更强大,使系统开发更简单,使系统的部署更轻 松。而.NET包含的统一的类库,统的数据结构使得各类编程模型更统。笔者个人对.NET技术非常感兴趣,在这方面也做过大量的研究。又鉴于 当前流行的图书馆管理信息系统技术都比较陈旧,就萌发了用.NET开发个 新图书馆管理信息系统的想法。很高兴它成为为我毕业设计研究的课题。系统的实践意义有两个:1开发出的系统功能强大,可以应用于各大中 型图书馆使用,可以根据客户的要求添加功能。2由于.NET推出的时间不 算很长,所以网上很少有用.NET开发的公开源代码的大型系统。本系统可 以给广大的.NET编程爱好者一些参考。本文理论部分主要针对数据库设计技术、存储过程技术、ADO.NET技术 以及用SQL Server.NET Framework数据提供程序访问SQLserver2000数据 库技术这四个方面进行了研究和探讨。图书馆管理信息系统的每一行代码都是精雕细琢出来的,从里面体现 出.NET的强大性以及优越性。笔者在编程过程中查阅了大量的书籍,参考 了大量MSDN以及各大网站的技术文章,全部代码约有一万两千行左右。笔者为此做了大量的工作。在系统的开发过程中,笔者深刻体会到了.NET平台的强大性以及优越性 以及存储过程在提高数据访问性能和增强数据访问安全性所起到的重要 作用。2系统概述图书馆管理系统基于Microsoft公司最新的.NET Framework平台构建,编码的基本语言是VB.NET开发过程中统使用.NET框架的数据类型、方 法,抛弃了原来vb6的内容。充分体现了.NET的优越性,使软件易安装部署、易维护。系统使用ADO.NET+SQLserver2000模式,数据层基本都基于存储过程构 建,使得速度更快、安全性更高。2.1系统提供的功能:针对图书馆管理员设计的部分:管理部分是一个基于WinForms的windows窗体应用程序,主要为图书馆 管理人员提供服务。截图如下:管理部分提供以下功能:1.用户功能。(提供登陆验证、用户切换,管理员锁定系统等功能。)2.事务处理图书证挂失管理。(可以针对读者情况对图书证进行挂失,以防冒借。)借书、还书管理。(实现巳常图书借阅及归还。)3.数据管理图书、读者管理。(实现图书、读者的添加,删除,编辑。)4.综合查询统计。(可以根据不同条件的组合检索图书或读者以及借阅数 据,对检索出来的数据可提供多种方式的操作:导出为Excel格式、pdf 格式、或导出为水晶报表以便打印等。)5.系统设定。(设置些图书馆基本规则,如读者类别、图书类别、读者借 阅最大天数等,此外设定数据服务器信息也在这里。)6.帮助功能。(提供个chm帮助文档,帮助图书馆工作人员快速适应本系 统,此外还提供在线问题反馈,软件更新提示等功能。)针对读者设计的部分:由于读者的多元性和位置不确定性,该部分采取基于B/S的方式实现。代码使用ASP.NET编写,利川ASP.NET的优点,可以自动适应多种客户浏览 器。截图如下:读者只需要有一台联网的计算机和一个常用WEB浏览器。就可以轻松的 进行图书查询、更改个人信息、向图书馆反馈信息等。该部分主要提供以下 功能:1.登陆验证。(防止读者信息被盗用。)2.图书查询。(个综合的图书查询系统,可以方便的使读者查到需要的书 籍。)3.读者个人信息查询以及管理。(可以适当的更改些读者个人的资料,如 email等,此外在这里还可以查到读者当前的、所有的借阅记录等。)4.信息服务。(定期公布超期的读者列表,以及新到的图书等信息。)2.2系统创新部分以及一些特点1)首先本软件是基于.net平台构建的,这是以前从未有过的。2)软件很好的解决了一个关于时间冲突的问题。时间冲突问题阐述如下:图书馆管理信息系统是个网络版的系统,其运作方式是有一台主数据 服务器、还有若干个负贡各项功能的客户端。举个例子:图书馆可能有若干 台客户端电脑用于还书管理、还可能有若干台用于借书管理、还可能有若干 台用于图书、读者信息维护等。因为每台电脑的系统时间可能会发生改変,这就会造成数据错误。比如张某于2月10日在负贡借书的A号电脑上借了 一本书,可能A的系统时间被误设定为2月5 R。如果张某的最大借书时间 为个月,则他应该还书的时间就被误设定为3月5巳。笔者在开发过程中也参考了一些相关的图书馆软件,发现有的系统根本 没有注意到这个问题。有的是在软件客户端设定一个时间校准的提示或者干 脆就手工输入时间。这样无疑给操作人员增加了负担,而且校准还不一定正 确。在本系统中,所有的时间都是基于服务器时间的。即软件中必要的与时 间有关的操作。都采用标准的T-SQL函数GETDATE0从数据服务器返回时 间。这就避免了功能上的错误,也避免了给操作人员带来的不必要负担。3)川ADO.NET的开放式并发进行并发控制在图书馆系统的使川过程中,可能同时有多台客户机在操作同一个数据 行。比如负責修改图书信息的A号电脑正在修改编号为XXX的书籍,而编号 为B的电脑正试图删除编号为XXX的书籍。这样做肯定会有一些冲突,这就 要讨论并发控制。当多个川户试图同时修改数据时,需要建立控制机制来防止一个川户的 修改对同时操作的其他川户所作的修改产生不利的影响。处理这种情况的系 统叫做“并发控制”。在以前的编程模型中,大多使川保守式并发控制,即在从获取记录直到记 录在数据库中更新的这段时间内,该行对川户不可用。ADO.NET的数据集 DataSet是个断开式的模型,不适合保守式并发。在我所编写的图书馆管理 信息系统中,使用了开放式并发控制(参见附录中我翻译的英文文章),即只有当 实际更新数据时,该行对其他用户不可用。更新将在数据库中检查该行并 确定是否进行了任何更改。如果试图更新已更改的记录,则将导致并发冲突。4)全部数据层都基于存储过程构建使用存储过程,可以减少网络流量,提高程序的速度以及安全性。具体内容请 参见笔者文章里对存储过程的研究讨论。3系统设计过程及原理阐述管理信息系统(以下简称MIS)服务于现代化的企事业管理,是提供企 事业工作效率和经济效益的计算机网络系统。管理信息系统涉及的因素非常多、非常复杂,开发起来具有一定的难度。如果掌握了一套行之有效的开发方法,以及把握好MIS开发中的重点,开发 中就可以大量的解约人、财力等。我个人经过大量的研究、实践。认为在MIS开发中,首先数据库技术是 MIS开发中的重要技术。数据库开发成败直接影响到整个MIS的开发。所以,构架一个优秀的MIS 一定要有好的数据库设计。本文讨论的重点就是数据库 设计理论。主要是两方面,是基本的数据库理论;二是.NET平台上的 ADO.NET数据访问技术。其次,在MIS开发过程中,所使用的开发工具和应开发应川程序的种类 也很重要。这里就不能不提到Microsoft公司的.NET Framework平台。.NET Framework是种新的计算平台,它简化了在高度分布式!nternet环境中 的应川程序开发。它提供个一致的面向对象的编程环境、提供个将软件 部署和版本控制冲突最小化的代码执行环境等等非常优秀的特点。在以后介 绍开发过程中将简单阐述。再次,界面的设计也是MIS的个重点。界面一定要具有易学性及易使 川性。在当今流行的程序设计中,设计包含川户界面的应川程序时有两种选 择:Windows窗体和Web窗体。两者在开发环境中都具有完全的设计时支 持,并且可以提供丰富的用户界面和高级应用程序功能以解决业务问题。要 根据应用程序的具体功能来选择到底开发何种应川程序。我所开发的这个图 书馆管理信息系统是这两者的结合。在管理功能方面,我使川了传统的 WinForms技术。而在读者使川方面的功能模块,是川webForms开发的。3.1 数据库设计数据库技术是20世纪60年代后期产生何发展起来的项计算机数据管 理技术,现广泛运用与各种信息处理以及科学研究上。数据库技术已经成为 当今时代非常重要的技术。当今流行的数据库系统主要是以关系数据库为代表的第二代数据库系 统。当今流行的大型数据库管理系统主要有SQL Server、Oracle Sybase 等。图书馆管理信息系统选用的是SQLserver2000数据库管理系统。选择它的原因有:SQLserver2000功能强大,能完整实现数据库系统的 所有功能。再者,我们选川的系统开发平台是微软公司的.Net Framework平 台,它很好的支持了其公司的数据库产品SQLServer2000,而且为了加快数 据处理速度,.NET Framework平台中还专门有一个SQL Server数据提供程 序(System.Data.SqlClient)o图书馆管理信息系统使用SQLserver2000数据库管理系统,最后设计的 数据库表如下:数据库名称lib2004 数据表有:管理员表(manager)名称类型长度说明Man_idnvarchar50管理员账号(主键)Manpwdnvarchar12管理员密码(not null)Manpurviewnvarchar10管理员权限(not null)图书乳言息表(liblnfo)存放图书馆信息,只有一条记录字段名称类型长度说明NoInt4等于1Libnamenvarchar50图书馆名称Liborgnvarchar50隶属单位Libtelnvarchar50电话号码LibadrNvarchar100详细地址图书表(book)字段名称类型长度说明BookidInt4图书编号(自动增长)unique约束Bookcodenvarchar50条码号(主键)Booknamenvarchar50图书题名(not null)Bookpubnvarchar50出版社Bookisbnnvarchar50ISBN 号Bookpubdatesmalldatetime4出版日期Bookauthornvarchar50图书作者BookpageInt4图书页数Bookpricemoney8图书价格Bookadddatesmalldatetime4入馆日期Bookplacenvarchar50存放位置(外部键 place.Book_place)Booksortnvarchar50图书分类(外部键 booksort.Book_sort)Bookremarksnvarchar4000备注读者表(au)字段名称字段类型长度说明Auserialint4读者序号(自动增长)unique约束Au_idnvarchar50借书证号(主键)Aunamenvarchar50读者姓名Au_sexnvarchar2读者性别(只能为男或女)Au_sortnvarchar50读者类别(外部键 ausort.Au_sort)Auadddatesmalldatetime4添加日期Auadrnvarchar50读者地址Aupasswordnvarchar12读者密码(12位)Auemailnvarchar50读者emailAuremarksnvarchar4000读者详细资料借阅情况表(borrow)字段名称字段类型长度说明Numberint4编号(自动编号主键)Au_idnvarchar50读者编号(外部键一皿.Au_id)bookcodenvarchar50图书编号(外部键book.book_code)Borrowdatesmalldatetime4借阅日期(not null)Shoulddatesmalldatetime4应归还日期(not null)Returndatesmalldatetime4归还日期forfeitmoney4罚款金额图书存放位置(place)字段名称字段类型字段长度说明Bookplacenvarchar50存放位置(主键)Placeremarksnvarchar4000存放位置具体说明图书分类(booksort)字段名称字段类型字段长度说明Booksortnvarchar50图书类型(主键)Sortremarksnvarchar4000分类具体说明读者分类(ausort)字段名称字段类型长度说明Au_sortnvarchar50读者类型(主键)AuborrowdaysInt4最长借阅时间AuborrowbooksInt4最大借阅图书数借书证挂失(aulost)字段名称字段类型字段长度说明Lostidnvarchar50挂失的读者编号主键Lostdatesmalldatetime4挂失时间图书损坏赔偿(booklost)字段名称字段类型字段长度说明NumberInt4编号(自动增加,主键)Au_idnvarchar50丢失图书的读者编号Booknamenvarchar50图书名称Bookisbnnvarchar50ISBNLostmoneyMoney8赔偿金额数据库表关系如下:lib2004数据库表关系列表bookaulostg Lost_i d Lost_dateausort團Au_sortAu_borrowdaysAu bo r rowbook s I工Au_serial Au_id Au_name Au_sex Au_sort Au_adddate Au_adr Au_password Au_emailbooklostNumber Au_id Book_name Book_isbn Lost mone7Book_id Book_code Book_name Book_pub Book_isbn Book_pubdate Book_author Book_paee Book_price Book_adddate Book_place Book_sort目 Book_sortSort_remarksco一!booksort二!borrowNumber Au_id book_codeBorrowdat e Should,date Return_date forfeit二!Managerg(Man_id_ Man_pwdMan purviewplace二!8 Book_placePlace remarks13I3zJw图3-1以下我们讨论数据库设计方法时均以图书馆管理信息系统数据库(lib2004)为例.3.1.1 数据库设计重点(1)数据规范化(2)数据完整性(3)数据库的保护3.1.2规范化设计良好的数据规范可以减少数据冗余和一些插入异常和删除异常。使关系 模式尽量满足3NF。规范化设计的内容比较多,在这里就不阐述。请详 细体会lib2004数据库中每个表的构建。如在这方面想有进步研究的化,请参阅些数据库原理与技术方面的书籍。3.1.3数据库完整性设计数据库完整性共分三类(1)实体完整性规则实体完整性规则是指主关键字的任何部分不能为空值比如在图书表(book)中条码号(Book_code)是主关键字,其值就不能够为空。主关键字不一定由一个字段组成,可以是多个字段的组合。(2)引川完整性,又称参照完整性,主要是描述存在关系间引川时,不能引 用不存在的元组.图书表(book)字段名称类型长度说明BookidInt4图书编号(自动增长)unique约束Bookcodenvarchar50条码号(主键)Booknamenvarchar50图书题名(not null)bookBook_Book_Book_i d code nameBook_pub Book_i sbn Book_pnbdat e Book_anthor Book_pa巴e Book_pri ce Book_adddat e Book_place Book sortbooksoz7Book_sort Sort.remarks图3-2比如在图书分类表(booksort)与图书表(book)之间的关系(如图3-2),这是个典型的一对多关系。关系的主键方是booksort表中的 Book_sort(图书类别)字段,关系的外键方是book表中的Book_code(图书类 別)字段。其引用完整性就是book表中的每一本书的图书类别Book_sort或者为空 值,或等于图书分类表(booksort)中某行的Book_sort值。通俗的说法就是图书不能属于个没有定义的类别。(3)川户自定义完整性这是种比较有针对性的完整性,由具体环境决定。例如:在读者表(au)中,读者的性别字段(Au_sex)的值必须为男或女。这就是一条川 户自定义完整性规则。这类完整性在SQLserver2000中的实现就是对相关表建一个check约束 即可。比如在au表中建立一个CK_au约束,其约束表达式为(Au_sex=男or Au sex:二女),就实现了值必须为男或女的用户自定义完整规则。3.1.4数据库的保护数据库的保护主要内容是数据库的备份恢复、数据的事务性、以及如何 进行并发控制。其中备份和恢复容易理解,这里主要阐述其它两项。(1)事务是组操作序列.但是从川户的角度看来,事务是个不可分割 的操作序列。事务中的操作要么都做,要么都不做.事务不应该丢失,不应该 被分割完成。举个例子,从某个银行帐户向另个帐户转入资金。这个过程分两步,首先将资金从个帐户扣除,然后转入另帐户。这个过程中,如果资金扣 除以后由于些因素导致失败。则资金就从个帐户上扣除但没有转到另 个帐户上,就导致了两个用户都失去了这笔资金。如果将这两步组成一个事 务,充分利用事务的共进共退性就可以避免这一点。SQLserver2000事务语句主要包括BEGIN TRANSACTION(开始个事 务),COMMIT TRANSACTION(提交事务),ROLLBACK TRANSACTION(冋滚事务)。数据库并发控制:在图书馆管理信息系统中,同时可能有多个客户 端在进行数据操作。当多个川户试图同时修改数据时,需要建立控制机制来 防止一个用户的修改对同时操作的其他用户所作的修改产生不利的影响。处 理这种情况的系统叫做“并发控制”。处理并发的技术主要是封锁。ADO.NET 数据结构基于断开的数据,使用开放式并发。3.2使用存储过程在使用SQL Server 2000创建应用程序时,T-SQL编程语言是应用程 序和SQL Server数据库之间的主要编程接口。使用T-SQL程序时,可用 两种方法存储和执行程序。可以在本地存储程序,并创建向SQL Server发 送命令并处理结果的应用程序;也可以将程序在SQL Server中存储为存储 过程,并创建执行存储过程并处理结果的应用程序。SQLServer中的存储过程与其它编程语言中的过程类似,原因是存储过 程可以:接受输入参数并以输出参数的形式将多个值返冋至调用过程或批处 理。包含执行数据库操作(包括调用其它过程)的编程语句。向调用过程或批处理返冋状态值,以表明成功或失败(以及失败原 因)。使川SQLServer中的存储过程而不使用存储在客户计算机本地的 Transact-SQL程序的优点有:允许模块化程序设计。只需创建过程一次并将其存储在数据库中,以后即可在程序中调川该 过程任意次。存储过程可由在数据库编程方面有专长的人员创建,并 可独立于程序源代码而单独修改。允许更快执行。如果某操作需要大量T-SQL代码或需重复执行,存储过程将比 T-SQL批代码的执行要快。将在创建存储过程时对其进行分析和优 化,并可在首次执行该过程后使用该过程的内存中版本。每次运行 T-SQL语句时,都要从客户端重复发送,并且在SQL Server每次执 行这些语句时,都要对其进行编译和优化。减少网络流量。个需要数百行T-SQL代码的操作由一条执行过程代码的单独语句 就可实现,而不需要在网络中发送数百行代码。可作为安全机制使用。即使对于没有直接执行存储过程中语句的权限的用户,也可授予他们 执行该存储过程的权限。此外在web编程方面,存储过程在安全问题上还可以防止动态SQL漏洞 攻击,笔者经过些调查,发现现在很多网站都有动态sql漏洞。只需要将 密码字段的值设定为(,。1-1)即可使用该网站的管理功能。我所开发的图书馆管理信息系统,无论在windows窗体编程和 Web编程上都使用存储过程与数据库交互。3.3.NET Framework 平台概述图书馆管理信息系统的开发是基于.NET Framework平台的,所有在这里 我们简单的介绍一下.NET Framework平台以及它的一些重要的技术.NET Framework是种新的计算平台,它简化了在高度分布式!nternet 环境中的应用程序开发。.NET Framework旨在实现下列目标:提供个一致的面向对象的编程环境,而无论对象代码是在本地存储 和执行,还是在本地执行但在Internet上分布,或者是在远程执行 的。提供一个将软件部署和版本控制冲突最小化的代码执行环境。提供一个保证代码(包括由未知的或不完全受信任的第三方创建的代 码)安全执行的代码执行环境。提供个可消除脚本环境或解释环境的性能问题的代码执行环境。使开发人员的经验在面对类型大不相同的反用程序(如基于Windows 的应用程序和基于Web的应川程序)时保持一致。按照业标准生成所有通信,Framework的代码可 与任何其他代码集成。以确保基于.NET.NET Framework 杉VB C#C+_公共语言规范(CLS)_ASP.NET windowsPtADO.NET和XML基央库公共语言运行库(CLR)WindowsV is u a l S tu dS N E T图3-3.NET Framework具有两个主要组件:公共语言运行库和,NET Framework类库。公共语言运行库是.NET Framework的基础。您可以将运 行库看作一个在执行时管理代码的代理,它提供核心服务(如内存管理、线 程管理和远程处理),而且还强制实施严格的类型安全以及可确保安全性和 可靠性的其他形式的代码准确性。事实上,代码管理的概念是运行库的基本 原则。以运行库为目标的代码称为托管代码,而不以运行库为目标的代码称 为非托管代码。.NET Framework的另个主要组件是类库,它是个综合 性的面向对象的可重川类型集合,您可以使川它开发多种应川程序,这些应 用程序包括传统的命令行或图形用户界面(GUI)应川程序,也包括基于 ASP.NET所提供的最新创新的应用程序(如Web窗体和XML Web services).NET Framework还具有多编程语言,现在可提供Visual Basic.NET、Visual C#.NET、Visual C+.NET、Visual J#.NET 等。.NET Framework 为几种语言提供了统一的平台和统的编程模型。ADO.NET是组向,NET程序员公开数据访问服务的类。ADO.NET为创 建分布式数据共享应用程序提供了一组丰富的组件。它提供了对关系数据、XML和应川程序数据的访问,因此是.NET Framework中不可缺少的一部分。ADO.NET支持多种开发需求,包括创建由应川程序、工具、语言或Internet 浏览器使用的前端数据库客户端和中间层业务对象。可使川.NET Framework开发下列类型的应川程序和服务:控制台应用程序。Windows GU!应用程序(Windows 窗体)ASP.NET应用程序。XML Web serviceso Windows 服务。我的图书馆管理信息系统中包括Windows窗体和ASP.NET两种取用程序。3.4 ADO.NET技术探讨3.4.1 ADO.NET 概述ADO.NET提供对Microsoft SQL Server等数据源以及通过OLE DB和 XML公开的数据源的一致访问。数据共享使用者应用程序可以使用ADO.NET 来连接到这些数据源,并检索、操作和更新数据。ADO.NET有效地从数据操作中将数据访问分解为多个可以单独使用或一 前后使用的不连续组件。ADO.NET包含用于连接到数据库、执行命令和检 索结果的.NET Framework数据提供程序。您可以直接处理检索到的结果,或将其放入ADO.NET DataSet对象,以便与来自多个源的数据或在层之间 进行远程处理的数据组合在起,以特殊方式向用户公开。ADO.NET DataSet 对象也可以独立于.NET Framework数据提供程序使用,以管理应用程序本 地的数据。3.4.2 ADO.NET访问数据的基本方法ADO.NET结构如下:DataSetDataTableCollectionDataRowCollectionDataColumnCollectionConstraintcollectionDataRelationCollection数据表数据库TXML图3-4从图3-4可以看出,ADO.NET提供了两种访问数据的基本方法:通过 DataReader和DataSet 下面分别讨论这两种方法:1)DataReader:ADO.NET DataReader从数据库中检索只读、只进的数据流。查询结果在 查询执行时返冋,在并存储在客户端的网络缓冲区中,直到您使川 DataReader的Read方法对它们发出请求。使用DataReader可以提高应 用程序的性能,因为一旦数据可川,DataReader方法就立即检索该数据,而不是等待返冋查询的全部结果;并且在默认情况下,该方法一次只在内存 中存储一行,从而降低了系统开销。DataReader提供未缓冲的数据流,该数据流使过程逻辑可以有效地按顺 序处理从数据源中返冋的结果。由于数据不在内存中缓存,所以在检索大量 数据时,DataReader是种适合的选择。2)DataSetADO.NET DataSet是数据的种内存驻留表示形式,无论它包含的数据 来自什么数据源,它都会提供一致的关系编程模型。个DataSet表示整 个数据集,其中包含对数据进行包含、排序和约束的表以及表间的关系。如图3-4所示,个DataSet可以包含多个DataTable,利川数据存储的信 息对它们进行填充.可以在DataSet中包含DataRelation对象,DataRelation对象用来描述DataSet中表之间的关系。这个DataRelation 对象的所包含的约束就是我们在3.14中所讲的数据库完整性设计的内容。总之DataSet最大的特点就是:不依赖于连续的活动连接,其值是数据源 的个内存副本。Sq I DataAdapter图3-5图3-5描述了用DataSet操作SQLserver2000的一般方法。用DataSet访问常规数据源的基本步骤是,先建立一个DataAdapter对 象,如果只需只读访问数据,那么只要对DataAdapter指定一个 SelectCommand即可。然后用DataAdapter填充DataSet如果需要插入,更新或者删除数据,则需要在DataAdapter中相应的指定!nsertCommand UpdateCommand 以及 DeleteCommand,最后调用 DataAdapter 的 Update 刀法。3.4.3 使用 ADO.NET 操作 SQLserver2000我的图书馆管理信息系统使用的是SQLserver2000数据库。在阐述了一些ADO.NET的基本内容后,我们来有针对性的讲一下如何通 过 ADO.NET 访问 SQLserver2000 数据库。最新的.NET Framework 1.1 包括 SQL Server.NET Framework 数据提供 程序(用于Microsoft SQL Server 7.0版或更高版本)OLE DB.NET Framework数据提供程序和ODBC.NET Framework数据提供程序以及 Oracle.NET Framework数据提供程序。分别可以建立四种不同连接,其主 要功能如下。(1)SqlConnection 该对象管理与SQL Server 7.0版或更高版本的连接。通过忽略OLE DB层(还包括其他措施),对该对象进行优化以便将其用于 SQL Server 7.0或更高版本。(2)OleDbConnection-该对象管理与可通过OLE DB访问的任何数据存储 区的连接。(3)OdbcConnection-该对象管理与通过使川连接字符审或ODBC数据源 名称(DSN)创建的数据源的连接。(4)Oracl eConnect ion-该对象管理与Oracle数据库的连接。虽说 SQL Server.NET Framework 数据提供程序、OLE DB.NET Framework 数据提供程序和ODBC.NET Framework数据提供程序都能访问SQLServer 数据库,但微软公司推荐使川SQL Server.NET Framework数据提供程序图书馆管理信息系统使川的就是SQL Server.NET Framework数据提供 程序。以下通过些例子介绍图书馆管理系统中是如何通过SQL Server.NET Framework数据提供程序与SQLserver2000数据库进行交互的。在.net中使用SQL Server.NET Framework数据提供程序,首先要导入 System.Data.SqlClient 命名空间。我们举例说明 ADO.NET 与 SQLserver2000 数据库交互的两种常见方式:A.直接使川数据命令;B.使川数据集。A.使川数据命令与数据库交互要在数据库中执行操作,应执行SQL语句或存储过程(它包括SQL语 句)。您使用SQL语句或存储过程读写行并执行聚合函数,例如添加或求 平均值。您还使用SQL语句或存储过程创建或修改表或列、执行事务等。以下是一个图书馆管理系统中一个验证登陆的函数Public Function validateLogin(ByVai uid As String,ByVai pwd As String)As BooleanDim IsCorrect As Boolean=FalseDim cnmy As New SqlConnection(server二(local);database=lib2004;uid=sa;pwd=)Dim cmd As New SqlCommandWith cmd.Connection=cnmy.CommandType=CommandType.Text.CommandText=select count(*)from manager where Man_id=Man_- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 毕业论文 设计 图书馆 管理信息系统
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【曲****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【曲****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【曲****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【曲****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文