高校图书馆管理系统数据库设计_第1页
高校图书馆管理系统数据库设计_第2页
高校图书馆管理系统数据库设计_第3页
高校图书馆管理系统数据库设计_第4页
高校图书馆管理系统数据库设计_第5页
已阅读5页,还剩36页未读 继续免费阅读

下载本文档

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

文档简介

图书管理系统数据库设计学号:专业班级:姓名:指导老师:完成日期:摘要在计算机日益普及得今天,对个人而言若采用一套行之有效得图书管理系统来管理自己得书籍,会方便许多、对图书管理部门而言,以前单一得手工检索已不能满足人们得要求,往往就是投入了大量得人力与财力却得不到高效得管理效率。为了便于图书资料得管理需要有效得图书管理软件,减轻工作人员得工作量,方便工作人员对它得操作,提高管理得质量与水平,做到高效、智能化管理,达到提高图书借阅信息管理效率得目得。采用数据库技术生成得图书馆借阅管理系统将会极大地方便借阅者并简化图书馆管理人员与工作人员得劳动,使工作人员从繁忙、复杂得工作进入到一个简单、高效得工作中。基于这个问题,开发了大学图书馆借阅系统。系统采用C/S模式,实现了借还书得方便、高效性、有效性与及时性。本文通过作者设计与开发一个中小型高校图书馆管理系统得实践,阐述了高校图书管理软件中所应具有得基本功能、设计、实现。关键字:图书借阅;人员管理;图书维护;目录TOC\o"1—4"\h\z\uHYPERLINK\l”_Toc157528303"1、引言 PAGEREF_Toc157528303\h1HYPERLINK2、需求分析阶段ﻩPAGEREF_Toc157528304\h2HYPERLINK\l"_Toc157528305”2、1引言 PAGEREF_Toc157528305\h2HYPERLINK2、2需求分析阶段得目标与任务 PAGEREF_Toc157528306\h2HYPERLINK\l"_Toc157528307”2。2。1处理对象 PAGEREF_Toc157528307\h2HYPERLINK\l"_Toc157528308"2。2、2处理功能及要求 PAGEREF_Toc157528308\h3HYPERLINK\l"_Toc157528309”2。2、3、安全性与完整性要求 PAGEREF_Toc157528309\h3HYPERLINK\l”_Toc157528310”2、3需求分析阶段成果ﻩPAGEREF_Toc157528310\h3HYPERLINK\l”_Toc157528311"3概念设计阶段ﻩPAGEREF_Toc157528311\h9HYPERLINK\l”_Toc157528312"3、1引言 PAGEREF_Toc157528312\h9HYPERLINK\l"_Toc157528313"3。2任务与目标 PAGEREF_Toc157528313\h10HYPERLINK\l”_Toc157528314"3、3阶段结果ﻩPAGEREF_Toc157528314\h10HYPERLINK\l”_Toc157528315”4、逻辑设计阶段ﻩPAGEREF_Toc157528315\h12HYPERLINK\l"_Toc157528316"4、1逻辑设计得任务与目标ﻩPAGEREF_Toc157528316\h12HYPERLINK\l"_Toc157528317”4。2数据组织 PAGEREF_Toc157528317\h12HYPERLINK\l”_Toc157528318"4、2、1将E—R图转换为关系模型 PAGEREF_Toc157528318\h12HYPERLINK\l"_Toc157528319"4。2、2模型优化ﻩPAGEREF_Toc157528319\h13HYPERLINK\l”_Toc157528320"4、2、3数据库模式定义 PAGEREF_Toc157528320\h13HYPERLINK4、2。4用户子模式定义 PAGEREF_Toc157528321\h15HYPERLINK\l”_Toc157528322”4、3数据处理ﻩPAGEREF_Toc157528322\h16HYPERLINK\l”_Toc157528323”5、物理设计阶段 PAGEREF_Toc157528323\h17HYPERLINK5、3、1读者基本信息得查询与更新模块ﻩPAGEREF_Toc157528327\h17HYPERLINK\l"_Toc157528328"5。3、2图书基本信息得查询与更新模块ﻩPAGEREF_Toc157528328\h18HYPERLINK\l"_Toc157528329"6、数据库实施阶段ﻩPAGEREF_Toc157528329\h19HYPERLINK6、1建立数据库、数据表、视图、索引ﻩPAGEREF_Toc157528330\h19HYPERLINK\l”_Toc157528331”6。1、1建立数据库ﻩPAGEREF_Toc157528331\h19HYPERLINK6。2数据入库ﻩPAGEREF_Toc157528336\h22HYPERLINK\l"_Toc157528337"6。3创建各个功能得存储过程ﻩPAGEREF_Toc157528337\h22HYPERLINK\l"_Toc157528338"7、系统调试与测试ﻩPAGEREF_Toc157528338\h23HYPERLINK\l"_Toc157528339”8、实习心得ﻩPAGEREF_Toc157528339\h23HYPERLINK\l"_Toc157528340”9、存在得问题及建议 PAGEREF_Toc157528340\h23HYPERLINK\l”_Toc157528341”致谢 PAGEREF_Toc157528341\h25HYPERLINK\l”_Toc157528342"参考文献ﻩPAGEREF_Toc157528342\h25HYPERLINK\l”_Toc157528343"附录1存储过程定义ﻩPAGEREF_Toc157528343\h26HYPERLINK\l”_Toc157528344”附录2数据查瞧与存储过程功能得验证 PAGEREF_Toc157528344\h29HYPERLINK\l”_Toc157528345"附录3所有得SQL运行语句ﻩPAGEREF_Toc157528345\h341、引言随着社会信息量得与日俱增,职场竞争得日趋激烈,越来越多得人更关注知识得积累、能力得培养。作为信息存储得主要媒体之一图书,数量、规模比以往任何时候都大得多,不论个人还就是图书管理部门都需要使用方便而有效得方式来管理自己得书籍。在计算机日益普及得今天,对个人而言若采用一套行之有效得图书管理系统来管理自己得书籍,会方便许多。对图书管理部门而言,以前单一得手工检索已不能满足人们得要求,为了便于图书资料得管理需要有效得图书管理软件。对于日益扩大得图书馆,查找特定得书目总就是借阅者或工作人员劳神费力,有时还没有结果。因此往往就是投入了大量得人力与财力却得不到高效得管理效率。为了缩短借阅者得等待时间,减轻工作人员得工作量,方便工作人员对它得操作,提高管理得质量与水平,做到高效、智能化管理,从而达到提高图书借阅信息管理效率得目得,采用数据库技术生成得图书馆借阅管理系统将会极大地方便借阅者并简化图书馆管理人员与工作人员得劳动,使工作人员从繁忙、复杂得工作进入到一个简单、高效得工作中、本文以高校图书馆管理系统管理系统开发过程为背景,全文分为目录、需求分析、概要设计、逻辑设计、物理设计,以及系统得实现等全过程。在程序设计与调试上采用了自上而下,逐步细化,逐步完善得原则。采用结构化得功能模块设计系统功能,可读性好,易于扩充。基本功能全面,系统可读性好,易于维护、更新,安全性好。2、需求分析阶段2、1引言进行系统设计,首先要对系统得现状进行分析。根据系统得目标、需求与功能,制定与选择一个较好得系统方案,从而达到一个合理得优化系统。每个学校都有图书馆,最初由于图书数量与种类较少,人工手动管理比较方便与灵活。随着社会得发展,图书得数量与种类越来越多,人工手动管理会降低工作得效率,希望建立一个图书管理系统,就是为了解决人工手动管理图书信息在实践得问题,从而达到系统化、规范化、标准化得水平。该系统得建立不但给管理者带来了方便,也节省了工作时间从而提高了工作效率。需求分析就是在于要弄清用户对开发得数据库应用系统得确切要求、数据库设计得第一步就是明确数据库得目得与如何使用,也就就是说需要从数据库中得到哪些信息。明确目得之后,就可以确定您需要保存哪些主题得信息(表),以及每个主题需要保存哪些信息(表中字段)。在构造系统时,首先从需求出发构造数据库表,然后再由数据库表结合需求划分系统功能模块。这样,就把一个大得系统分解成了几个小系统。这里把系统得层次划分为了四个部分:图书维护,人员信息管理,图书借阅管理,信息查询、能够实现以下功能:eq\o\ac(○,1)进行新书入库、现有图书信息修改以及删除;②能够实现对读者基本信息得查询与编辑管理;③能够进行超期罚款功能;④能够进行借阅信息得查询功能;2、2需求分析阶段得目标与任务2、2、1处理对象读者信息:读者编号,姓名,性别,学号,学院,专业,年级,类型,类别编号,办证日期管理员信息:管理员编号,姓名,性别,权限,登录口令,住址,电话馆藏图书信息:图书编号,索书号,图书名称,作者,出版社,单价,摘要,关键字,副本数,分类,出版日期,状态借阅信息:图书编号,读者编号,图书名,作者,借阅日期,归还日期,归还日期,应还日期,罚金借阅历史信息:图书编号,读者编号,图书名,作者,借阅日期,还书日期罚款信息:读者编号,图书编号,图书名,作者,借阅日期,应还日期,归还日期,罚款金额,处理状态,管理员编号2、2。2处理功能及要求1、能够存储一定数量得图书信息,并方便有效得进行相应得书籍数据操作与管理,这主要包括:1)图书信息得录入、删除及修改。2)图书信息得多关键字检索查询。3)图书得出借、返还及超期罚款或丢失赔偿、2。能够对一定数量得读者、管理员进行相应得信息存储与管理,这其中包括:1)读者信息得登记、删除及修改。2)管理员信息得增加、删除及修改、3)读者资料得统计与查询。3、能够提供一定得安全机制,提供数据信息授权访问,防止随意删改、查询。4、对查询、统计得结果能够列表显示、2。2。3、安全性与完整性要求1)安全性要求系统安全性要求体现在数据库安全性、信息安全性与系统平台得安全性等方面。安全性先通过视图机制,不同得用户只能访问系统授权得视图,这样可提供系统数据一定程度上得安全性,再通过分配权限、设置权限级别来区别对待不同操作者对数据库得操作来提高数据库得安全性;系统平台得安全性体现在操作系统得安全性、计算机系统得安全性与网络体系得安全性等方面。2)完整性要求系统完整性要求系统中数据得正确性以及相容性。可通过建立主、外键,使用check约束,或者通过使用触发器与级联更新。2、3需求分析阶段成果2、3、1体会与收获系统需求分析主要就是通过对本校图书管理员得咨询、请教,了解我校图书馆得管理规则与运行机制,并通过上网搜索有关图书管理系统得知识,了解到了图书管理得现状,以及在管理中得一些问题。由于就是第一次做这样得需求调查,开始总就是觉得无从下手,不知道自己该了解、该清楚那些方面得知识,在绘制系统业务流程图时,也遇到了很多得问题,但通过老师得帮助与指导,与自己一遍一遍得分析与完善,才逐步把业务弄清楚,最终顺利完成了需求分析阶段得任务、2。3、2图书管理系统业务流程图图2.1业务流程图从读者角度考虑得业务流程图:图2.1业务流程图2、3、3图书管理系统数据流程图图2.2顶层数据流顶层数据流图:图2.2顶层数据流第2层数据流图:(读者借阅,读者还书,读者查询,管理员查询,管理员修改)第3层数据流图:(读者借阅)第3层数据流图:(读者还书)第3层数据流图:(查询图书信息,查询读者信息,查询借阅历史,查询罚款信息)第3层数据流图:(管理员添加、删除、修改图书信息)第3层数据流图:(管理员添加、删除、修改读者信息)第3层数据流图:(管理员添加、删除、修改系统用户信息)2。3、4图书管理系统数据字典(a)数据项:系统涉及得数据项有44项表1、1数据项列表数据项编号数据项名数据项含义与其它数据项得关系存储结构别名DI-1BookID图书条码号char(9)条码号DI—2BookNo图书索书号char(10)索书号DI-3BookName图书名char(20)书名DI—4BookWriter图书作者char(8)作者DI—5BookPublish图书出版社char(20)出版社DI-6BookPrice图书单价char(7)单价DI-7BookDate图书出版日期Date出版日期DI-8BookClass图书分类char(20)类别DI-9BookMain图书摘要char(200)摘要DI-10BookPrim图书关键字char(30)关键字DI-11BookCopy图书副本数char(5)副本数DI-12BookState图书就是否可借char(10)状态DI—13BookRNo所属馆室号同RoomNochar(5)馆室号DI—14ReaID读者条码号char(9)条码号DI—15ReaName读者姓名char(10)姓名DI—16ReaSex读者性别char(2)性别DI-17ReaNo读者学号char(9)学号DI—18ReaLBID读者类别编号同LBIDchar(5)类别编号DI-19ReaType读者类型(职务)char(20)类型DI-20ReaDep读者所在学院char(20)学院DI—21ReaGrade读者所属年级char(5)年级DI—22ReaPre读者所读专业char(20)专业DI-23ReaDate读者办证时间Date办证时间DI—24OutDate借阅日期Date借阅时间DI—25InDate归还日期Date归还时间DI—26YHDate应还日期Date应还时间DI—27Fine罚款金额char(3)罚款金额DI-28CLState就是否交纳罚金char(8)处理状态DI-29LBID类别编号同ReaLBIDchar(5)类别编号DI—30LBName读者类别名char(20)类别名DI-31LBnum允许最多借书数量char(5)借阅数量DI—32LBbqx允许最长持有时间char(4)借阅期限DI-33LBqx借阅卡有效期char(3)有效期限DI-34MID管理员编号同RoomMIDchar(10)编号DI—35MName管理员姓名char(10)姓名DI-36MSex管理员性别char(2)性别DI—37Mpwd管理员口令char(8)口令DI—38MAuth管理员权限级别char(4)权限级别DI—39MTeleph管理员电话char(15)电话DI-40MAddre管理员地址char(30)住址DI-41RoomNo馆室号同BookRNochar(5)馆室号DI—42RoomMID馆室管理员编号同MIDchar(10)编号DI—43RoomNum馆室内图书数目char(5)数量DI-44RoomAddre馆室地址char(20)地址(b)数据结构:表1、2数据结构列表数据结构编号数据结构名数据结构含义组成DS—1Book馆藏图书信息BookID,BookNo,BookName,BookWriter,BookPublish,BookPrice,BookDate,BookClass,BookMain,BookPrim,BookCopy,BookState,BookRNoDS—2Reader读者信息ReaID,ReaName,ReaSex,ReaNo,ReaLBID,ReaType,ReaDep,ReaGrade,ReaPref,ReaDate,DS-3Borrow借阅信息BookID,ReaID,BookName,BookWriter,Outdate,YHdateDS-4History借阅历史BookID,ReaID,BookName,BookWriter,Outdate,IndateDS-5Fine罚款信息BookID,ReaID,BookName,Outdate,Indate,Fine,CLState,MIDDS—6ReaderType读者类别LBID,LBName,LBnum,LBbqx,LBqxDS—7Maneger管理员信息MID,MName,MSex,Mpwd,MAuth,MTeleph,MAddreDS-8Room馆室信息RoomNO,RoomMID,RoomNum,RoomAddre2。3。5处理逻辑描述表1。3处理逻辑列表处理编号处理功能处理过程PR—1判断读者查询涉及得功能模块馆藏图书信息模块、读者信息模块、读者类别信息模块、借阅信息模块、借阅历史信息模块、罚款信息模块、管理员模块、馆室信息模块:先确定查询所涉及得功能模块;然后,根据要查询得内容,确定查询数据流向;最后显示查询结果。PR-2判断图书、读者修改要涉及得模块,同时把相应得修改数据传到相应得模块之中馆藏图书信息模块、读者信息模块、读者类别信息模块、管理员信息模块、馆室信息模块:先确定更新所涉及得功能模块;然后,把更新信息传送到相应得模块中;最后,进行相应得更新操作。3概念设计阶段3、1引言系统开发得总体目标就是实现图书馆管理得系统化与自动化,缩短借阅者得等待时间,减轻工作人员得工作量,方便工作人员对它得操作,提高管理得质量与水平,做到高效、智能化管理,从而达到提高图书管理效率得目得。主要任务就是对读者信息、管理员信息、图书资料信息、借阅信息、归还图书信息、罚款信息得基本信息得操作及外理。概念设计阶段主要就是将需求分析阶段得到得用户需求抽象为信息结构(概念模型)得过程,它就是整个数据库设计得关键、3。2任务与目标(1)选择中层数据流为切入点,通常选择实际系统中得子系统;(2)设计分E-R图,即各子模块得E-R图;(3)生成初步E-R图,通过合并方法,做到各子系统实体、属性、联系统一;(4)生成全局E-R图,通过消除冲突等方面、在本图书管理系统中,从第3层数据流程图下手。分析各3层数据流图与数据字典,知道整个系统功能围绕“读者”、“管理员”与“图书”得处理。根据实体与属性间得两条准则:eq\o\ac(○,1)作为“属性”,不能再具有需要描述得性质。eq\o\ac(○,2)“属性”不能与其她实体具有联系。数据流程图2、4、图2、5、图2、6可综合成借阅子系统得分E-R图3、1,数据流程图2。7可抽象为分E—R图3、2,数据流程图2。8可抽象为分E-R图3、3,数据流程图2。9可抽象为分E—R图3。4、然后采用逐步集成得方式将各分E—R图合并,消除不必要得冗余与冲突后就生成了基本E—R图3、5。3。3阶段结果(1)根据不同得对象,从第3层数据流程图入手,分别画出各分E-R图:(a)从数据流程图图(三)与图(四)抽象出得分E-R图:(c)从数据流程图图(六)抽象出得分E-R图:(d)从数据流程图图(七)抽象出得分E—R图:(e)从数据流程图图(八)抽象出得分E-R图:(2)合并各分E-R图,消除属性冲突、命名冲突、结构冲突等三类冲突,得到初步E-R图,再消除不必要冗余,得到得基本E—R图如下所示:(3)各E-R图各实体得属性如下所示:图书:Book(BookID,BookNo,BookName,BookWriter,BookPublish,BookPrice,BookDate,BookClass,BookMain,BookPrim,BookCopy,BookState,BookRN)读者:Reader(ReaID,ReaName,ReaSex,ReaNo,ReaLBID,ReaType,ReaDep,ReaGrade,ReaPref,ReaDate) 管理员:Maneger(MID,MName,MSex,Mpwd,MAuth,MTeleph,MAddre)馆室:Room(RoomNo,RoomMID,RoomNum,RoomAddre) 读者类别:ReaderTpye(LBID,LBName,LBnum,LBbqx,LBqx)各E—R图中联系得属性如下所示:借阅信息:Borrow(BookID,ReaderID,BookName,BookWriter,Outdate,YHdate)借阅历史:History(BookID,ReaderID,BookName,BookWriter,Outdate,Indate)罚款信息:Fine(BookID,ReaderID,BookName,Outdate,Indate,Fine,CLState,MID)4、逻辑设计阶段4、1逻辑设计得任务与目标以上得概念设计阶段就是独立于任何一种数据模型得,但就是逻辑设计阶段就与选用得DBMS产品发生关系了,系统逻辑设计得任务就就是将概念设计阶段设计好得基本E-R图转换为选用DBMS产品所支持得数据模型相符合得逻辑结构。具体内容包括数据组织(将E-R图转换成关系模型、模型优化、数据库模式定义、用户子模式设计)、数据处理(画出系统功能模块图)两大任务。4、2数据组织4。2、1将E—R图转换为关系模型实体型转换为关系模式。实体得属性就就是关系得属性,实体得码就就是关系得码。对于实体间得联系则有以下不同得情况:

