软件工程实验doc_第1页
软件工程实验doc_第2页
软件工程实验doc_第3页
软件工程实验doc_第4页
软件工程实验doc_第5页
已阅读5页,还剩35页未读 继续免费阅读

下载本文档

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

文档简介

1、大学软件工程课程实验实验报告题目:小型图书馆图书信息管理系统专业:班级:组:组长:成员:指导教师:完成日期:目录27314420535639一、项目开发计划书完成人:1序言(Introduction)本需求的编写是为了实现读者借还书的信息化,并且利用Internet网络实现读者与图书馆之间的互动和图书馆的人性化管理,提高图书的利用率、减少相关人员的工作量,使学校的图书管理工作真切做到科学、合理的规划,系统、高效的推行。1.1项目归纳(ProjectSummary)本次作业设计题目:“小型图书馆图书信息管理系统”主要目的是利用数据库软件编制一个管理软件,用以实现图书、读者以及户(学生)借书、盘问

2、图书信息,向流通组预约图书、缺书登记,借书数量、限限时制。还书时流通组依照图书可否超期、破坏等作相应办理。采编部依照缺书登记进行采买以及将旧书裁汰、注平常工作等多项管理。同时对整个系统的解析、设计过程给出一个完满论证。详细包括借还图书。总之,系统的规模较小,只涉及图书、读者、借还书的管理,相关的部门有采编部、流通部、办公室,可是完成简单规模的图书管理操作。1.2术语定义(TermsGlossary)图书管理系统:是一个由人、计算机等组成的能进行管理信息的收集、传达、加工、保存、保护和使用的系统。采编部:是一个负责图书馆中外文图书资料入库前的采访、订购、查收、登记、典藏、调拨,以及书目数据的审校

3、并上传至中央数据库等工作的部门。需求解析:在建立一个新的或改变一个现存的电脑系统时描述新系统的目的、范围、定义和功能时所要做的所有的工作。系统设计:设计数据库的构造以及设计模块的控制流程,明确软件系统如何做。需求规格说明书:经可行性研究后,对要求解的问题重新进行描述,使之更能正确地反映实质业务流程,导出并谈论可供选择的解法,介绍行动目标。系统设计说明书:说明对程序系统的设计考虑,包括程序系统的基本办理流程、程序系统的组织构造、模块划分、功能分配、接口设计、运转设计、数据构造设计和出错办理设计等,为程序的详细设计供应基础。1.3相关文档(RelatedDocuments)需求规格说明书需求规格说

4、明书、系统设计说明书、测试报告、用户手册、源程序清单。2软件生计周期(SoftwareLifeCycle)因系统规模较小,采用瀑布模型确立软件生计周期。(1)项目生计期框图问题定义可行性研究需求解析软件设计项目推行测试保护2)项目生计期说明问题定义:解析问题,确立整体项目设计思路与架构,对系统功能有一个初步的认定,确立项目的规模与基本实现思路。可行性研究:对项目的可行性,包括技术可行性、经济可行性、社会可行性等进行研究,为下一步工作做准备。需求解析:对项目整体需求做一个整体调研和解析,最后将解析结果归纳总结为清楚、全面、系统、正确的需求规格说明书。项目设计:分块设计项目内容,对各个阶段的项目工

5、作有一个整体的划分。项目推行:进行代码的设计编写,最后完成项目的初步模型。测试:对完成的项目进行测试,找出存在问题和需要优化、改进的地方。保护:按期对项目进行测试,查找项目漏洞进行完满办理。3任务与工作产品(TaskandWorkProducts)项目任务和工作产品,是指依照项目生计期阶段划分的任务,和相应阶段的工作产品。记录项目生计期各阶段确立的需重点控制的阶段任务和工作产品。建议以表格的形式,列出生计期各阶段的任务和工作产品。项目包括的任务,如:1)需求解析2)系统设计3)系统实现4)测试5)产品交付项目可能包括的产品,如:1)需求规格说明书3)系统设计说明书4)源程序5)测试报告6)用户

6、手册4工作产品、任务规模、工作量预计(EstimatesofWorkProduct,TaskSizeandWorkload)该项目可是完成简单的图书信息管理,系统规模较小。经解析决定,最后由五人一组的小组形式完成该实验。指定一名组长,负责分工和进度控制等管理工作。其中,开发计划由组长完成,其他文档按计划中的任务分工,分别由各责任人完成。由于项目规模不大,计划在在20个课时左右完成整个设计任务。最后分配给每个组员的任务量其实不大,应该可以按期完成。5资源需求计划(ResourceRequirementPlan)依照项目的详细实现功能,为保证项目可以正常流畅运转,最后确立的主要软硬件设施清单列表以

