数据库设计--图书管理系统

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

南昌大学软件学院数据库实训大作业课程名称:数据库实训院(系):软件学院专业:软件工程班级:Java146姓名:欧阳天雄、黎子杨、刘涛学号:800011420、8000114213、8000114211题目:图书馆管理系统数据库设计指导老师:王卓完成日期:2016/12/15目录一、系统概述.......................................................3二、功能需求分析...............................................31、功能概述.........................................................32、系统角色.........................................................4三、数据流设计...................................................52、数据流图.........................................................5四、系统结构设计...............................................91、数据字典.........................................................92、ER图..............................................................123、概念模型.......................................................164、逻辑模型.......................................................175、物理模型.......................................................18五、表空间设计.................................................18六、安全管理.....................................................20七、表、约束、索引、视图管理.....................23八、PL/SQL语句................................................38九、总结.............................................................40十、参考文献.....................................................41一、系统概述图书馆管理系统是一类比较典型的系统开发系统。它总的设计目标是实现图书管理的系统化、规范化和自动化,实现对图书资料的集中统一的管理。本系统主要实现对图书馆信息的管理,主要功能为管理有关读者、图书、借阅、查询、和删除管理员的信息等。可以帮助图书馆管理员和读者更加方便地管理图书和借阅图书。二、功能需求分析1、功能概述:本图书馆管理系统适用于校园等小型的图书馆使用,它的主要任务是建立详细的可借阅读者的信息(可表现为一张借阅卡,或者校园卡)以及图书馆内所有的图书种类以及对应书籍的记录。并可以对借阅者和所借书籍进行登记,方便图书管理员能及时查看馆内书刊信息以及对借书以及还书做出操作。对此,本系统应该具有的功能应该有1、管理员信息管理:管理员是本系统的管理者,具有最高权限,对图书和读者有添加,修改和删除等功能。但管理员只能修改自己的信息,不能添加或删除自己的信息。要想添加和删除管理员必须到数据库中去操作表结构。2、借阅者信息管理:由系统管理员,给每个借阅者创建一个账户,账户应具有借阅者的详细信息,并且借阅者的信息在借阅者的身份信息改变后可以修改或注销。3、书库管理:当有新的图书种类或者新书入库时候,要对书库记录进行添加记录,当有旧的书种或书被下架时,也要对书库进行删除记录。当读者或者管理员要对某种书刊进行查询时,也可以通过本系统进行查询4、书籍出借管理:图书馆代理借阅者进行借书或者还书等各项义务。在借阅书刊时,只要输入要借阅的书刊编号然后输入借阅者的ID,即可提交借书操作。若书刊编号存在,且借阅卡号存在,且借阅卡的信息与借阅者本人的信息吻合,收取一定押金后即可完成借书操作。完成借书操作后,数据库内书库记录该书刊的记录从在库状态改为借出状态。则操作成功,系统会把该本书的加入借阅记录中去。5、书籍归还管理:管理员可以根据借阅者的关键信息,查询到该借阅者所有的借阅信息,借阅日期等,从中选择要归还的图书,显示有关本图书的所有借阅信息,方便让管理员判断出是否过期,是否对读者进行罚款,退还押金后并对数据库记录做出改变,,并把该本图书状态信息改为在库。6、借阅书籍管理:图书管理员要能够对所有被借出的书进行查询,了解哪些人借了哪些书,以及借阅书籍的日期,方便当一本书借出太久后管理员可以对该借书的人进行通知。2、系统角色本项目的主要用户包括以下两类。(1)图书管理员图书管理员负责管理书籍的维护,读者的管理,以及借阅归还业务的办理。是服务的提供者。(2)借阅者借阅者主要是书籍的借阅和归还。三、数据流设计1、数据流分析:(1)系统为图书管理员建立档案,管理员进入系统前需要进行身份验证,用户名,密码输入正确方可进入系统。(2)系统预设一些借阅者,并为他们建立档案信息。(3)在系统中,图书管理员可以新建新的借阅者信息,修改已有的借阅者信息,注销已经把书还清的借阅者信息。(4)在系统中,图书管理员可以对拥有借阅卡的用户办理借书,还书业务。(5)在系统中,图书管理员可以对还书违规的借阅者做出处罚金的处罚。(6)在系统中,图书管理员可以修改库存信息,增加新书刊或新书种,删除书种或书刊。(7)在系统中,借阅者可以自助查询书库信息,和自己的借阅记录。(8)在系统中,图书管理员可以查看所有被借出书的信息。2、数据流图:1、顶层数据流图2、借书管理的二层数据流图3、还书管理的二层数据流图书库管理的二层数据流图4、读者管理的二层数据流图罚款管理的二层流图四、系统结构设计1、数据字典:由需求分析和数据流图中我们可以提取到几个不同的元素:管理员,借阅者,书籍,借阅记录表1-1图书包含的数据项的数据字典数据项名数据项含义别名数据类型取值范围BookID唯一标识每本书籍图书编号Char(10)BookName图书名称Varchar2(30)class图书类别Char(20)publishDate出版日期DateAuthor作者Char(30)Publisher出版社Varchar(20)ISBNISBN号Varchar2(20)price价格Numeric(5,2)Bookstate表示图书在库还是借出图书状态Char(5)表1-2管理员包含的数据项的数据字典数据项名数据项含义别名数据类型取值范围ID唯一标识管理员管理员编号Char(4)Name管理员名字Char(10)tel管理员电话Char(11)Pwd登陆密码Char(16)Sex管理员性别Char(1)“男”或“女”Phone管理员照片Image一寸证件照表1-3借阅者包含的数据项的数据字典数据项名数据项含义别名数据类型取值范围ReaderID唯一标识每一位借阅者借阅者编号Char(10)ReaderName借阅者姓名Char(15)ReaderSex借阅者性别Char(1)“男”或“女”ReaderPhone用以借还书确认身份借阅者照片Image证件照ReaderPhone用以管理员联系借阅者电话Char(11)MaxDay最大借阅天数Number(2)0BookBorrowed已借图书Number(2)=0表1-4管理员操作的数据字典处理名说明流入的数据流流出的数据流处理借书操对借阅者的借书申书籍信息,借阅单根据借阅者挑选的书籍,查看借阅者是否满足借阅条件,如果满足条件,作请作出处理借阅者信息则收取一定的押金并保存记录到借阅记录表产生借阅单还书操作对借阅者的还书申请作出处理书籍信息读者信息退款根据借阅者所持的借阅单和书籍借阅卡,查看借阅者的本次借阅记录,是否有违规使用的情况,若有则相应处以罚金,或退还押金,删除借阅记录。添加借阅者对申请借书的潜在客户的申请作出处理客户信息借阅卡根据客户的准确身份信息,核对信息是否有效,若有效则给客户办借阅卡。修改借阅者信息对借阅者的信息进行更改客户信息借阅卡根据客户的修改请求,核对修改的信息,若有效,则给客户更新借阅卡。2、ER图:1.实体:管理员:读者:管理员密码身份证号姓名工作证号图书:罚款:2.管理员图书读者之间的联系:3、概念模型4、逻辑模型在得出概念结构设计的E-R图后,下一步的任务就是吧概念结构设计中的E-R模型转换为具体的数据库管理系统支持的组织层数据模型,也就是导出特定的数据库管理系统可以处理的数据库逻辑结构,由于在概念结构设计中我们就得出了若干个关系模式,因此在逻辑结构设计要做的就是把各个关系模式做一遍规范化处理,以减少冗余。以下关系模式均已规范化到第三范式。图书表(图书编号,图书类别编号,书名,出版日期,作者,出版社,ISBN号,价格)图书类别表(类别编号,类别名称,类别解释)借阅者表(借阅者编号,借阅等级,姓名,性别,照片,电话,已借图书)借阅者类别表(借阅等级,等级名称,最大可借图书数,最长借阅期限)管理员表(管理员编号,姓名,性别,登陆密码,电话,照片)罚金表(罚金级别,罚金名称,罚款说,罚金数量)借书记录表(借阅者编号,图书编号,借书时间,还书期限,押金)还书记录表(借阅者编号,图书编号,还书时间,退款)罚款表(借阅者编号,罚款类别,已缴罚款,罚款原因)5、物理模型五、表空间设计通过之前的概念结构设计,逻辑结构设计,物理结构设计得出来的模型可以知道,本图书管理系统大概有十张表,这些表从业务角度来分,主要有以下三类:(1)与书库相关的表。包括图书表(2)与系统角色相关的表,包括借阅者表,管理员表(3)与案例业务相关的表,借书表,还书表。除了这些表外,其他都是些参数类型的表。在我们的案例中,本系统是面向小型图书馆的。下面我们以一个借阅人数为500,藏书量为10000本的图书馆为例。有五百个借阅者需要建立借阅信息,10000本图书需要建立图书信息。预设10位管理员。粗略估算一下数据表空间为2G,索引表也设为2G,临时表空间设为500M。由于本系统大多数操作都是通过管理员进行的,并发性不高,所以回退表空间不需要很大,回退表空间就设为500M。综上所述,本案例需要创建一个数据表空间,一个索引表空间,一个临时表空间并将回退表空间扩充,为其增加一个数据文件。表空间名称分别libsys_data,libsys_idx,libsys_temp。采用小文件类型的额数据文件。每个数据文件的大小不超过1G.因此数据文件分别是libsys_data01.dbf,libsys_data02.dbf,libsys_idx01.dbf,libsys_idx02.dbf,libsys_temp01.dbf,libsys_undo01.dbf。创建图书管理系统数据库:LIBSYS建立表空间:创建的数据库文件:六、安全管理6.1用户通过前面的需求分析可以知道,系统主要有两个系统角色,分别是管理员和借阅者,管理员有很多种权限,可以对除管理员表外的所有表进行增删改查的操作,而借阅者的权限比较低,只能进行一些针对特殊表的查找操作,例如,当借阅者想查询图书馆有没有自己想要的书可以对书库表进行查询,想知道自己的借阅记录可以查询借阅记录表。因此本例中我们新建两个角色,管理员和用户(operator和reader)创建operator用户创建reader用户6.2、权限、

1 / 41
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功