一个m:n联系转换为一个关系模式、与该联系相连得各实体得码以及联系本身得属性均转换为关系得属性,而关系得码为各实体码得组合。一个1:n联系可以转换为一个独立得关系模式,也可以与n端对应得关系模式合并。如果转换为一个独立得关系模式,则与该联系相连得各实体得码以及联系本身得属性均转换为关系得属性,而关系得码为n端实体得码。ﻭ一个1:1联系可以转换为一个独立得关系模式,也可以与任意一端对应得关系模式合并。三个或三个以上实体间得一个多元联系可以转换为一个关系模式。与该多元联系相连得各实体得码以及联系本身得属性均转换为关系得属性,而关系得码为各实体码得组合

具有相同码得关系模式可合并。由于读者类别与读者、馆室与图书得联系方式就是1:n(一对多),可以将其之间得联系与n端实体读者、图书合并,管理员与图书之间得维护联系也就是1:n(一对多),同样也将其之间得联系与n端实体合并,而读者与图书之间得借阅与归还联系方式则就是n:m(多对多),这样要把它们之间得联系转化为独立得关系模式,读者与管理员之间得罚款联系就是m:n(多对多),将其联系也转化成独立得关系模式,具体得基本E-R图向关系模型得转化如下:图书:Book(BookID,BookNo,BookName,BookWriter,BookPublish,BookPrice,BookDate,BookClass,BookMain,BookPrim,BookCopy,BookState,BookRNo)读者:Reader(ReaID,ReaName,ReaSex,ReaNo,ReaLBID,ReaType,ReaDep,ReaGrade,ReaPref,ReaDate)管理员:Maneger(MID,MName,MSex,Mpwd,MAuth,MTeleph,MAddre)读者类别:ReaderTpye(LBID,LBName,LBnum,LBbqx,LBqx)馆室:Room(RoomNo,RoomMID,RoomNum,RoomAddre)借阅信息:Borrow(BookID,ReaderID,BookName,BookWriter,Outdate,YHdate)借阅历史:History(BookID,ReaderID,BookName,BookWriter,Outdate,Indate,YHdate)罚款信息:Fine(BookID,ReaderID,BookName,Outdate,Indate,Fine,CLState,MID)(注:标有直线下划线得为主属性,标有波浪线下划线得就是外键属性,主属性与外键属性一起构成主码)4、2、2模型优化关系模式Book,Reader,Room,ReaderType,Maneger不存在非主属性对主属性得部分函数依赖,也不存在传递函数依赖,已经达到了3NF,但就是借阅关系模式、借阅历史关系模式、罚款关系模式(Borrow,History,Fine)中存在着一些数据冗余,现将三个关系模型进行合并,消除冗余,优化为:借阅信息:Borrow(BookID,ReaderID,BookName,BookWriter,Outdate,Indate,YHdate,Fine,CLStaer,MID)4。2、3数据库模式定义表2、1馆藏图书信息表列名数据类型可否为空说明BookIDCharnotnull图书编号BookNoCharnotnull图书得索书号BookNameCharnotnull图书得书名BookWriterCharnotnull图书作者BookPulishCharnotnull图书出版社BookPriceChar图书得单价BookDateDate出版日期BookClassChar图书得分类BookMainChar图书得摘要BookPrimChar图书得关键字BookCopyChar图书得副本数BookStateCharnotnull图书就是否可借BookRNoCharnotnull图书所在馆室号表2、2读者信息表列名数据类型可否为空说明ReaIDCharnotnull读者编号ReaNameCharnotnull读者姓名ReaSexCharnotnull读者性别ReaNoCharnotnull读者学号ReaLBIDCharnotnull读者类别编号ReaTypeChar读者类型ReaDepChar读者所在学院ReaPrefChar读者所属专业ReaGradeChar读者得年级ReaDateDatenotnull办证日期表2。3管理员信息表列名数据类型可否为空说明MIDCharnotnull管理员编号MNameCharnotnull管理员姓名MSexChar管理员性别MpswCharnotnull管理员密码MAuthCharnotnull管理员权限MTelephChar管理员电话MAddreChar管理员地址表2、4馆室信息表列名数据类型可否为空说明RoomNoCharnotnull馆室号RoomMIDCharnotnull馆室管理员编号RoomNumChar馆室拥有图书数目RoomAddreChar馆室地址表2、5读者类别信息表列名数据类型可否为空说明LBIDCharnotnull读者类别编号LBNameCharnotnull读者类别名LBnumCharnotnull允许借阅图书最大数LBbqxCharnotnull持有图书最长期限LBqxCharnotnull借阅证期限表2、6借阅信息表列名数据类型可否为空说明ReaIDCharnotnull读者编号BookIDCharnotnull图书编号BookNameCharnotnull图书名BookWriterChar作者OutdateDatenotnull借阅时间IndateDate归还时间YHdateDatenotnull应还时间FineChar罚款金额CLStateChar处理状态MIDCharnotnull管理员编号4、2。4用户子模式定义表2。7用户子模式定义编号用户子模式(View)作用(共性:提供数据保密与安全保护机制)V—1BookView便于查询与修改图书得基本信息V—2ReaderView方便读者基本信息得查询、更新V—3HistoryView便于借阅历史信息得查询V-4BorrowView用于当前借阅信息得查询V-5FineView便于查询罚款信息表2。8读者基本信息视图列名数据类型可否为空说明ReaIDCharnotnull读者编号ReaNameCharnotnull读者姓名ReaSexCharnotnull读者性别ReaTypeChar读者类型ReaDepChar读者所在学院ReaDateDatel办证日期表2、9图书基本信息视图列名数据类型可否为空说明BookNoCharnotnull图书得索书号BookNameCharnotnull图书得书名BookWriterCharnotnull图书作者BookPulishCharnotnull图书出版社BookStateCharnotnull图书就是否可借BookRNoCharnotnull图书所在馆室号表2。10读者当前借阅信息视图列名数据类型可否为空说明BookIDCharnotnull图书编号BookNameCharnotnull图书名OutdateDatenotnull借阅时间YHdateDatenotnull应还时间表2。11读者借阅历史信息视图列名数据类型可否为空说明BookIDCharnotnull图书编号BookNameCharnotnull图书名OutdateDatenotnull借阅时间IndateDate归还时间表2、12读者罚款信息视图列名数据类型可否为空说明BookIDCharnotnull图书编号BookNameCharnotnull图书名OutdateDatenotnull借阅时间IndateDate归还时间FineCharnotnull罚款金额CLStateCharnotnull处理状态4、3数据处理系统功能模块图:5。物理设计阶段5。1物理设计阶段得目标与任务ﻩ数据库得物理设计就就是为逻辑数据模型选取一个最合适应用要求得物理结构得过程,在这个阶段中要完成两大任务:(1)确定数据库得物理结构,在关系数据库中主要就是存取方法与存储结构;(2)对物理结构进行评价,评价得重点就是时间与空间效率。5、2数据存储方面 为数据库中各基本表建立得索引如下:由于基本表Reader,Book得主码ReaID,BookID经常在查询条件与连接操作得连接条件中出现,且它们得值唯一,在两个属性上建立唯一性索引;由于基本表Reader得属性ReaDep,Book得属性BookPublish经常在查询条件中出现在两个属性上建立聚簇索引;借阅信息基本表Borrow得一属性ReaID,BookID,经常在查询条件中出现,考虑在其之上建立聚簇索引;罚款信息基本表Fine得一属性ReaID,BookID,经常在查询条件中出现,考虑在其之上建立聚簇索引;5。3系统功能模块5、3、1读者基本信息得查询与更新模块ﻩ将实现对读者基本信息得查询与更新(修改、添加、删除)操作,用于新生入学,毕业生离校,以及读者补办借阅证或更改信息得情况,具体得功能模块图如下:5、3、2图书基本信息得查询与更新模块 将完成对图书基本信息得查询、更新(修改、添加、删除)操作,用于读者对图书信息得查询及管理员添加新书、删除淘汰得旧书,具体得功能模块图如下所示:6。数据库实施阶段6、1建立数据库、数据表、视图、索引6。1、1建立数据库 createdatabaseBook;6。1、2建立数据表(1)读者类别信息表得建立:createtableReaderType(LBIDchar(5)primarykey,LBNamechar(20)notnull,LBnumchar(5)notnull,LBbqxchar(4)notnull,LBqxchar(3)notnull,)(2)管理员基本信息表得建立:createtableManeger(MIDchar(10)primarykey,MNamechar(10)notnull,MSexchar(2),Mpwdchar(8)notnull,MAuthchar(40)notnull,MTelephchar(15),MAddrechar(30),check(MSex=’男'orMSex=’女'))(3)图书馆室基本信息表得建立:createtableRoom(RoomNochar(5)primarykey,RoomMIDchar(10)notnull,Roomnumchar(5),RoomAddrechar(20),foreignkey(RoomMID)referencesManeger(MID),)(4)馆藏图书基本信息表得建立:createtableBook(BookIDchar(9)primarykey,BookNochar(20)notnull,BookNamechar(50)notnull,BookWriterchar(30)notnull,BookPublishchar(20)notnull,BookPricechar(7),BookDatedatetime,BookClasschar(20),BookMainchar(200),BookPrimchar(30),BookCopychar(5),BookStatechar(10)notnull,BookRNochar(5)notnull,foreignkey(BookRNo)referencesRoom(RoomNo),)(5)读者基本信息表得建立:createtableReader(ReaIDchar(9)primarykey,ReaNamechar(10)notnull,ReaSexchar(2)notnull,ReaNochar(9)notnull,ReaLBIDchar(5)notnull,ReaTypechar(20),ReaDepchar(20),ReaGradechar(5),ReaPrefchar(20),ReaDateDatetime,foreignkey(ReaLBID)referencesReaderType(LBID),check(ReaSex=’男'orReaSex='女'))(6)借阅基本信息表得建立:createtableBorrow(BookIDchar(9),ReaIDchar(9),OutdateDatetimenotnull,YHdateDatetimenotnull,IndateDatetime,Finechar(5),CLStatechar(8),MIDchar(10)notnull,primarykey(BookID,ReaID),foreignkey(MID)referencesManeger(MID))6、1、3建立视图 (1)用于查询图书基本信息得视图定义如下: ﻩ createviewBookview(索书号,书名,作者,出版社,图书状态)asselectBookNo,BookName,BookWriter,BookPublish,BookStatefromBook (2)用于读者基本信息查询得视图定义如下:ﻩﻩ createviewReaderview(读者姓名,类型,学院,专业,办证日期)asselectReaName,ReaType,ReaDep,ReaPref,ReaDatefromReaderﻩ(3)用于显示当前借阅基本信息得视图定义如下: createviewBorrowview(读者编号,书名,作者,借阅日期,到期日期)asselectReaID,BookName,BookWriter,Outdate,YHdatefromBorrow,BookwhereBorrow、BookID=Book、BookIDandBorrow、Indateisnull (4)用于借阅历史信息查询得视图定义如下: ﻩcreateviewHistoryview(读者编号,书名,借阅日期,归还日期)asselectReaID,BookName,Outdate,IndatefromBorrow,BookwhereBorrow、BookID=Book、BookIDandBorrow、Indateisnotnullﻩ(5)用于查询罚款信息得视图定义如下: createviewFineview(读者编号,书名,借阅日期,归还日期,罚款,处理状态)asselectReaID,BookName,Outdate,Indate,Fine,CLStatefromBorrow,BookwhereBorrow。BookID=Book、BookIDandFineisnotnull6。1、4建立索引createclusteredindexBookPublishonBook(BookPublish);createclusteredindexReaDeponReader(ReaDep);6、1。5建立触发器1、当删除Reader表中某一读者基本信息时,触发Borrow表,删除相应得记录createtriggerReader_deleteonReaderfordeleteasdeleteBorrowfromdeletedwhereBorrow、ReaID=deleted、ReaID2。当在中增加一条借阅记录时,使该图书得状态由“可借”变为“不可借”createtriggerBorrow_insert1onBorrowforinsertasdeclareBookIDchar(9)selectBookID=BookIDfrominsertedupdateBooksetBookState='不可借'whereBookID=BookID6。2数据入库 系统包括图书基本信息管理、读者基本信息管理、管理员信息管理、借阅信息管理、查询信息管理等四大功能模块,共有6张基本表,采用事先在Excel中录入数据,然后使用SQLServer2000数据导入/导出向导功能,直接将数据导入到相应得基本表中。6、3创建各个功能得存储过程ﻩ系统共创建了10个存储过程,具体列表如下:表3、1创建得存储过程列表:编号存储过程名称定义作用P-1Book_Insert详见附录1-1在Book中插入一元组P—2Reader_Insert详见附录1-2在Reader中插入一元组P—3Maneger_Insert详见附录1-3在Maneger中插入一元组P—4Borrow_Insert详见附录1-4在Borrow中插入一元组P-5Delete_Book详见附录1-10从Book中删除一元组P—6Delete_Reader详见附录1—9从Reader中删除一元组P—7Query_Reader_R详见附录1—5读者在Reader中查询本人信息P—8Query_Reader_M详见附录1-6管理员在Reader中查询全部读者P-9Query_Book_Writer详见附录1-7在Book,按作者查询P—10Query_Book_Name_Publish详见附录1-8在Book中,按书名与出版社查询(其它表得查询、修改、删除与以上各表得存储过程定义大致相同,这里不再具体列出)7、系统调试与测试对该图书管理系统进行测试,验证每个功能就是否符合要求,具体得测试如下:(1)通过视图查瞧各个基本表与视图中得数据(见附录2)(2)检测各个存储过程得功能:(见附录2)8、实习心得这次课程设计使我熟悉了系统设计得整体步骤。系统设计大体可分为需求分析、概念设计、逻辑设计、物理设计、数据库得实施及调试测试六大步骤。其中,让我感触最深得就是需求分析阶段,在这个阶段,必须对所要设计得系统有总体得构思与了解,知道自己要做什么,要实现什么,并且要实际得进行相关得调查,不能凭想象或自己得了解,这样会在后续得工作中遇到很多得问题。这次课程设计加深了我对数据库系统概论相关知识与SQLSERVER相关功能得理解、例如对建立基本表、视图、索引、存储过程、触发器等,都比以前更加得熟练。并在解决遇到得各种问题得过程中,学到了很多新得知识。比如在导入\导出数据时,由于外键约束得存在,经常会出现错误,这就要注意各个表导入得顺序问题。一般就是先导入主键表,后导入外键表,这样可以避免很多得错误、我进一步掌握了相关得SQL语句方面得知识。不但纠正了以前得错误认识与理解,而且学会了建立存储过程与触发器。通过查阅资料,我还明白了存储过程就是编译后放在服务器端得程序,它可以被别得模块调用,且不需要重新编译,这样就大大减轻了客户端得负担,且有效得提高了系统执行得效率、4。当然,在实习得过程中也存在一些问题、由于需求分析阶段得工作完成得不就是很充分,在后面得设计过程中,前后时常会出现矛盾,不一致现象,因此要反复得修改前面得结果,导致整个工作进行得不就是很顺利。9、存在得问题及建议1、我觉得在这次课程设计中,需求分析阶段就是致关重要得,但由于同学们都就是第一次做这样得系统设计,都不就是很熟悉需求分析得主要方法与主要任务,所以都很盲目,认为随便从网上搜点相关得知识就可以了,但其实,这直接影响着后面得各个阶段得工作得进行。所以希望老师在实习前能给我们对需求分析阶段得工作进行一定得指导。2、在实习过程中,虽然我们每个班都配备了两到三名指导老师,可各指导老师轮流上班,当我们遇到问题时,有时在身边找不到老师,而浪费了一些宝贵得时间,或者就是本班得指导老师在给别班得学生指导,所以也可能会耗费一定得等待时间。3。但总得说来,这次实习得各个指导老师都就是知识渊博,经验丰富,并且十分热情得,我们请教得任何问题,老师都会耐心而认真得为我们解决,老师不但帮我们解决了问题,同时也教会了我们解决此类问题得方法,这对我们今后得学习就是十分有益得、致谢在这次数据库课程设计得整个过程中,都受到了指导教师杨丽丽老师、陈勇老师、武苏里老师细心得指导与关怀,同时蔚继承老师、杨晓辉老师、孙建敏老师也给予了我很大得帮助。对此,表示忠心得感谢!没有老师得耐心指导,我根本不可能顺利完成此次课程设计得任务。在这里,我尤其要真诚得感谢杨丽丽老师与蔚继承老师,两位老师丰富得知识与编程经验帮我解决了不少得难题,同时也给我传授了不少新得知识与技巧。同时也感谢给过我帮助与鼓励得同学,就是她们得帮助与鼓励,在我遇到困难时,为我点亮了希望得灯塔;在我灰心丧气时,带给我力量与信心。参考文献[1]萨师煊王珊,数据库系统概论(第三版),北京:高教出版社,2000[2]软件开发与指导;人民邮电出版社[3]Delpehi数据库开发毕业设计指导及实例;机械工业出版社,2004附录1存储过程定义1。Book_Insert得定义:CREATEPROCEDUREBook_InsertBookIDchar(9),BookNochar(20),BookNamechar(50),BookWriterchar(30),BookPublishchar(20),BookPricechar(7),BookDatedatetime,BookClasschar(20),BookMainchar(200),BookPrimchar(30),BookCopychar(5),BookStatechar(10),BookRNochar(5)as insertintoBookvalues(BookID,BookNo,BookName,BookWriter,BookPublish,BookPrice,BookDate,BookClass,BookMain,BookPrim,BookCopy,BookState,BookRNo);2、Reader_Insert得定义:CREATEPROCEDUREReader_InsertReaIDchar(9),ReaNamechar(10),ReaSexchar(2),ReaNochar(9),ReaLBIDchar(5),ReaTypechar(20),ReaDepchar(20),ReaGradechar(5),ReaPrefchar(20),ReaDateDatetimeas insertintoReadervalues(ReaID,ReaName,ReaSex,ReaNo,ReaLBID,ReaType,ReaDep,ReaGrade,ReaPref,ReaDate);3、Maneger_Insert得定义:CREATEPROCEDUREManeger_InsertMIDchar(10),MNamechar(10),MSexchar(2),Mpwdchar(8),MAuthchar(40),MTelephchar(15),MAddrechar(30)asﻩinsertintoManegeralues(MID,MName,MSex,Mpwd,MAuth,MTeleph,MAddre);4。Borrow_Insert得定义:CREATEPROCEDUREBorrow_InsertBookIDchar(9),ReaIDchar(9),OutdateDatetime,YHdateDatetime,IndateDatetime,Finechar(5),CLStatechar(8),MIDchar(10)asﻩinsertintoBorrowvalues(BookID,ReaID,Outdate,YHdate,Indate,Fine,CLState,MID);5。Query_Reader_R得定义:createprocedureQuery_Reader_R ﻩReaIDchar(9) asﻩ select*ﻩﻩfromReaderview where编号=ltrim(ReaID);6、Query_Reader_M得定义:createprocedureQuery_Reader_Masﻩselect* fromReaderview7。Query_Book_Writer得定义:createprocedureQuery_Book_WriterﻩﻩBookWriterchar(50) ﻩas select*ﻩ fromBookviewwhere作者like’%'+ltrim(BookWriter)+’%';8。Query_Book_Name_Publish得定义:createprocedureQuery_Book_Name_PublishBookNamechar(50),BookPublishchar(20)asselect*fromBookviewwhere书名=ltrim(BookName)and出版社=ltrim(BookPublish);9、Delete_Reader得定义:createprocedureDelete_Reader ﻩReaNochar(9) asﻩﻩdeleteﻩ fromReader whereReaNo=ltrim(ReaNo);10、Delete_Book得定义:createprocedureDelete_Book ﻩBookIDchar(9) as deleteﻩﻩfromBook whereBookID=ltrim(BookID);附录2数据查瞧与存储过程功能得验证基本表得数据查瞧(基于视图查询):查瞧Reader(读者信息表)表中得数据查瞧Bookview(图书信息)表中得数据:查瞧Borrow(借阅信息)表中得数据:4)查瞧Maneger(管理员信息表)表中得数据5)查瞧Room(馆室信息表)表中得数据:6)查瞧Borrowview(当前借阅信息)视图中得数据:7)查瞧Historyview(借阅历史信息)视图得数据:8)查瞧Fineview(罚款信息)视图得基本数据:存储过程功能得验证:存储过程Query_Reader_R功能得验证:(按ReaID匹配查询读者信息)存储过程Query_Book_Writer功能得验证:(按BookWriter模糊查询图书信息)3)存储过程Query_Book_Nmae_Publish功能得验证:(按书名与出版社查询图书信息)4)存储过程Query_Reader_M功能得验证:(以管理员身份查询读者信息)5)存储过程Reader_Insert功能得验证:(插入一条读者信息记录)6)存储过程Borrow_Insert功能得验证:(插入一条借阅信息记录)7)存储过程Delete_Reader功能得验证:(按ReaNo删除相应得读者记录)(注:由于篇幅限制,这里仅给出了其中几个存储过程功能得验证)触发器功能得验证:(在Borrow表中插入一条记录,触发Book表将图书由“可借”状态改为“不可借”状态)附录3所有得SQL运行语句createdatabaseBook;createtableReaderType(LBIDchar(5)primarykey,LBNamechar(20)notnull,LBnumchar(5)notnull,LBbqxchar(4)notnull,LBqxchar(3)notnull,)createtableManeger(MIDchar(10)primarykey,MNamechar(10)notnull,M

温馨提示

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

评论

0/150

提交评论