7、下:办理器CPU系列英特尔酷睿i5.4代系列CPU型号英特尔酷睿i54570CPU频率3.2GHz总线DMI5GT/s三级缓存6MB核心代号Haswell核心/线程数四核心/四线程制程工艺22nm储藏设施内存容量4GB内存种类DDR31333MHz内存插槽4个DiMM插槽硬盘容量500GB硬盘描述7200转光驱种类DVD刻录机显卡/声卡显卡种类核心显卡显卡芯片InterGMAHD4600显存容量共享内存容量DirectX支持DirectX11音频系统集成声卡网络通信有线网卡1000Mbps以太网卡软件数据库sqlserver2005运转环境Java运转平台Win76软件项目进度计划(Softw

8、areProjectSchedule)1)项目阶段划分整体项目划分为四个阶段:1、需求解析阶段依照调研结果,认识用户需求进而确立项目整体实现思路,所要完成的基本功能,保证项目的全面性,保证明现用户需要的所有功能。该过程是十分重要的阶段,能确立整个项目进行的效率和最后收效,因此必然要认真认真的落实。2、系统设计对需求解析阶段的结果进行大纲设计和详细设计,画出功能模块图。对系统的主界面、图书信息录入界面、学生借书操作界面、学生借书结果盘问界面进行设计。进行数据库设计。获取数据库的逻辑构造图。3、图书管理系统编程在从前工作的基础上,进行实现代码的编写,在编写的过程中不断完满各项功能,在保证基本功能的

9、前提下,尽量做到界面的友好性和可行性。4、图书管理系统测试与保护对系统进行测试,并解决发现的问题,进一步保护完满选课系统。2)各阶段任务分解需求解析阶段:1、结合实验内容说明,对现有的学生选课系统进行必要的调研,认识基本的工作流程、软件功能、数据需求和界面风格。2、画系统流程图,反响本系统的物理构造。并给出一份系统的软硬件配置清单,包括设施的型号、系统软件的版本号,报价等信息。3、解析实验内容说明和调研结果,画出系统的数据流程图。4、组内充分的谈论,不断细化和完满数据流程图。5、编写系统的数据字典。6、用IPO图描述系统的办理过程。7、画出系统ER图。系统设计阶段:1、全组走查需求解析文档和其

10、他相关的图表和文字说明。对不清楚的内容进行完满和补充。2、组长和小组成员共同协商一份设计规范:设计用的图形符号、字体、大小规范,界面设计规范,用语规范等等。3、组内6人分工,并行进行详细设计、界面设计和数据库设计。4、组长检查所有的设计规范性和设计质量。编程阶段:采用某一高级编程语言实现本系统,并对编码经过说明进行必要的说明。系统测试与保护阶段:设计测试用例并实现测试与保护。(3)时间和人员安排四个阶段每个阶段分配四个学时,预计共需大体20个学时完成本次项目的设计。人员安排以下:由组长完成项目计划书,详细分配任务。各个阶段任务划分以下:4)阶段工作成就每个阶段都需要完成相应的任务,详细以下:需

11、求解析阶段:1)系统流程图和软硬件设施清单表。2)细化的数据流程图和图解说明。3)系统的数据字典和IPO图。4)系统的ER图。5)需求说明规格说明书。系统设计阶段:1)设计规格说明书(包括大纲设计说明书和详细设计说明书)。2)数据库设计(包括表名、字段名、字段种类、字段大小、字段说明)。编程阶段:1)系统主要功能界面。2)系统主要模块的源代码(包括说明)3)系统主要模块的使用说明书。测试保护阶段:系统主要模块测试用例及测试结果系统主要模块界线测试用例及测试结果二、需求规格说明书完成人:1归纳(Summary)1.1项目的目的与目标(PurposeandAimofProject)该项目为简单的管

12、理系统,主要实现图书借还办理,以及图书馆内的相关图书管理工作。目标是实现读者借还书的信息化,并且利用Internet网络实现读者与图书馆之间的互动和图书馆的人性化管理,提高图书的利用率、减少相关人员的工作量,使学校的图书管理工作真切做到科学、合理的规划,系统、高效的推行。1.2术语定义(TermsGlossary)图书管理系统:图书管理系统,是一个由人、计算机等组成的能进行管理信息的收集、传达、加工、保存、保护和使用的系统。利用信息控制企业的行为;帮助企业实现其规划目标。在现代大中型企业纷纷利用的系统。系统设计:设计数据库的构造以及设计模块的控制流程,明确软件系统如何做。为下一步编程阶段做好准

