欢迎来到三一文库! | 帮助中心 三一文库31doc.com 一个上传文档投稿赚钱的网站
三一文库
全部分类
  • 研究报告>
  • 工作总结>
  • 合同范本>
  • 心得体会>
  • 工作报告>
  • 党团相关>
  • 幼儿/小学教育>
  • 高等教育>
  • 经济/贸易/财会>
  • 建筑/环境>
  • 金融/证券>
  • 医学/心理学>
  • ImageVerifierCode 换一换
    首页 三一文库 > 资源分类 > DOC文档下载  

    数据库课程设计--图书馆管理系统.doc

    • 资源ID:14863117       资源大小:145.50KB        全文页数:25页
    • 资源格式: DOC        下载积分:6
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录   微博登录  
    二维码
    微信扫一扫登录
    下载资源需要6
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    数据库课程设计--图书馆管理系统.doc

    精品文档数据库系统概论课程设计设计题目:图书管理系统学院:计算机信息与科学学院专业:计算机科学与技术学号:20210514323姓名:刘静指导教师:潘林森目 录1引言12. 需求分析阶段22.1任务概述目标.222数据需求:. 3 概念设计阶段9 3.1 任务与目标.9 3.2 各阶段的结果3.3各ER图中联系的属性4逻辑设计阶段124.1逻辑设计的任务和目标124.2数据组织12将E-R图转换为关系模型12模型优化134.3具体的根本E-R图向关系模型转化5物理设计阶段175.1物理设计阶段的目标与任务175.2数据存储方面175.3系统功能模块175.3.1 读者根本信息的查询和更新模块175.3.2 图书根本信息的查询和更新模块186数据库实施阶段196.1建立数据库、数据表、视图、索引196.1.1 建立数据库196.1.2 建立数据表196.1.3 建立视图216.1.4 建立索引216.1.5 建立触发器226.2数据入库226.3创立各个功能的存储过程227系统调试和测试238实习心得和缺乏239.参考文献251.引言通过课程设计,使学生掌握数据库的根本概念,结合实际的操作和设计,稳固课堂教学内容,使学生掌握数据库系统的根本概念、原理和技术,将理论与实际相结合,应用现有的数据建模工具和数据库管理系统软件,标准、科学地完成一个小型数据库的设计与实现,把理论课与实验课所学内容做一综合,并在此根底上强化学生的实践意识、提高其实际动手能力和创新能力。 本文以高校图书馆管理系统开发过程为背景,全文分为目录、需求分析、概要设计、逻辑设计、物理设计,以及系统的实现等全过程。在程序设计与调试上采用了自上而下,逐步细化,逐步完善的原那么。采用结构化的功能模块设计系统功能,可读性好,易于扩充。根本功能全面,系统可读性好,易于维护、更新,平安性好。运用关系型数据库管理系统,实现图书馆管理系统。为此我们小组做了一个图书馆管理系统的课程设计以实现要求如下:1能够存储一定数量的图书信息,并方便有效的进行相应的书籍数据操作和管理,这主要包括:1) 图书信息的录入、删除及修改。2) 图书信息的多关键字检索查询。3) 图书的出借、返还及超期罚款或丧失赔偿。能够对一定数量的读者、管理员进行相应的信息存储与管理,这其中包括:1) 读者信息的登记、删除及修改。 2 管理员信息的增加、删除及修改。 3) 读者资料的统计与查询。3能够提供一定的平安机制,提供数据信息授权访问,防止随意删改、查询。4对查询、统计的结果能够列表显示。2.需求分析阶段2.1任务概述目标:1实现以下功能:1能够存储一定数量的图书信息,并方便有效的进行相应的书籍数据操作和管理,这主要包括:1) 图书信息的录入、删除及修改。2) 图书信息的多关键字检索查询。3) 图书的出借、返还及超期罚款或丧失赔偿。能够对一定数量的读者、管理员进行相应的信息存储与管理,这其中包括:1) 读者信息的登记、删除及修改。 2 管理员信息的增加、删除及修改。 3) 读者资料的统计与查询。3能够提供一定的平安机制,提供数据信息授权访问,防止随意删改、查询。4对查询、统计的结果能够列表显示。2 运行环境: Windows 2000/XP/2003操作系统下,安装并配置软件Microsoft SQL Server 2000数据库管理系统。22数据需求:1 数据流条目:登录用户=用户名+密码 读者=编号+姓名+性别+学院+证件号码 图书信息=图书编号+书名+作者+出版日期+出版社+单价价+所属类型借书信息=读者编号+图书编号+借书日期+到期日期+图书名+作者还书信息=图书编号+图书编号+还书日期+图书名+作者2 数据字典DD:名字:图书编号别名:描述:唯一地标识每一本图书的关键域定义:图书序列号=1numeric10位置:新书入库 借阅登记 借阅查询 图书整理超期提示名字:书名别名:描述:标识每一本图书的实际名字定义:图书名称=1nvarchar50位置:新书入库借阅登记借阅查询 图书整理超期提示 名字:作者别名:描述:标识每一本图书的写作者定义:图书作者=1nvarchar20位置:新书入库借阅登记图书整理 名字:出版社别名:描述:标识每一本图书的出版处定义:图书出版社=1nvarchar50位置:新书入库借阅登记图书整理 名字:出版日期别名:描述:标识每一本图书的出版时间定义:图书出版日期=8nvarchar20位置:新书入库借阅登记图书整理 名字:价格别名:描述:标识每一本图书的实际名字定义:图书定价=1nvarchar10位置:新书入库借阅登记图书整理名字:所属类型别名:描述:标识图书的分类种类定义:图书类型=1nvarchar2位置:图书入库 新书入库借阅登记图书整理 3.概念结构设计3.1 任务与目标1选择中层数据流为切入点,通常选择实际系统中的子系统; 2设计分E-R图,即各子模块的E-R图; 3生成初步E-R图,通过合并方法,做到各子系统实体、属性、联系统一; 4生成全局E-R图,通过消除冲突等方面。在本图书管理系统中,从第3层数据流程图下手。分析各3层数据流图和数据字典,知道整个系统功能围绕“读者、“管理员和“图书的处理。根据实体与属性间的两条准那么:作为“属性,不能再具有需要描述的性质。“属性不能与其他实体具有联系。数据流程图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.2 各阶段的结果1根据不同的对象,从第3层数据流程图入手,分别画出各分ER图:a从数据流程图图(三) 与图(四)抽象出的分ER图:c从数据流程图图(六)抽象出的分ER图:d从数据流程图图(七)抽象出的分ER图:e从数据流程图图(八)抽象出的分ER图:2合并各分图,消除属性冲突、命名冲突、结构冲突等三类冲突,得到初步E-R图,再消除不必要冗余,得到的根本E-R图如下所示:3各ER图各实体的属性如下所示:图书: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)3.3各ER图中联系的属性各ER图中联系的属性如下所示:借阅信息: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数据组织将E-R图转换为关系模型实体型转换为关系模式。实体的属性就是关系的属性,实体的码就是关系的码。对于实体间的联系那么有以下不同的情况:一个m:n联系转换为一个关系模式。与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为各实体码的组合。一个1:n联系可以转换为一个独立的关系模式,也可以与n端对应的关系模式合并。如果转换为一个独立的关系模式,那么与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为n端实体的码。 一个1:1联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。三个或三个以上实体间的一个多元联系可以转换为一个关系模式。与该多元联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为各实体码的组合 具有相同码的关系模式可合并。由于读者类别与读者、馆室与图书的联系方式是1:n一对多,可以将其之间的联系与n端实体读者、图书合并,管理员与图书之间的维护联系也是1:n一对多,同样也将其之间的联系与n端实体合并,而读者与图书之间的借阅和归还联系方式那么是n:m多对多,这样要把它们之间的联系转化为独立的关系模式,读者与管理员之间的罚款联系是m:n多对多,将其联系也转化成独立的关系模式,4.3具体的根本E-R图向关系模型转化具体的根本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) 注:标有直线下划线的为主属性,标有波浪线下划线的是外键属性,主属性与外键属性一起构成主码5物理设计阶段5.1物理设计阶段的目标与任务 数据库的物理设计就是为逻辑数据模型选取一个最适宜应用要求的物理结构的过程,在这个阶段中要完成两大任务:1确定数据库的物理结构,在关系数据库中主要是存取方法和存储结构;2对物理结构进行评价,评价的重点是时间和空间效率。5.2数据存储方面为数据库中各根本表建立的索引如下:1. 由于根本表Reader,Book的主码ReaID,BookID经常在查询条件和连接操作的连接条件中出现,且它们的值唯一,在两个属性上建立唯一性索引;2. 由于根本表Reader的属性ReaDep,Book的属性BookPublish经常在查询条件中出现在两个属性上建立聚簇索引;3. 借阅信息根本表Borrow的一属性ReaID,BookID,经常在查询条件中出现,考虑在其之上建立聚簇索引;4. 罚款信息根本表Fine的一属性ReaID,BookID,经常在查询条件中出现,考虑在其之上建立聚簇索引;5.3系统功能模块 读者根本信息的查询和更新模块将实现对读者根本信息的查询和更新修改、添加、删除操作,用于新生入学,毕业生离校,以及读者补办借阅证或更改信息的情况,具体的功能模块图如下: 图书根本信息的查询和更新模块将完成对图书根本信息的查询、更新修改、添加、删除操作,用于读者对图书信息的查询及管理员添加新书、删除淘汰的旧书,具体的功能模块图如下所示:6数据库实施阶段6.1建立数据库、数据表、视图、索引 建立数据库create database Book; 建立数据表1读者类别信息表的建立:create table ReaderType(LBID char(5) primary key,LBName char(20) not null,LBnum char(5) not null,LBbqx char(4) not null,LBqx char(3) not null,)2管理员根本信息表的建立:create table Maneger(MID char(10) primary key,MName char(10) not null,MSex char(2),Mpwd char(8) not null,MAuth char(40) not null,MTeleph char(15),MAddre char(30),check(MSex ='男' or MSex ='女')3图书馆室根本信息表的建立:create table Room(RoomNo char(5) primary key,RoomMID char(10) not null,Roomnum char(5),RoomAddre char(20),foreign key(RoomMID) references Maneger(MID),)4馆藏图书根本信息表的建立:create table Book( BookID char(9) primary key, BookNo char(20) not null, BookName char(50) not null, BookWriter char(30) not null, BookPublish char(20) not null, BookPrice char(7), BookDate datetime, BookClass char(20), BookMain char(200), BookPrim char(30), BookCopy char(5), BookState char(10) not null, BookRNo char(5) not null,foreign key(BookRNo) references Room(RoomNo),)5读者根本信息表的建立:create table Reader(ReaID char(9) primary key,ReaName char(10) not null,ReaSex char(2) not null,ReaNo char(9) not null,ReaLBID char(5) not null,ReaType char(20),ReaDep char(20),ReaGrade char(5),ReaPref char(20),ReaDate Datetime,foreign key(ReaLBID) references ReaderType(LBID),check(ReaSex ='男' or ReaSex ='女')6借阅根本信息表的建立:create table Borrow(BookID char(9),ReaID char(9),Outdate Datetime not null,YHdate Datetime not null,Indate Datetime,Fine char(5),CLState char(8),MID char(10) not null,primary key(BookID,ReaID),foreign key(MID) references Maneger(MID)7读者类别信息表的建立create table ReaderType(LBID char(5) primary key,LBName char(20) not null,LBnum char(5) not null,LBbqx char(4) not null,LBqx char(3) not null,) 建立视图1用于查询图书根本信息的视图定义如下: create view Bookview (索书号, 书名, 作者, 出版社, 图书状态)asselect BookNo,BookName,BookWriter,BookPublish,BookState from Book2用于读者根本信息查询的视图定义如下:create view Readerview (读者姓名,类型,学院,专业,办证日期)asselect ReaName,ReaType,ReaDep,ReaPref,ReaDatefrom Reader3用于显示当前借阅根本信息的视图定义如下:create view Borrowview (读者编号,书名,作者,借阅日期,到期日期)asselect ReaID,BookName,BookWriter,Outdate,YHdatefrom Borrow,Bookwhere Borrow.BookID=Book.BookID and Borrow.Indate is null4用于借阅历史信息查询的视图定义如下:create view Historyview (读者编号,书名,借阅日期,归还日期)asselect ReaID,BookName,Outdate,Indatefrom Borrow,Bookwhere Borrow.BookID=Book.BookID and Borrow.Indate is not null5用于查询罚款信息的视图定义如下:create view Fineview (读者编号,书名,借阅日期,归还日期,罚款,处理状态)asselect ReaID,BookName,Outdate,Indate,Fine,CLStatefrom Borrow,Bookwhere Borrow.BookID=Book.BookID and Fine is not null6.1.4 建立索引create clustered index BookPublish on Book(BookPublish);create clustered index ReaDep on Reader(ReaDep); 建立触发器1当删除Reader表中某一读者根本信息时,触发Borrow表,删除相应的记录create trigger Reader_deleteon Readerfor deleteas delete Borrowfrom deletedwhere Borrow.ReaID=deleted.ReaID2当在中增加一条借阅记录时,使该图书的状态由“可借变为“不可借create trigger Borrow_insert1on Borrowfor insertas declare BookID char(9)select BookID=BookIDfrom insertedupdate Bookset BookState='不可借'where BookID=BookID7.数据库的实施和维护对该图书管理系统进行测试,验证每个功能是否符合要求,测试思路如下:1通过视图查看各个根本表和视图中的数据2检测各个存储过程的功能:8.学习所得及缺乏1所得:任何一个社会组织和企业公司在开展过程中都会产生大量的数据,这些数据的组织存储、分析统计有利于提高企业的开展,有利于提高企业的效率。这些数据的组织和存储就是数据模型,就是数据库应用系统开发的任务。数据库应用系统开发的过程一般包括可行性研究、需求分析、系统设计、程序编码、程序调试和系统维护六个阶段。根据数据库应用系统的复杂程度,不一定完全刻板地遵守上述步骤,但是,可行性研究、需求分析、系统设计、程序编码、程序调试是不可缺少的。这次课程设计加深了我对数据库系统概论相关知识和SQL SERVER相关功能的理解。例如对建立根本表、视图、索引、存储过程、触发器等,都比以前更加的熟练。并在解决遇到的各种问题的过程中,学到了很多新的知识。比方在导入导出数据时,由于外键约束的存在,经常会出现错误,这就要注意各个表导入的顺序问题。我进一步掌握了相关的SQL语句方面的知识。不但纠正了以前的错误认识和理解还复习了一遍以前学习的知识,而且学会了建立存储过程和触发器。通过查阅资料,我还明白了存储过程是编译后放在效劳器端的程序,它可以被别的模块调用,且不需要重新编译,这样就大大减轻了客户端的负担,且有效的提高了系统执行的效率。这次课程设计使我熟悉了系统设计的整体步骤。系统设计大体可分为需求分析、概念设计、逻辑设计、物理设计、数据库的实施及调试测试六大步骤。其中,让我感触最深的是需求分析阶段,在这个阶段,必须对所要设计的系统有总体的构思和了解,知道自己要做什么,要实现什么,并且要实际的进行相关的调查,不能凭想象或自己的了解,这样会在后续的工作中遇到很多的问题。 当然,在实习的过程中也存在一些问题。由于需求分析阶段的工作完成的不是很充分,在后面的设计过程中,前后时常会出现矛盾,不一致现象,因此要反复的修改前面的结果,导致整个工作进行的不是很顺利。2缺乏:我觉得在这次课程设计中,需求分析阶段是致关重要的,但由于同学们都是第一次做这样的系统设计,都不是很熟悉需求分析的主要方法和主要任务,所以都很盲目,认为随便从网上搜点相关的知识就可以了,但其实,这直接影响着后面的各个阶段的工作的进行。在实习前能给我们对需求分析阶段的工作进行一定的了解,可以多找资料和老师来增多了解。还有就是由于每组人数太多了再加上同学们的合作意思不是很强,因此开始方案就两三种,还花了不少时间确定最终这个图书馆概论系统,解决此类问题的是必须的,这对我们今后的学习是十分有益的。9.参考文献1王珊,萨师煊 数据库系统概论 高等教育出版社2.郑玲利, 数据库原理与应用案例教程。 北京清华大学出版社3.宜小平, 数据库系统开发实例导航。 北京人民邮电出版社欢迎下载

    注意事项

    本文(数据库课程设计--图书馆管理系统.doc)为本站会员(doc321)主动上传,三一文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    经营许可证编号:宁ICP备18001539号-1

    三一文库
    收起
    展开