版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第第I页目录TOC\o"1-5"\h\z\o"CurrentDocument"1、 概述 3\o"CurrentDocument"2、 开发工具选择 3\o"CurrentDocument"ASP.net 简介 3\o"CurrentDocument"MicrosoftSQLServer2000简介 8\o"CurrentDocument"运行环境 9\o"CurrentDocument"2.4开发软件的安装 10\o"CurrentDocument"3、 图书管理系统的开发 17\o"CurrentDocument"3.1需求分析 17\o"CurrentDocument"3.2开发设计思想 17\o"CurrentDocument"3.3主要功能 18\o"CurrentDocument"3.4系统层次图 18\o"CurrentDocument"4、 数据库设计 19\o"CurrentDocument"5、 主要模块介绍 26\o"CurrentDocument"5.1用户登录界面 26\o"CurrentDocument"5.2图书浏览界面 27\o"CurrentDocument"5.3图书借阅界面 28\o"CurrentDocument"5.5图书管理界面 31\o"CurrentDocument"5.6读者管理界面 31\o"CurrentDocument"5.7用户管理界面 34&总结 37致谢 错误!未定义书签。\o"CurrentDocument"参考文献 38第第#页基于web的图书管理系统摘要由于计算机技术的迅速发展和普及,与之紧密相关的图书管理系统已经深入到现代图书馆中。在高校,图书管理系统作为计算机管理信息系统的一个应用,越来越发挥着它重要的作用。本文所介绍的图书管理系统是在 ASP.net平台上,结合SQL数据库、WEB技术共同开发的。本系统完成了对图书的日常管理,包括对图书信息的添加、修改、删除等计算机管理工作。本文对采用的相关技术进行了描述,对各个子系统的功能、设计思路及设计方法都作了较为详细的描述。关键词:ASP.ne;SQL;图书管理系统ThelibrarymanagementsystembasedonWebAbstractDuetotherapiddevelopmentofcomputertechnologyandthepopularization,closelyrelatedthebooksmanagementsystemmanagementsystemintothemodernlibrary.Incollege,librarymanagementsystemasacomputermanagementinformationsystemforanapplication,playsmoreandmoreimportantroleinit.ThisarticleintroducedthebooksmanagementsystemmanagementsystemisintheASP.netplatform,combinedwiththeSQLdatabase,WEBtechnologyjointdevelopment.Completionofthesystemforthedailymanagementofthelibrary,includingthebookinformationtoadd,modify,deleteandothercomputermanagementwork.Thisarticleontheuseofrelatedtechniquesaredescribed,thevarioussubsystemsofthefunction,designideasandmethodsaredescribedindetail.Keywords:ASP.net;SQL;Librarymanagementsystem1、 概述早期图书管理由于图书量比较少,所以主要是依靠人工管理,利用卡片的形式进行图书的借阅和归还。随着社会发展,图书馆的不断扩建,图书量的不断扩大,依靠原始的管理方法数据处理手工操作,工作量大,出错率高,出错后不易更改。图书馆采取手工方式对图书借阅情况进行人工管理, 由于信息比较多,图书借阅信息的管理工作混乱而又复杂;一般借阅情况是记录在借书证上,图书的数目和内容记录在文件中,图书馆的工作人员和管理员也只是当时对它比较清楚,时间一长,如再要进行查询,就得在众多的资料中翻阅、查找了,造成查询费时、费力。如要对很长时间以前的图书进行更改就更加困难了。 如何科学地管理图书馆不但关系到读者求知的方便程度, 也关系到图书馆的发展,因此,开发一套完善的图书馆管理系统就必不可少了。为了满足图书管理现代化的需求,国内外软件商已经开发出许多商品化的图书管理软件,但它们大多是面向大型专业图书馆而开发的,专业性强且功能分工比较细,较难以掌握,不适合中小型图书馆使用。综合以上考虑,一个操作简便,功能适合的图书管理系统对于中小型图书馆是很必要的。2、 开发工具选择2.1ASP.net简介ASP.NET的前身ASP技术,是在IIS2.0上首次推出(WindowsNT3.51),当时与ADO1.0一起推出,在IIS3.0(WindowsNT4.0)发扬光大,成为服务器端应用程序的热门开发工具,微软还特别为它量身打造了VisualInterDev开发工具,在1994年到2000年之间,ASP技术已经成为微软推展WindowsNT4.0平台的关键技术之一,数以万计的ASP网站也是这个时候开始如雨后春笋般的出现在网络上。它的简单以及高度可定制化的能力, 也是它能迅速崛起的原因之一。不过ASP的缺点也逐渐的浮现出来:意大利面型的程序开发方法,让维护的难度提高很多,尤其是大型的 ASP应用程序。直译式的VBScript或JScript语言,让效能有些许的受限。 延展性因为其基础架构扩充性不足而受限,虽然有COM元件可用,但开发一些特殊功能(像文件上传)时,没有来自内置的支持,需要寻求第三方软件商开发的元件。1997年时,微软开始针对ASP的缺点(尤其是意大利面型的程序开发方法) 准备开始一个新项目来开发,当时ASP.NET的主要领导人ScottGuthrie刚从杜克大学毕业,他和IIS团队的MarkAnders经理一起合作两个月,开发出了下一代 ASP技术的原型,这个原型在1997年的圣诞节时被发展出来,并给予一个名称:XSP这个原型产品使用的是Java语言。不过它马上就被纳入当时还在开发中的 CLR平台,ScottGuthrie事后也认为将这个技术移植到当时的CLR平台,确实有很大的风险(hugerisk),但当时的XSP团队却是以CLR开发应用的第一个团队。为了将XSP移植到CLR中,XSP团队将XSP的内核程序全部以C#语言重新撰写(在内部的项目代号是"ProjectCool",但是当时对公开场合是保密的) ,并且改名为ASP+,作为ASP技术的后继者,并且也会提供一个简单的移转方法给 ASP开发人员。ASP+首次的Beta版本以及应用在PDC2000中亮相,由BillGates主讲Keynote(即关键技术的概览),由富士通公司展示使用COBOL语言撰写ASP+应用程序,并且宣布它可以使用VisualBasic.NET、C#、Perl与Python语言(后两者由ActiveState公司开发的互通工具支持) 来开发。 在2000年第二季时,微软正式推动.NET策略,ASP+也顺理成章的改名为ASP.NET,经过四年的开发,第一个版本的ASP.NET在2002年1月5日亮相(和.NETFramework1.0),ScottGuthrie也成为ASP.NET的产品经理(到现在已经开发了数个微软产品,像 ASP.NETAJAX和MicrosoftSilverlight)。目前最新版本的ASP.NET4.0以及.NETFramework4.0已经在VS2010平台内应用。ASP.net构架是可以用Microsoft(R)公司最新的产品VisualS开发环境进行开发,WYSIWYG(WhatYouSeeIsWhatYouGet所见即为所得)的编辑。这些仅是ASP.net强大化软件支持的一小部分。因为ASP.net是基于通用语言的编译运行的程序,所以它的强大性和适应性,可以使它运行在Web应用软件开发者的几乎全部的平台上(笔者到现在为止只知道它只能用在Windows2000/2003Server/VISTA/7/XP上)。通用语言的基本库,消息机制,数据接口的处理都能无缝的整合到 ASP.net的Web应用中。ASP.net同时也是Ianguage-independent(语言独立化)的,所以,你可以选择一种最适合你的语言来编写你的程序,或者把你的程序用很多种语言来写,现在已经支持的有 C#(C++和Java的结合体),VB,Jscript,C++、F++。将来,这样的多种程序语言协同工作的能力保护您现在的基于COM+开发的程序,能够完整的移植向ASP.ne。ASP.NET—般分为两种开发语言,VB.NET和C#,C#相对比较常用,因为是.NET独有的语言,VB.NET则为以前VB程序设计,适合于以前VB程序员,如果新接触.NET,没有其他开发语言经验,建议直接学习C#即可。ASP.net使运行一些很平常的任务如表单的提交客户端的身份验证、分布系统和网站配置变得非常简单。例如ASP.net页面构架允许你建立你自己的用户分界面,使其不同于常见的VB-Like界面。ASP.net使用一种字符基础的,分级的配置系统,虚拟服务器环境和应用程序的设置更加简单。因为配置信息都保存在简单文本中,新的设置有可能都不需要启动本地的管理员工具就可以实现。这种被称为 "ZeroLocalAdministration"的哲学观念使A的基于应用的开发更加具体和快捷。一个 ASP.net的应用程序在一台服务器系统的安装只需要简单的拷贝一些必须的文件, 不需要系统的重新启动,一切就是这么简单。多处理器环境的可靠性ASP.net已经被刻意设计成为一种可以用于多处理器的开发工具,它在多处理器的环境下用特殊的无缝连接技术,将很大的提高运行速度。即使你现在的ASP.net应用软件是为一个处理器开发的,将来多处理器运行时不需要任何改变都能提高他们的效能,但现在的ASP却做不到这一点。自定义性和可扩展性ASP.net设计时考虑了让网站开发人员可以在自己的代码中自己定义"plug-in"的模块。这与原来的包含关系不同,ASP.net可以加入自己定义的任何组件。网站程序的开发从来没有这么简单过。安全性基于Windows认证技术和每应用程序配置,你可以确保你的原程序是绝对安全的。ASP.NET的语法在很大程度上与ASP兼容,同时它还提供一种新的编程模型和结构,可生成伸缩性和稳定性更好的应用程序, 并提供更好的安全保护。可以通过在现有ASP应用程序中逐渐添加ASP.NET功能,随时增强ASP应用程序的功能。 ASP.NET是一个已编译的、基于.NET的环境,把基于通用语言的程序在服务器上运行。将程序在服务器端首次运行时进行编译, 比ASP即时解释程序速度上要快很多.而且是可以用任何与.NET兼容的语言(包括VisualBasic.NET、C#和JScript.NET.)创作应用程序。另外,任何ASP.NET应用程序都可以使用整个.NETFramework。开发人员可以方便地获得这些技术的优点,其中包括托管的公共语言运行库环境、 类型安全、继承等等。ASP.NET可以无缝地与WYSIWYGHTML编辑器和其他编程工具 (包括MicrosoftVisualStudio.NET)一起工作。这不仅使得Web开发更加方便,而且还能提供这些工具必须提供的所有优点,包括开发人员可以用来将服务器控件拖放到 Web页的GUI和完全集成的调试支持。 当创建ASP.NET应用程序时,开发人员可以使用Web窗体或XMLWebservices,或以他们认为合适的任何方式进行组合。 每个功能都能得到同一结构的支持,使您能够使用身份验证方案,缓存经常使用的数据,或者对应用程序的配置进行自定义.如果你从来没有开发过网站程序,那么这不适合你,你应该至少掌握一些 HTML语言和简单的Web开发术语。你不需要先前的ASP开发经验,但是你必须了解交互式Web程序开发的概念,包含窗体,脚本,和数据接口的概念,如果你具备了这些条件的话,那么你就可以在Asp.net的世界开始展翅高飞了。当装载(hosting)ASP.NET的Web服务器接收到HTTP要求时,HTTP聆听程序(HTTPListener)会将要求转交给URL指定的网站应用程序的工作流程(WorkerProcess*,ASP.NET的工作流程处理器(aspnet_isapi.dll,若是IIS5.0时则是aspnet_wp.exe)会解析URL,并激活位于System.Web.Hosting命名空间中的ISAPIRuntime对象,接收HTTP要求,并调用 HttpRuntime,运行HttpRuntime.ProcessReques(),在ProcessReque$t中使用HttpApplicationFactory建立新的HttpApplication(或是指定的 IHttpHandler处理器),再分派给Page中的ProcessReque$t或是IHttpHandler的ProcessReques)方法,运行之后,再传回到ISAPIRuntime,以及aspnet_isapi.dll,最后交由HTTPListener回传给用户端,因为运行程序有如管线般顺畅的运行,因此称为 HTTPPipelineMode。在ASP.NET内部的HTTP处理器有: ISAPIRuntime:由aspnet_isapi.dll调用,初始化HttpWorkerRequest对象(会由iis的版本决定要初始化的版本)。HttpRuntime:提供要求队列(RequestQueue)、调用HttpWorkerRequest中的ProcessReques)方法,以及后续的处理工作。 HttpWorkerRequest产生HttpApplication、HttpRequest、HttpResponse等基础对象的HTTP要求对象,并将要求转送到要处理的对象(并调用它的ProcessRequest()方法)。IHttpHandler与IHttpAsyncHandler:负责处理HTTP要求的单元,由ProcessReque$t来分派与运行要求。 ASP.NET网页中的事件程序 当HttpWorkerRequest调用ASP.NET网页(System.Web.Ul命名空间的Page类)的Page.ProcessRequegt方法时,它会依序的引发Page内的各个事件,并同时调用在Page中所有控件的相关事件,其引发顺序为: PreInit事件:运行预先初始化的工作,在ASP.NET2.0中,若要动态调整主版页面(MasterPage)、布景主题(Theme)时,要在这个事件中调整。Init事件:运行初始化工作。 InitCompleted事件:在完成初始化工作后引发。 Preload事件:运行预先加载的工作。 Load事件:运行加载的工作,大多数的网页都拥有 Page_Load事件处理程序,用户控件中也有Page_Load事件例程,都会在此时调用。 控件的PostBack变更通知:当网页侦测到是PostBack要求时,会引发PostBack消息通知的事件。控件的PostBack相关事件:当网页侦测到是PostBack要求时,会引发PostBack消息指定的控件的事件。LoadCompleted事件:运行加载完成后的工作。PreRender事件:处理在产生HTML结果前的工作。 SaveStateCompleted事件:处理页面状态(ViewState与ControlState)储存完成后的事件。 Render事件:处理产生HTML的工作。Unload事件:处理退出网页处理时的工作。如果HttpWorkerRequest调用的是实现IHttpHandler界面的HTTP处理程序时,它只会调用IHttpHandler.ProcessReques()方法,由它来处理程序的输出,不像Page.ProcessRequeQt会处理事件顺序,因此HTTPHandler很适合轻量级的数据处理,像是输出文件数据流或是图片数据流等。ASP.net与ASP的区别:ASP是解释性编程框架,而ASP.net是编译性框架,ASP.net无论是从执行效率和安全上都远远超过ASP而文件上也是有差异的ASP的后缀是.asp而ASP.net则是.aspx和.aspx.cs,ASP.net实现了代码分离。可以说让代码管理更加直观。以往在ASP中常被使用的五大基本对象,在ASP.net中依然支持:Application:包装了HttpApplication对象,在程序中使用Application指令取得的对象,都是来自于 HttpContext.Current.Application属性回传而得Request包装了HttpRequest对象,在程序中使用Request指令取得的对象,都是来自于HttpContext.Current.Request属性回传而得。Response包装了HttpResponse对象,在程序中使用Response指令取得的对象,都是来自于HttpContext.Current.Response属性回传而得。Session包装了HttpSessionState对象,在程序中使用Session指令取得的对象,都是来自于HttpContext.Current.Session属性回传而得。Server:包装了HttpServerUtility对象,在程序中使用 Server指令取得的对象,都是来自于HttpContext.Current.Server属性回传而得。2.2MicrosoftSQLServer2000简介SQL是高级的非过程化编程语言,是沟通数据库服务器和客户端的重要工具,允许用户在高层数据结构上工作。 它不要求用户指定对数据的存放方法, 也不需要用户了解具体的数据存放方式, 所以,具有完全不同底层结构的不同数据库系统,可以使用相同的SQL语言作为数据输入与管理的SQL接口。它以记录集合作为操作对象,所有SQL语句接受集合作为输入,返回集合作为输出,这种集合特性允许一条SQL语句的输出作为另一条SQL语句的输入,所以SQL语句可以嵌套,这使它具有极大的灵活性和强大的功能, 在多数情况下,在其他语言中需要一大段程序实现的功能只需要一个 SQL语句就可以达到目的,这也意味着用SQL语言可以写出非常复杂的语句。结构化查询语言(StructuredQueryLanguage)最早是IBM的圣约瑟研究实验室为其关系数据库管理系统 SYSTEMR开发的一种查询语言,它的前身是SQUARE语言。SQL语言结构简洁,功能强大,简单易学,所以自从 IBM公司1981年推出以来,SQL语言得到了广泛的应用。如今无论是像Oracle、SybaseDB2、Informix、SQLServer这些大型的数据库管理系统,还是像VisualFoxpro、PowerBuilder这些PC上常用的数据库开发系统,都支持SQL语言作为查询语言。美国国家标准局与国际标准化组织已经制定了 SQL标准。SQL语言包含3个部分:数据定义语言DataDefinitionLanguag*DDL),定义:definition/例如:CREATE、DROP、ALTER等语句。数据操作语言DataManipulationLanguage(dml),操作:make/例如:INSERT、UPDATE、DELETE语句。数据控制语言DataControllingLanguage(DCL),控制:control/例如:GRANT、REVOKE、COMMIT、ROLLBACK等语句。SQLServer2000是Microsoft公司推出的SQLServer数据库管理系统的一个版本。该版本继承了SQLServer7.0版本的优点同时又比它增加了许多更先进的功能,具有使用方便,可伸缩性好与相关软件集成程度高等优点,可跨越从运行MicrosoftWindowsXP的微型计算机到运行MicrosoftWindows2003Server的大型多处理器的服务器等多种平台使用。SQLServer2000是基于客户机/服务器(Client/Server)模型的新一代大型关系型数据库管理系统DBMS(databasemanagementsystem),它对数据库进行统一的管理和控制,以保证数据库的安全性和完整性。用户通过 DBMS访问数据库中的数据,数据库管理员也通过DBMS进行数据库的维护工作。它可使多个应用程序和用户用不同的方法在同时或不同时刻去建立,修改和询问数据库。 DBMS提供数据定义语言DDL(DataDefinitionLanguage)与数据操作语言DML(DataManipulationLanguage),供用户定义数据库的模式结构与权限约束,实现对数据的追加、删除等操作。它在电子商务、数据仓库和数据库解决方案等应用中起着重要的核心作用,为个人/企业的数据管理提供强大的支持。2.3运行环境硬件环境:处理器:Pentium4或以上内存:至少1G以上硬盘空间:至少20G硬盘空间以上操作系统:Windows2000/XP/Vista/7软件环境:本系统在windowsXP及MicrosoftVisualStudio2005及MicrosoftSQLServer2000中实现。
2.4开发软件的安装安装MicrosoftVisualStudio2005运行安装目录下的Setup.exe如下图所示;L1^131_RTL_x86_chs_V«nu.._1^3S5_RTL_x36_chs_R^p<t...43KB42KB乙066KB1KE47KBWinRAE压籠交WinRAR压縮文^iziEAK伍缩交WlzlRAK蛋縮交应用程序I_19440_RTL_x86_chs__Repo,,,CKM.,,119473RTLx86antorim.eKechsautorim.in£1KB安骑值息c&nt s.htnR41KBHTML文档/jlktrnllite.dll156KB应用程序扩展LocData.iTti11KB配置遅置msv"cpBO.dll536KB应用程序扩展msverBO.dll612KB应用程序扩展readmt-.htm4KBHTNIL文档632KB应用程序1setup,im42KB配置设置toc:-htrnIKBKTHIL文档VS_E#tup.E雪i105,069KEW1ndowe工仇雪¥5KnownXss:u«s.him138KBHTML文裆在弹出对话框中选择 安装VisualStudio2005,至于msdnlibrary和servicerelease等增强功能组件则可以选择不安装
导.此內剧駅I导氓気成l哪厚邇州静亍爭11特的妥幕巨肌MidDsnfrVisualStudio2005閑L罄黒"逸卿差“心祸「玮礙的僵番偌見・若更参与」MidDsnfrVisualStudio20052]*丿両licr&sfliftCmtmit馱伽:SdSI?实扳的旻制i狀羽僂M亘)丄_ __ __ _•4/有黄洋晰JB』谦準击Sa违£3軽选择所需安装的VisualStudio2005组件,输入产品密钥和用户名称,单击选择需要安装的功能,以及目标路径;选择完成后单击“安装”;-若事骨忻忠的汁律榊押在的恐淋劭韦Ba^aljnsggigiixitTAnalraeifcffi-VtTff-fflFWindo-vs$S3£在Windaurj2400和WindowsIP•址果填1-若事骨忻忠的汁律榊押在的恐淋劭韦Ba^aljnsggigiixitTAnalraeifcffi-VtTff-fflFWindo-vs$S3£在Windaurj2400和WindowsIP•址果填1苣计SM*JI上去装"7Micros-uf+InternetflLS■服务《工15”去書稈岸魅舍自為注册ASP-RET*«肛果农的安拓目录不剔*认目或倉朕茲目:*豹制件 i i期皿5血帚Mirrosoft/MBSAfflW—i+JK+.i3tITJf.KFF.?怜去去全.可¥ijualStudioMkmsoft*•VisualStudio2005Vi^1Studio京装完區至此MicrosoftVisualStudio2005安装完成,文件比较大,安装很慢。MicrosoftSQLServer2000安装:运行安装文件,选择安装简体中文个人版简体中文4简体中文40安装5GLSurvxit-20QD0安装5GLSurvxit-20QD閒14:中:ft/T人版也須SQLSarveir2000检总中a业頤⑥翦SQLS^rvur2flan简待中丈标世版②安魅SQLServer2000ffl游中艾开岌垠@1愈Wfe:愈Wfe:-==病==-RBy-==Fs3fe==~退tw选择安装SQLServer2000组件选择安装数据库服务器RersonalEdition安除瞰据库漲劳誓(S)安奘AnalysisService(i)安疫EnclishQuery(Q)计算机名选择“本地计算机”,单击下一步选择创建新的SQLServer实例,或安装“客服端工具”,单击下一步选择服务器和客户端工具,单击下一步选择服务账户如下图所示
身份验证模式选择混合模式,密码和用户名均为 sa,单击下一步一切设置完成后,单击下一步开始安装,几分钟后安装完成3、图书管理系统的开发3.1需求分析随着学校图书馆的规模不断扩大,图书数量急剧增加,有关图书的各种信息量也成倍增长。面对庞大的信息量需要有图书管理系统来提高管理工作的效率。通过这样的系统可以做到信息的规范管理、科学统计和快速查询、修改、增加、删除等,从而减少管理方面的工作量。本系统主要用于学校图书管理,其主要任务是用计算机对图书信息进行日常管理,如查询、修改、增加、删除,针对这些要求设计了图书管理系统。3.2开发设计思想本图书信息管理系统采用B/S模式来实现客户端对服务器端的调用,所谓B/S模式即浏览器/服务器模式,是一种从传统的二层C/S模式发展起来的新的网络结构模式。在B/S模式中,客户端运行浏览器软件。浏览器以超文本形式向WEB服务器提出访问数据库的要求,WEB服务器接受客户端请求后,将这个请求转化为SQL语法,并交给数据库服务器,数据库服务器得到请求后,验证其合法性,并进行数据处理,然后将处理后的结果返回给 WEB服务器,WEB服务器再一次将得到的所有结果进行转化,变成 HTML文档形式,转发给客户端浏览器,以友好的WEB页面形式显示出来。如图该系统运行于服务器端,完全采用ASP.net+SQL开发,客户端只需安装有WINDOWS系统即可使用本系统。该系统包括用户登录、图书浏览、图书借阅、图书归还、图书管理、读者管理、个人信息等主要功能模块。3.3主要功能用户登录模块:系统用户必须输入正确的用户名和密码才可以登陆管理系统。图书浏览模块:主要针对一般用户,用于图书的检索。图书借阅模块:由图书管理员使用,图书管理员按照书号和书名查找图书,并显示该书的剩余数,学生按照学号和姓名登记借书,并显示已借图书数量图书归还模块:由图书管理员使用。图书管理模块:由图书管理员使用,修改图书详细信息、添加新书。读者管理模块:由系统管理员使用,用于添加删除读者信息。用户管理模块:由系统管理员使用,用于添加删除系统用户。个人信息模块:用于系统管理员或图书管理员修改自己用户信息 。3.4系统层次图系统层次图如图3-1所示:
图3-1系统层次图4、数据库设计首先,在“开始”菜单中选择“所有程序”—“MicrosoftSQLServer”—“服务管理器”启动SQL2000的服务,如图所示
然后在“开始”菜单中选择“所有程序”一“MicrosoftSQLServer”—“企业管理器”在打开的菜单中右键单击数据库,选择“新建数据库”,输入名称后点击完成
名称囿懣据库SfcIK序貝性-—nnfakMansee名称囿懣据库|BookMsnagft陌有爭:创速曰期交小:可用空间用户敌:上浹歡掘库需阶:上袂爭鸳曰志备怕■:绡护维护计划:排序规则岳称确走|取消.網助打开新建的数据库,右键单击表,选择新建表揑制台根目录S9LServers
-見|SQLServer組
“Q-ocalJ(WindowsNT)
匚□数据库令关系图圉—余f观閤合存储过程堕用户車角色规则二I默认&用户定兴的数痰用户钗的函新建的每个表的主键都需要设定,对于用户信息表:主键设为UserCode,数据类型为numeric,长度为9且不允许为空,主要用来记录用户的编号;UserName定义为varchar型,用来保存可变长度的字符串,主要用来记录用户的真实姓名;LoginID定义为varchar型,用来保存可变长度的字符串,主要用来保存用户
的登录ID;LoginPwd定义为varchar型,用来保存可变长度的字符串,主要用来保存用户的登录密码;LoginTime定义为datetime型,用来记录用户的登录时间;UseLvl定义为varchar型,用来保存可变长度的字符串,主要用来规定用户的权限级别。表1用户信息表TittSQLServerEnterpriseYanager-[股计目:症立件囚窗口⑩帮助⑩1 躍谜■©e;删酸可昙畴時1r 列名I数据类型検廣r允许空UserCodenwiencgUserNamievarchar50VLoginIDvstchar50VLogirLpwdvarcharsoVLogin?imedutetimie3VUs^rLvlvarchar50V对于读者信息表:主键设为SID,定义为numeric数据类型,用来记录读者的编号;StudentID,定义为datetime型,用来记录读者的学号;StudentName用来记录读者的姓名,定义为varchar型,用来保存可变长度的字符串,主要是为了以后可以修改录入错误的姓名。表2读者信息表TfiSQLServerEnterprise er-TfiSQLServerEnterprise er-[设计$对于图书信息表:主键设为BookID,定义为int整型,长度为4且不为允许为空;BookName,定义为varchar,长度设为100,用来保存书籍的名称,有的书名比较长,故这个长度设置的也比较大;BookCLS,定义为varchar,主要用来将书籍分类;Publisher,定义为varchar,主要用来记录出版商信息;Author,定义为varchar;主要用来记录书籍作者信息;Desc,定义为varchar,主要用来记录书籍的关键字以及对于书籍的简单描述信息,信息量比较大,故长度设为500;ISBN,定义为varchar主要用来记录国际标准书号(InternationalStandardBookNumber);TCODE,定义为varchar,主要用来记录书籍的二维条码;WithDisk,定义为varchar,主要用来记录书籍是否带有光盘、副刊等信息;BookNum,定义为int整型,主要用来记录书籍在数据库中的编号;InDateTime,定义为datatime,主要用来记录书籍录入数据库的时间表3图书信息表TnSQLServerEnterpriseVanager-[设计斗电文件囚麻口迪帮助⑩si国|愛滋险皂阿蒯鞫谒龜喘切列名数据类型电金1允许空BcokIDint4BmokNMiqvarchar100 VBookCLSvsrcharso vPuhliEhervarchar50 VAuthorvarchar50 V[Jesc]varchar500 VISBHvarchar50 VTCODEvercharso vWithDiskvarchar50 VBookNumint4 7InDateTimed&tetime8 V对于图书借阅信息表:主键设为booksubid,定义为int整型,长度为4且不允许为空值;BookID,定义为varchar,用来记录书名书号;outDateTime,定义为datetime,主要用来记录书籍被借出的时间;outStudentID,定义为varchar主要用来记录借出书籍的读者的姓名;outActionUser,定义为numeric,主要用来记录借出书籍的读者的学号;isIN,定义为numeric,主要用来记录同一本书籍,图书馆中还有多少剩余量;inDateTime,定义为datetime,主要用来记录书籍被归还的时间;inStudentID,定义为varchar,主要用来记录归还书籍的读者的姓名;表4图书借阅信息表r列名~1长度允盾1r列名~1长度允盾1booksubidint4SooldDvarchar507outDat-eTim®datetimeaVvarcharso7□utActionUser niiimeric19VislnniDateTinn^varchardatetime5007Vnmeric9V窃文件®窗口⑩帮助边系统中数据库的链接以及数据的操作功能封装成几类 (UserInfomation类,BookInfo类,BookOut类,Student类),存放在App_code文件中。在系统的各功能模块中,引用相应的类以及事件,完成对数据库的操作。例如数据库的链接实现代码为:PublicClassclsDataBaseConstconnStr="DataSource=(Local);lnitialCatalog=Bookmanage;"&_"IntegratedSecurity=True"PublicSharedFunctionOpen()AsSqlConnectionTryDimmyConnectAsNewSqlConnectionmyConnect.ConnectionString=connStrmyConnect.Open()IfmyConnect.State<>Data.ConnectionState.OpenThenReturnNothingElseReturnmyConnectEndIfCatchexAsExceptionReturnNothingEndTryEndFunctionPublicSharedSubClose(ByRefclsDdbAsSqlConnection)TryIfclsDdb.State=Data.ConnectionState.OpenThenclsDdb.Close()clsDdb=NothingEndIfCatchexAsExceptionWriteLog.Write(ex.ToString)EndTryEndSubPublicSharedFunctiongetData(ByRefclsDdbAsSqlConnection,ByValcmdAsSqlCommand)AsDataTableDimcmdAdaptAsNewSqlDataAdapter(cmd)DimdsAsNewDataSetcmdAdapt.Fill(ds)Returnds.Tables(0)EndFunctionPublicSharedSubExecute(ByRefclsDdbAsSqlConnection,ByVaicmdAsSqlCommand)cmd.ExecuteNonQuery()EndSubEndClass5、主要模块介绍在已启动SQL服务管理器使 SQL数据库在后台运行的基础上,打开MicrosoftVisualStudio2005,选择“打开网站”,选中我的文件夹,点击确定,使MicrosoftVisualStudio2005开始加载相关的页面,加载完成之后,找到Index.aspx页面,点击调试按钮即可运行本系统。5.1用户登录界面用户登录界面如图5-1所示:图5-1 用户登录界面在用户登录界面中输入正确的用户名和密码,点击“登录”按钮即可登录图书管理系统,如果输入错误的用户名或者密码,则会提示错误。检测用户名和与之相对应的用户密码是由系统与后台数据库中的用户信息表中记录的用户信息进行比对,比对正确的话即可登录系统,比对出错则会返回相应的错误提示信息。如果未输入任何用户信息便点击“登录”按钮,则系统会重新加载此登录界面。主要程序代码:ProtectedSubSubmit_ServerClick(ByValsenderAsObject,ByVaieAsSystem.EventArgs)HandiesSubmit.ServerClickDimuserlnfoAsUserlnfomation=_Userlnfomation.getUserlnfo(Nothing,txtLoginId.Text,txtPwd.Text)IfNotuserlnfoIsNothingThenSession.Contents("userCode")=userlnfo.userCodeResponse.Redirect("index.aspx")ElseibiMsg.Text="用户名或者密码错误,请重新输入!"EndIfEndSub5.2图书浏览界面图书浏览界面如图5-2所示:
图5-2 图书浏览界面当用户输入需要查找的书籍部分信息之后,单击“检索”按钮,系统会连接到数据库的图书信息表来查找相应的书籍,并将相关的书名,分类,作者,出版社等信息返回显示在预览框中,实现此功能的代码如下:ProtectedSubSearch_Click(ByValsenderAsObject,ByVaieAsSystem.EventArgs)HandiesSearch.ClickGRIDVIEW.DataSource=BookInfo.getBookList(BookName.Text,BookCis.Text,Pubiisher.Text,Author.Text)GRIDVIEW.DataBind()EndSub5.3图书借阅界面图书借阅界面如图5-3所示:
图5-3图书借阅界面当用户查找到需要借阅的书籍之后,可以在图书借阅的界面输入自己的学号,需要借阅的书籍名称,单击“借出”按钮实现借阅过程。同时系统会将此次借阅的指令发送到后台数据库备存,实现此功能的相关代码如下:ProtectedSubbtnOut_Click(ByValsenderAsObject,ByVaieAsSystem.EventArgs)HandlesbtnOut.ClickDimbookOutAsNewBookOutDimbookInfoAsNewBookInfoDimstudentAsNewStudentbookInfo = Global.BookInfo.getbooklnfo(Nothing,BookTCODE.Text)student=Global.Student.getStudent(StudentID.Text)bookOut.bookID=bookInfo.bookIDbookOut.outActionUser=Session.Contents("userCode")bookOut.outDateTime=Now()bookOut.outStudentID=StudentID.TextGlobal.BookOut.AddOut(Me,bookOut)EndSub
5.4图书归还界面图书归还界面如图5-4所示:厂圈书港理至统-■indcj.s:TnternEtEzplorer立件卸褊辑⑥査看辺收厳夹(A)工具⑴帮助on用户管邂2012^04^030敷迎鹽用,122user1閹书归还国书归还:读署管理用户管邂2012^04^030敷迎鹽用,122user1閹书归还国书归还:读署管理图书管理閤书I昔阅图5-4图书归还界面当用户想要归还曾经借阅的书籍,在图书归还界面输入学号和借阅的书籍名称,单击“归还”实现图书的归还操作,系统也会将后台数据库中的相关借阅信息删除,实现此功能的代码如下:ProtectedSubbtnOut_Click(ByValsenderAsObject,ByVaieAsSystem.EventArgs)HandlesbtnOut.ClickDimbookOutAsNewBookOutDimbookInfoAsNewBookInfoDimstudentAsNewStudentbookInfo = Global.BookInfo.getbooklnfo(Nothing,BookTCODE.Text)student=Global.Student.getStudent(StudentID.Text)bookOut.bookID=bookInfo.bookIDbookOut.outActionUser=Session.Contents("userCode")bookOut.outDateTime=Now()bookOut.outStudentID=StudentID.Text
Global.BookOut.Updln(Me,bookOut)EndSub5.5图书管理界面图书管理界面如图5-5所示:-和感图书彗理亲蜒M12年时月椚日浹迎122uswtvL/•用户昔理添如新书圈书管理图书首理圉书借回E1书归还读者肓理-和感图书彗理亲蜒M12年时月椚日浹迎122uswtvL/•用户昔理添如新书圈书管理图书首理圉书借回E1书归还读者肓理Si号详细
详细
详细
详细大学養语高等数李大学物理U语言程房设计數据结樹操件至轨鞍科书教科书執科书鞍科书戦科书軼科书作者张明程去马明白香岀庶社XX出版社XX出版社XX出腕社XX出腕社XX出脈社XX出畅社图5-5图书管理界面对于图书管理员来说,图书馆中的新书籍添加、书籍相关信息录入错误的修改,均在图书管理界面进行。图书信息的修改可以单击“详细”选项进入修改页面来修改或删除图书,新书籍的添加可以在输入相关信息之后单击“添加新书”来新增图书。5.6读者管理界面读者管理界面如图5-6、图5-7、图5-8所示:
屈图书背理系统读者沆理用尸昔理图书昔理图书惜阅图书归还读者育理新増读者读者鎗号读者学号读者姓名详细1 001 魁丽達鈕2 002 和梅详细j OOS 李導图5-6 读者管理界面屈图书背理系统读者沆理用尸昔理图书昔理图书惜阅图书归还读者育理新増读者读者鎗号读者学号读者姓名详细1 001 魁丽達鈕2 002 和梅详细j OOS 李導图5-6 读者管理界面用户管睚图书管理测书惜阅图书归还读者管理读者编号:刪除返回用户营理團书借闻團书归还读者管理提交图5-7添加读者界面读者详细信息读者编号:I读者学号:0Q1读者蛀名:赵丽提交删除返回图5-8读者详细信息界面在读者管理界面,可以新增读者,也可以修改以往读者的错误身份信息。在图5-6界面点击“新增读者”,在读者详细信息中输入读者的相关身份信息,点击提交便可完成新读者的添加,对于读者的编号则由后台数据库按照读者的添加次序进行自动编号;如果读者身份信息输入错误或者读者不再使用本系统, 可以在“读者详细信息”界面中输入该读者的身份信息,点击删除,即可完成将该读
者从本系统的后台数据库中信息移除。PublicSharedSubInsertstudent(ByRefpPageAsPage,ByVaistudentlnfoAsStudent)DimSCisDbAsSqlConnection=NewSqlConnectionTrySCisDb=cisDataBase.OpenIfNotSCisDbIsNothingThenDimstrSqiAsNewStringBuilderDimcmdAsNewSqiCommandcmd.Connection=SCisDbstrSqi.Append("INSERTINTOSTUDENT(")'strSqi.Append("SID,")strSqi.Append("StudentID,")strSqi.Append("StudentName)")''strSqi.Append("UserLvi)")strSqi.Append("VALUES(")''strSqi.Append( &studentlnfo.SID&"”')strSqi.Append("”'&studentlnfo.StudentID&"”')''strSqi.Append(” ,'"&userlnfo.userLoginPwd&"”')strSqi.Append(",”‘&studentlnfo.StudentName&"')")cmd.CommandText=strSqi.ToStringcmd.ExecuteNonQuery()EndIfShowMsg(pPage)CatchexAsExceptionFinally//关闭数据库联接//关闭数据库联接clsDataBase.Close(SCIsDb)EndTryEndSub删除读者:PublicSharedSubDelStudent(ByRefpPageAsPage,ByValstudentlnfoAsStudent)DimSClsDbAsSqlConnection=NewSqlConnectionTrySClsDb=cIsDataBase.OpenIfNotSClsDbIsNothingThenDimstrSqlAsNewStringBuilderDimcmdAsNewSqlCommandcmd.Connection=SClsDbstrSql.Append("DELETEFROMstudent")strSql.Append(" WHERE StudentlD=”‘ &studentlnfo.StudentID&"”')cmd.CommandText=strSql.ToStringcmd.ExecuteNonQuery()EndIfShowMsg(pPage,True)CatchexAsExceptionFinally' 关闭数据库联接clsDataBase.Close(SCIsDb)EndTryEndSub5.7用户管理界面用户管理界面如图5-9、图5-10、图5-11所示:用户管理閨书昔理图书惜阅图书归还读者管理朋户管理新薙用户填号详细112姓名user〕
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年度金融机构二零二四年度授信额度短期贷款合同2篇
- 2024年度专业苗木销售与种植服务合同2篇
- 锅具采购合同范例
- 《城投债券信用利差的影响因素研究》
- 2024年房产赠与合同详述3篇
- 中队委竞选演讲稿锦集8篇
- 2024年版城市公共服务项目合作协议
- 《MMP-3内含子单核苷酸多态性与食管癌关联分析》
- 螺蛳粉运输合同范例
- 《基于Android的智能电视遥控系统研制》
- 福建省泉州市安溪县实验小学2023-2024学年三年级上学期素养比赛语文试卷
- 法律逻辑简单学(山东联盟)智慧树知到期末考试答案章节答案2024年曲阜师范大学
- 小学二年级上册数学-数角的个数专项练习
- 园林设施维护方案
- 医疗器械质量安全风险会商管理制度
- 220kV~750kV油浸式电力变压器使用技术条件
- MOOC 生物化学与分子生物学-中国药科大学 中国大学慕课答案
- 第2课+古代希腊罗马【中职专用】《世界历史》(高教版2023基础模块)
- 金属屋面工程防水技术规程
- 《福建省安全生产条例》考试复习题库45题(含答案)
- 人工智能增强战略规划
评论
0/150
提交评论