13、备。需求规格说明书:经可行性研究后,对要求解的问题重新进行描述,使之更能正确地反响实质业务流程,导出并谈论可供选择的解法,介绍行动目标。系统设计说明书:说明对程序系统的设计考虑,包括程序系统的基本办理流程、程序系统的组织构造、模块划分、功能分配、接口设计、运转设计、数据构造设计和出错办理设计等,为程序的详细设计供应基础。设计规格说明书:在进行系统解析后,对整体设计掌握的表现,包括各种设计参数的定义,以及设计元素、风格的确立等。出库表:存放已销售的书籍的数据。入库表:存放入库书籍的数据。购书表:存放提交的购书信息。缺书登记表:存放缺少的书籍的信息。待购教材表:存放待购书籍信息。1.3相关文档(R

14、elatedDocuments)项目开发计划书需求规格说明书设计规格说明书源程序清单测试报告用户手册2问题初始解析(EarlyAnalysis)2.1场景描述(SceneDescription)本次项目是以实现图书、读者以及户(学生)借书、盘问图书信息为背景,目的是为了实现读者借还书的信息化,并且利用Internet网络实现读者与图书馆之间的互动和图书馆的人性化管理,提高图书的利用率、减少相关人员的工作量,使学校的图书管理工作真切做到科学、合理的规划,系统、高效的推行。2.2初始功能提取(EarlyFunctionDistill)基本实现功能以下:1、向流通组预约图书、缺书登记,借书数量、限限

15、时制。2、还书时流通组依照图书可否超期、破坏等作相应办理。2、采编部依照缺书登记进行采买以及将旧书裁汰、注平常工作等多项管理。3目标系统功能需求(FunctionofTargetSystem)3.1功能需求解析(FunctionAnalysis)数据流图以下:IPO3DS2图书信息记录图书注销DS3借还书记录书号IPO31IPO2新书采编新书部IPO121新书宣布读者DS1读者记录IPO1书目编写催还通知IPO5E-MAIL盘问盘问命令图书采买DS6缺书登记记录IPO7取消预约读者图书名/IPO4DS6DS7系统参数缺书登记记录读者图书号/缺书登记IPO8读者DS5图书预约记录IPO6DS3借

16、还书记录IPO7DS5图书预约记录更新系统参数预约取消预约DS71IPO10IPO11办公处罚规则室IPO101借书读者管理IPO9流通图书号有效性检DS2图书信息记录IPO81/读者查部处罚更新处罚DS1读者记录规则DS3借还书记录DS4处罚记录书号IPO12预约编号IPO13DS71处罚规则DS2E_MAIL预约通知通知DS2图书信息记录还书图书预约记录读者注:有些含义明确的数据流省略了名称数据字典:编号:DS1名称:读者信息记录名称键值种类长度值域初值备注读者编号P字符100学生姓名字符100学生班级字符100性别字符10借阅图书数量数字借阅图书信息字符200借出日期日期8应还日期日期8

17、可否有图书超期布尔预约图书信息字符100编号:DS2名称:图书信息记录名称键值种类长度值域初值备注图书编号P字符100书名字符100种类字符100可选择作者字符100图书ISBN字符100初版社字符20初版日期日期8总的册数数字重点字字符100当前在库数量数字编号:DS6名称:缺书记录名称键值种类长度值域初值备注图书编号P字符100书名字符100种类字符100可选择作者字符100图书ISBN字符100初版社字符20初版日期日期83.2功能需求点列表(FunctionList)对每个办理用IPO表进行详细说明,列出功能需求点列表以下:编号:IPO1名称:读者盘问输入办理说明输出图书1.输入图书信

18、息将DS2中相应图书记录显示出信息3.若是此书在馆,显示图书信息来备注:编号:IPO2名称:书目编写输入办理说明输出图书1.输入图书信息更正DS2的在库图书量信息2.增添图书记录插入图书信息到DS2备注:编号:IPO3名称:图书注销输入办理说明输出图书1.输入图书信息更正DS2的在库图书量信息2.删除图书记录删除DS2中相应图书记录备注:编号:IPO4名称:缺书登记输入办理说明输出所缺1.输入缺书信息插入缺书记录到DS6图书2.创办缺书记录,更正缺书登记记录更正DS6缺书记录状态信息3.通知采买部及时采买图书备注:编号:IPO5名称:图书采买输入办理说明输出采买1.输入采买图书信息更正DS6缺

19、书记录状态图书2.若是此书已经采买,则取消图书缺书记录信息备注:编号:IPO6名称:图书预约输入办理说明输出预约1.输入图书信息插入图书预约记录图书2.创办图书预约记录到DS5信息更正DS5图书预约预约记录状态备注:编号:IPO7名称:取消预约输入办理说明输出预约1.输入图书信息删除DS5中图书预约图书2.删除图书预约记录记录信息更正DS5图书预约预约记录状态备注:编号:IPO10名称:借书办理输入办理说明输出读者1.输入读者编号和图书编号更正DS2的在库图书量编号2.创办借书记录,更正图书在库量插入借书记录到DS3图书3.若是此书从前预约,则取消图书预约记录更正DS5预约记录状态编号备注:编

20、号:IPO12名称:还书办理输入办理说明输出读者1.输入读者编号和图书编号更正DS2的在库图书量编号2.创办还书记录,更正图书在库量插入还书记录到DS2图书3.若是此书从前预约,通知预约读者更正DS5预约记录状态编号备注:4目标系统性能需求(PerformanceofTargetSystem)4.1时间要求(TimeRequest)鉴于图书信息量较大,同时又考虑到读者对响应时间的容忍限度,最后确立盘问的最长等待时间为30秒左右,而更新办理时间为40秒左右,远程数据传输时间控制在一分钟以内。尽量保证时间响应控制在合理的范围内。4.2空间要求(SpaceRequest)如由于借还书功能是面向全校师

21、生,因此用户量较大,必定保证可以支持足够多的终端用户同时借阅盘问,最好同时在线操作人数控制在50人以内,高出次门限值采用等待措施。其他,图书信息量大,因此办理的文件和记录数也会相应变得弘大,同时也限制了办理任务的数量,为加快数据传输效率,对输入输出数据的精度要求和对办理和传输过程中的精度要求其实不高。4.3性能需求点列表(PerformanceList)依照数据流程图和对需求的认识,给出一张功能需求表,包括需求的编号、简单描述、优先级和考据方式见下表。编号简述使用者优先级考据方式IPO1盘问读者1分别对图书/借还书信息的有效数据、无效数据、各种组合条件进行盘问,显示盘问结果(结果是0条、1页、

22、多页的情况)IPO2书目编写采编部1输入完满的图书信息,输入不完满的图书信息、输入错误的图书信息,重复输入IPO3图书注销采买部1注销现有图书、注销不存在图书IPO31新书宣布采买部2缺书采买到馆后,通知登记的读者IPO4缺书登记读者2正确的和完满的缺书信息,正确但不完满的缺书信息,重复录入缺书信息IPO5图书采买采编部2采买缺书登记的图书,重复采买,超量采买IPO6预约读者2正确的和完满的预约数据,正确但不完满的预约数据,无效的预约数据,同样的预约数据IPO7取消预约读者2取消已经预约的图书、取消没有预约的图书、反复取消同一条预约记录IPO8更新系统系统管1在XML文件中定义各种参数的值,在

23、DTD文件中参数理员定义参数的模型,在XLS中定义参数的显示格式IPO81更新处罚系统管1在XML文件中定义处罚规则,在DTD文件中定义规则理员参数的模型,在XLS中定义参数的显示格式IPO9处罚流通部1输入超期处罚、扔掉处罚和破缺点分信息,且测试不同样日期、不同样价格图书、不同样页数信息IPO10借书办理流通部1正确的和完满的借书信息,正确但不完满的借书信息,无效的借书信息,重复的借书信息,超量借书,借预约图书,续借IPO101有效性检流通部1输入有效/无效读者号,有效/无效图书号,借书查已超量,有延期书,0库存书IPO11读者管理办公室1输入正确读者信息、错误读者信息和无效的读者信息IPO

24、12还书流通部1还1本书/多本书,还过期书,还书有预约,还无效图书(没有借书记录)IPO121催还通知自动触3系统参数中设置催还日期,检验系统可否依照设发置的日期自动发出催还邮件IPO13预约通知自动触1检查系统自动触发1条/多条预约到书通知,给有发效邮箱、无效邮箱分别检验系统5目标系统界面与接口需求(InterfaceofTargetSystem)5.1界面需求(InterphaseRequirement)界面整体特点方便、简洁、雅观、一致等。1)输入设施:键盘、鼠标、条码扫描器、扫描仪;2)输出设施:显示器、打印机;3)显示风格:蓝色背景为主,界面简洁简单,功能实现突出;4)显示方式:10

25、24*768;5)输出格式:列表显示、挨次输出。5.2接口需求(InterfaceRequirement)由于本项目可是实现校内图书借阅盘问管理功能,因此所需接口仅限于图书馆办公室管理人员的控制接口。用于管理人员对整个系统进行必要的测试保护,保证整个系统的顺利运行。6目标系统其他需求(OtherRequirementsofTargetSystem)6.1安全性(Security)由于图书信息和读者信息都是学校内部隐私信息,因此,系统的安全性必定获取很好的保证。6.2可靠性(Dependability)图书盘问需要最后有明确的盘问结果,因此盘问过程的可靠性必不可以少。其他,这也是保证系统可以正常

26、运转运转的重要前提。6.3灵便性(Agility)图书信息量较大,因此,盘问时必定采用灵便的盘问措施,如分类、模糊盘问等,保证盘问的效率和灵便性。7目标系统假设与拘束条件(SupposeandRestrictionofTargetSystem)本系统可是内部运转的简单图书管理系统,外面限制几乎可以不用考虑。主要的限制在于内部软硬件的供应和保证,整体问题不大,相信完成后可以赶忙投入运转。三、设计规格说明书完成人:1序言(Introduction)本章对该文档的目的、功能范围、术语、相关文档、参照资料、版本更新进行说明。1.1目的(Purpose)本文档的目的旨在推动软件工程的规范化,使设计人员依

27、照一致的大纲设计书写规范,节约制作文档的时间,降低图书管理系统实现的风险,做到系统设计资料的规范性与全面性,以利于系统的实现、测试、保护、版本升级等。1.2命名规则(NamingRule)变量对象命名规则:全局变量和局部变量均以能代表变量意义的单词表示,为加以划分,其中,全局变量首字母大写、局部变量则全小写。数据库对象命名规则:为方便理解,数据库成马上的相关表名命名也采用代表特定意义的英文字母表示。表名首字母大写,其他一律大写。1.3术语定义(TermsGlossary)号序术语名称术语定义软件系统的整体逻辑构造。依照不同样的设计方法,有不同样的整体逻辑构造。若采用面向功能或面向数据的1整体构

28、造设计方法,则整体逻辑构造为一树形的功能模块构造图。若采用面向对象或面向部件(构件)的设计方法,则整体逻辑构造为部件(构件)的组装图本软件系统与其他软件系统之间的接口,接口设施2外面接口可以是中间件。接口描述包括:传输方式、带宽、数据构造、传输频率、传输量、传输协议3数据构造数据构造包括:数据库表的构造、其他数据构造等4看法数据关系数据库的逻辑设计模型,叫做看法数据模型。模型CDM主要内容包括一张逻辑E-R图及其相应的数据字典5物理数据关系数据库的物理设计模型,叫做物理数据模型。模型PDM主要内容包括一张物理表关系图及其相应的数据字典在基表或其他视图之上建立的一张虚表,叫做视6视图图,它拥有物

29、理表的好多性质,在数据办理和授权上很适用7角色数据库中享有某些特权操作的用户,叫做角色。角色的权益经过授权来实现拥有相对独立功能的小系统叫做子系统。一个大8子系统的软件系统可以划分为多个子系统,每个子系统可由多个模块或多个部件组成9模块拥有功能独立、能被调用的信息单元叫做模块。模块是构造化设计中的看法软件系统内部各子系统之间、各部件之间、各模10内部接口板之间的接口,叫做内部接口。接口描述包括:调用方式、入口信息、出口信息等相关文件是指当本文件内容改正后,可能引起变11相关文件更的其他文件。如需求解析报告、详细设计说明书、测试计划、用户手册12参照资料参照资料是指本文件书写时用到的其他资料。如

30、各种相关规范、模板、标准、准则1.4参照资料(References)用户需求报告数据库设计规范命名规范1.5相关文档(RelatedDocuments)1源程序清单2测试计划及报告3用户使用手册2整体设计(DesignofCollective)2.1系统构造设计(DesignofArchitecture)总系统系统构造模型:登陆学生登陆系统流通组系统编目人员系统采买人员系统子系统模型:学生登陆系统SS1:学生登陆系统借书系统还书系统流通组系统SS2:流通组系统借书系统盘问图书信息还书系统备注:借书系统、还书系统见学生登陆系统。编目人员系统SS3:编目人员系统录入图书信息注销图书采买人员系统SS

31、4:采买人员系统采买后将图书交予编查察缺书登记表目人员2.2子系统清单(SubsystemList)子系统编号子系统功能简述SS1学生可以进行借书、还书操作SS2流通组完成详细的借书、还书操作SS3录入图书信息和注销图书SS4负责采买图书并交予编目人员2.3模块设计(ModuleDesign)借书系统M1:借书盘问图书信息填写索书单并交予流通组人员图书可借图书已被借出子系统之间的关系经过流通组工作人员完成功能与学生登陆有交集与采买人员系统有交集与编目人员系统有功能交集没有该图书记录流通组人员进行缺书登记,并通知工作人员登记借书信息,借书成功读者可选择预约图书采买人员还书系统M2:还书将图书交予

32、流通组人员图书超期图书有破坏还书办理流通组人员进行还书登记,若是该进行相关处罚进行相关处罚书有预约,通知预约读者。2.4功能模块清单(ModuleList)模块清单表:模块编号模块功能简述M1实现借书系统中的各种功能的实现,以及各种借书时情况的办理M2实现还书系统中的各种功能的实现,以及各种还书时情况的办理3数据构造设计(DesignofDataStructure)3.1数据库表名清单(DBTableList)数据库表名清单表:序中文表名英文表名表功能说明号1学生表Student记录学生的基本信息、包括已借图书信息,在借图书信息等。2图书表Book记录图书馆的图书信息,以及图书的状态借出、应还

33、日期等等。3缺书表Qbook记录学生希望的图书馆有的书,用于采买人员及时采买图书。3.2数据库表之间关系说明(RelationofDBTable)E-R图:已借图书数量班级在借图书信息姓名学生表超期图书信息学号预约图书信息性别借出应还日期初版日期图书状态种类图书表初版社预约人学号索书号书名初版日期登记日期缺书表初版社书名3.3数据库表的详细清单(ParticularListofDBTable)详细清单用列表给出:表名:图书表序号字段中文名字段英文名种类空默认主键/外否值键1书名Book_namefloat否无2索书号Book_numberfloat否无主键3初版社Pressfloat否无4初版

34、日期Timedate否无5图书状态Messagefloat无6借出应还日期Borrow_timefloat无7种类Book_classfloat无8预约人学号Order_numberfloat无表名:学生表序号字段中文名字段英文名种类空否默认主键/外值键1学号Numberfloat否无主键2班级Classfloat否无3姓名Namefloat否无4性别Sexchar否F5已借图书数量Countint无6在借图书信息Borrowfloat无7超期图书信息Extendfloat无8预约图书信息Order_bookfloat无表名:缺书表序号字段中文名字段英文名种类空默认主键/外否值键1书名Book

35、_namefloat否无主键2登记日期Book_timefloat否无3初版社Press1float否无4初版日期Time1date否无四、源程序清单完成人:1数据库连接(ModuleName)1.1描述(Description)实现数据库连接。1.2代码(Program)usingSystem;usingSystem.Data;usingSystem.Configuration;usingSystem.Web;usingSystem.Web.Security;usingSystem.Web.UI;usingSystem.Web.UI.WebControls;usingSystem.Web.U

36、I.WebControls.WebParts;usingSystem.Web.UI.HtmlControls;usingSystem.Data.SqlClient;DataBase的大纲说明publicclassDataBase:IDisposablepublicDataBase()/TODO:在此处增添构造函数逻辑/privateSqlConnectioncon;/创办连接对象#region打开数据库连接打开数据库连接.privatevoidOpen()打开数据库连接if(con=null)con=newSqlConnection(ConfigurationManager.AppSettin

37、gsConnectionString);if(con.State=System.Data.ConnectionState.Closed)con.Open();#endregion#region关闭连接/关闭数据库连接publicvoidClose()if(con!=null)con.Close();#endregion#region释放数据库连接资源释放资源publicvoidDispose()确认连接可否已经关闭if(con!=null)con.Dispose();con=null;#endregion#region传入参数并且变换为SqlParameter种类变换参数/储藏过程名称或命令文

38、本/参数种类/参数大小/参数值/新的parameter对象publicSqlParameterMakeInParam(stringParamName,SqlDbTypeDbType,intobjectValue)Size,returnMakeParam(ParamName,DbType,Size,Value);/初始化参数值/储藏过程名称或命令文本/参数种类ParameterDirection.Input,/参数大小/参数方向/参数值/新的parameter对象publicSqlParameterMakeParam(stringParamName,SqlDbTypeDbType,Int32Si

39、ze,ParameterDirectionDirection,objectValue)SqlParameterparam;if(Size0)param=newSqlParameter(ParamName,DbType,Size);elseparam=newSqlParameter(ParamName,DbType);param.Direction=Direction;if(!(Direction=ParameterDirection.Output&Value=null)param.Value=Value;returnparam;#endregion#region执行参数命令文本(无数据库中数据

40、返回)/执行命令/命令文本参数对象/publicintRunProc(stringprocName,SqlParameterprams)SqlCommandcmd=CreateCommand(procName,prams);cmd.ExecuteNonQuery();this.Close();获取执行成功返回值return(int)cmd.ParametersReturnValue.Value;/直接执行SQL语句/命令文本/publicintRunProc(stringprocName)this.Open();SqlCommandcmd=newSqlCommand(procName,con)

41、;cmd.ExecuteNonQuery();this.Close();return1;#endregion#region执行参数命令文本(有返回值)执行盘问命令文本,并且返回DataSet数据集/命令文本/参数对象/数据表名称/publicDataSetRunProcReturn(stringprocName,SqlParameterprams,stringtbName)SqlDataAdapterdap=CreateDataAdaper(procName,prams);DataSetds=newDataSet();dap.Fill(ds,tbName);this.Close();获取执行成

42、功返回值returnds;执行命令文本,并且返回DataSet数据集/命令文本/数据表名称/DataSetpublicDataSetRunProcReturn(stringprocName,stringtbName)SqlDataAdapterdap=CreateDataAdaper(procName,null);DataSetds=newDataSet();dap.Fill(ds,tbName);this.Close();获取执行成功返回值returnds;#endregion#region将命令文本增添到SqlDataAdapter创办一个SqlDataAdapter对象以此来执行命令文本

43、/命令文本/参数对象/privateSqlDataAdapterCreateDataAdaper(stringprocName,SqlParameterprams)this.Open();SqlDataAdapterdap=newSqlDataAdapter(procName,con);dap.SelectCommand.CommandType=CommandType.Text;/执行种类:命令文本if(prams!=null)foreach(SqlParameterparameterinprams)dap.SelectCommand.Parameters.Add(parameter);加入返

44、回参数dap.SelectCommand.Parameters.Add(newSqlParameter(ReturnValue,SqlDbType.Int,4,ParameterDirection.ReturnValue,false,0,0,string.Empty,DataRowVersion.Default,null);returndap;#endregion#region将命令文本增添到SqlCommand创办一个SqlCommand对象以此来执行命令文本/命令文本paramname=prams命令文本所需参数返回SqlCommand对象privateSqlCommandCreateCo

45、mmand(stringprocName,SqlParameterprams)确认打开连接this.Open();SqlCommandcmd=newSqlCommand(procName,con);cmd.CommandType=CommandType.Text;/执行种类:命令文本/依次把参数传入命令文本if(prams!=null)foreach(SqlParameterparameterinprams)cmd.Parameters.Add(parameter);加入返回参数cmd.Parameters.Add(newSqlParameter(ReturnValue,SqlDbType.I

46、nt,4,ParameterDirection.ReturnValue,false,0,0,string.Empty,DataRowVersion.Default,null);returncmd;#endregion2读者信息(ModuleName)2.1描述(Description)读者信息的编码实现2.2代码(Program)usingSystem;usingSystem.Data;usingSystem.Configuration;usingSystem.Web;usingSystem.Web.Security;usingSystem.Web.UI;usingSystem.Web.UI.

47、WebControls;usingSystem.Web.UI.WebControls.WebParts;usingSystem.Web.UI.HtmlControls;usingSystem.Data.SqlClient;publicclassReaderManageDataBasedata=newDataBase();privatestringid;privatestringname;privatestringsex;privatestringtype;privateDateTimebirthday=Convert.ToDateTime(DateTime.Now.ToShortDateStr

48、ing();privatestringpapertype;privatestringpapernum;privatestringtel;privatestringemail;privateDateTimecreatedate=Convert.ToDateTime(DateTime.Now.ToShortDateString();privatestringoperater;privatestringremark;privateintborrownum=0;privateintnum=0;publicReaderManage()/TODO:在此处增添构造函数逻辑/publicstringIDget

49、returnid;setid=value;publicstringNamegetreturnname;setname=value;publicstringSexgetreturnsex;setsex=value;publicstringTypegetreturntype;settype=value;publicDateTimeBirthdaygetreturnbirthday;setbirthday=value;publicstringPaperTypegetreturnpapertype;setpapertype=value;publicstringPaperNumgetreturnpape

50、rnum;setpapernum=value;publicstringTelgetreturntel;settel=value;publicstringEmailgetreturnemail;setemail=value;等级日期publicDateTimeCreateDategetreturncreatedate;setcreatedate=value;publicstringOperatergetreturnoperater;setoperater=value;publicstringRemarkgetreturnremark;setremark=value;publicintBorrow

51、Numgetreturnborrownum;setborrownum=value;publicintNumgetreturnnum;setnum=value;publicstringGetReaderID()DataSetds=GetAllReader(tb_reader);stringstr=;if(ds.Tables0.Rows.Count=0)str=D1001;elsestr=D+(Convert.ToInt32(ds.Tables0.Rowsds.Tables0.Rows.Count-10.ToString().Substring(1,4)+1);returnstr;publicin

52、tAddReader(ReaderManagereadermanage)SqlParameterprams=data.MakeInParam(id,SqlDbType.VarChar,30,readermanage.ID),data.MakeInParam(name,SqlDbType.VarChar,50,readermanage.Name),data.MakeInParam(sex,SqlDbType.Char,4,readermanage.Sex),data.MakeInParam(type,SqlDbType.VarChar,50,readermanage.Type),data.Mak

53、eInParam(birthday,SqlDbType.DateTime,8,readermanage.Birthday),data.MakeInParam(papertype,SqlDbType.VarChar,20,readermanage.PaperType),data.MakeInParam(papernum,SqlDbType.VarChar,30,readermanage.PaperNum),data.MakeInParam(tel,SqlDbType.VarChar,20,readermanage.Tel),data.MakeInParam(email,SqlDbType.Var

54、Char,50,readermanage.Email),data.MakeInParam(createdate,SqlDbType.DateTime,8,readermanage.CreateDate),data.MakeInParam(operater,SqlDbType.VarChar,30,readermanage.Operater),data.MakeInParam(remark,SqlDbType.VarChar,4000,readermanage.Remark),;return(data.RunProc(INSERTINTOtb_reader(id,name,sex,type,bi

55、rthday,paperType,paperNum,tel,email,createDate,operater,remark)+VALUES(id,name,sex,type,birthday,papertype,papernum,tel,email,createdate,operater,remark),prams);publicintUpdateReader(ReaderManagereadermanage)SqlParameterprams=data.MakeInParam(id,SqlDbType.VarChar,30,readermanage.ID),data.MakeInParam

56、(name,SqlDbType.VarChar,50,readermanage.Name),data.MakeInParam(sex,SqlDbType.Char,4,readermanage.Sex),data.MakeInParam(type,SqlDbType.VarChar,50,readermanage.Type),data.MakeInParam(birthday,SqlDbType.DateTime,8,readermanage.Birthday),data.MakeInParam(papertype,SqlDbType.VarChar,20,readermanage.Paper

57、Type),data.MakeInParam(papernum,SqlDbType.VarChar,30,readermanage.PaperNum),data.MakeInParam(tel,SqlDbType.VarChar,20,readermanage.Tel),data.MakeInParam(email,SqlDbType.VarChar,50,readermanage.Email),data.MakeInParam(createdate,SqlDbType.DateTime,8,readermanage.CreateDate),data.MakeInParam(operater,

58、SqlDbType.VarChar,30,readermanage.Operater),data.MakeInParam(remark,SqlDbType.VarChar,4000,readermanage.Remark),;return(data.RunProc(updatetb_readersetname=name,sex=sex,type=type,birthday=birthday,paperType=papertype,paperNum=papernum,+tel=tel,email=email,createDate=createdate,operater=operater,rema

59、rk=remarkwhereid=id,prams);publicintUpdateBorrowNum(ReaderManagereadermanage)SqlParameterprams=data.MakeInParam(id,SqlDbType.VarChar,30,readermanage.ID),data.MakeInParam(borrownum,SqlDbType.Int,4,readermanage.BorrowNum),data.MakeInParam(num,SqlDbType.Int,4,readermanage.Num),;return(data.RunProc(upda

60、tetb_readersetborrownum=borrownum,num=numwhereid=id,prams);publicintDeleteReader(ReaderManagereadermanage)SqlParameterprams=data.MakeInParam(id,SqlDbType.VarChar,30,readermanage.ID),;return(data.RunProc(deletefromtb_readerwhereid=id,prams);publicDataSetQueryReaderByCode(ReaderManagereadermanage,stri

温馨提示

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

评论

0/150

提交评论