数据库大作业--图书管理系统(共18页)_第1页
数据库大作业--图书管理系统(共18页)_第2页
数据库大作业--图书管理系统(共18页)_第3页
数据库大作业--图书管理系统(共18页)_第4页
数据库大作业--图书管理系统(共18页)_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

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

文档简介

1、图书管理系统需求分析v 信息需求: 为了加强图书的管理,设计图书管理系统,方便用户借阅、管理员管理,减少管理员的工作量。1) 主要信息需求1 图书信息:简介、出版日期、出版社、作者、书名、书号2 读者信息:姓名、性别、读者编号、所在系、联系电话3 借阅信息:借书日期、还书日期、工作号、书号、是否续借、读者编号4 管理员信息:姓名、性别、电话、工资、工作号5 管理_书籍信息:工作号、书号、添加时间、是否在馆6 管理_读者信息:工作号、读者编号、借还确认、违章情况、累计借书 2)信息间的主要联系1 一个读者可以借阅多本书籍(1:m)2 一本图书可以被一 个读者借阅(1:1)3 一个图书管理员可以管

2、理多个读者(1:n)4 一个读者信息只能被一个图书管理员管理(1:1)5 一本图书可以被多个图书管理员管理(1:n)6 一个图书管理员可以管理多本图书(1:m)v 处理需求:1 借阅功能:可以方便地借阅图书、续借图书、归还图书2 查询功能:按图书编号查找图书、按图书名称查找图书、按图书作者查找图书、能够按照自己的图书证编号查询自己的状态信息3 读者注册功能:能够对新的读者进行登记,或注销读者的信息4 图书录入功能:能够将新到的图书信息输入到系统的图书信息库中5 统计功能:按图书编号统计书籍数量、按图书名称统计数量、按作者统计书籍数量v 安全性需求1 管理员的权限最高,可以查询、修改借阅关系表、

3、管理员_书籍表、管理员_读者表2 读者,可以查看图书基本信息、个人自己的借阅信息。不可以对其中的信息进行添加、修改等操作。v 完整性需求1 在图书管理信息表中,书号、书名、作者、出版社、出版日期、简介输入信息的时候都有类型、长度要求。书号、书名、作者不能为空,其中书号为主码2 在读者信息表中,其中的各类信息都有类型、长度要求。读者编号、读者姓名、读者性别、所在系不能为空,读者编号为主码3 在管理员信息表中,其中的各类信息都有类型、长度要求。工作号、姓名、性别不能为空,工作号为主码4 在借阅关系表中,其中的各类信息都有类型、长度要求,且均不可为空。工作号、书号为外码5 在管理员_书籍表中,其中的

4、各类信息都有类型、长度要求。工作号、书号不能为空,且为外码6 在管理员_读者表中,其中的各类信息都有类型、长度要求,均不可为空。 工作号、读者编号为外码 v 程序流程图 借 阅所借图书管 理 图书管理员判断图书 是否在馆 图 书借 阅 读 者 图1读者借阅图书,系统查询图书是否在馆。若已借出,显示借出;未借出进行下一步,图书管理员将书借出并登记相关信息。v 数据流图管理员顶层数据流图 添加图书 图书信息读者 借出信息图书管理系统读者 借书 图书 还书 拒绝信息 修改信息 查询管理员 图2第0层数据流图借书 所借图书信息 借书借书审核 借书 拒绝借书 库存信息查询 借书信息 查询信息还书审核 还

5、书 违章情况 图3第一层数据流图建 档读者编号 第一次借书 借书信息 借书 编号修改图书信息 存在 借出图书借书审核 借书累计过多、无库存 拒绝借出 库存信息 图4.借书的数据流图还书审核 还书修改图书信息 借书信息 库存信息图5.还书的数据流图使用者 查询要求查询选择图书统计查询读者信息图书信息查询 借书信息表 库存图书信息表 查询结果使用者图6.查询的数据流图 v 数据字典1 数据项数据项名数据项含义说明数据类型长度与其他数据项的逻辑关系读者编号读者相关信息整型10决定要借阅的图书读者姓名读者相关信息字符型6 读者性别读者相关信息字符型2联系电话读者相关信息整型7所在系读者相关信息字符型1

6、0书名图书相关信息字符型20作者图书相关信息字符型6出版社图书相关信息字符型20管理员工作号管理员相关信息整型10管理图书的借还管理员姓名管理员相关信息字符型6管理员性别管理员相关信息字符型2借书日期借书相关信息整型10还书日期借书相关信息整型102 数据结构数据结构名含义说明组成图书信息表定义图书的相关信息简介、出版日期、出版社、作者、书名、书号读者信息表定义读者的相关信息姓名、性别、读者编号、所在系、联系电话管理员信息表定义管理员的相关信息姓名、性别、电话、工资、工作号借阅关系表定义借阅图书的相关信息借书日期、还书日期、工作号、书号、是否续借、读者编号管理员_书籍信息表定义管理员与图书的有

7、关信息工作号、书号、添加时间、是否在馆管理员_读者信息表定义管理员与学生的有关信息工作号、读者编号、借还确认、违章情况、累计借书3 数据流数据流名来源去向组成借书读者、图书借书审核读者编号、书名、读者姓名、借书日期还书图书、读者还书审核读者编号、书名、还书日期4 数据存储数据存储名组成借书信息姓名、性别、读者编号、所在系、联系电话、管理员姓名库存信息简介、出版日期、出版社、作者、书名、书号、是否在馆5 处理过程处理过程名含义说明输入输出借书过程查看图书是否被借出图书信息借阅信息还书过程查看借阅图书的信息读者信息图书信息概念结构设计v 局部E-R图1 读者借阅图书一个读者可以借阅多本书籍(1:m

8、)一本图书可以被一个读者借阅(1:1)联系电话读者编号简介出版日期借书日期 姓名作者 m 1违章数 读 者 图 书借阅性别书名所在系还书日期累计借书书号出版社 图1. 借阅关系ER图2 管理员管理读者 一个图书管理员可以管理多个读者(1:n) 一个读者信息只能被一个图书管理员管理(1:1)联系电话工资读者编号电 话 姓名性别 1 n违章数 读 者 管理员管理性别姓名所在系借还确认累计借书工作号图2. 管理员_读者关系ER图3 管理员管理图书 一本图书可以被多个图书管理员管理(1:n) 一个图书管理员可以管理多本图书(1:m)简介出版日期添加时间 电话作者 m n工资 管理员 图 书管理工作号书

9、名性别是否在馆姓名 书号出版社 图3 管理员_图书关系ER图 v 全局E-R图出版日期还书日期作者 姓名读者编号借书日期简介违章数书名性别书号累计借书 m 1 读 者 图 书借阅出版社联系电话mn,m所在系添加时间工资管理员性别管理员姓名 电话工作号n1 管理员是否在馆确认借还管 理管 理图4.系统全局ER图逻辑概念设计v 将E-R图转化为关系模式1. 读者(读者编号、读者姓名、读者性别、联系电话、所在系、违章情况、累计借书)2. 图书(书号、书名、作者、出版社、出版日期、简介)3. 管理员(工作号、姓名、性别、电话、工资)4. 借阅(读者编号、书号、是否续借、借书日期、还书日期)5. 管理员

10、_图书(工作号、书号、添加时间、是否在馆)6. 管理员_读者(工作号、读者编号、确认借还)v 数据模型优化将数据关系模式优化,最终达到第三范式。优化后的关系模式:1. 读者(读者编号、读者姓名、读者性别、联系电话、所在系、违章情况、累计借书)2. 图书(书号、书名、作者、出版社、出版日期、简介)3. 管理员(工作号、姓名、性别、电话、工资)4. 借阅(读者编号、书号、是否续借、借书日期、还书日期)5. 管理员_图书(工作号、书号、添加时间、是否在馆)6. 管理员_读者(工作号、读者编号、确认借还)物理概念设计v 数据的存储结构根据以上的逻辑概念设计,得出各类数据的存储结构1.图书信息表字段名称

11、数据类型长度约束属性书号char20NOTNULL主码书名char50NOTNULL非主属性作者char20NOTNULL非主属性出版社char50非主属性出版日期data 非主属性简介char200非主属性2.读者信息表字段名称数据类型长度约束属性读者编号char20NOTNULL主码读者姓名char10NOTNULL非主属性读者性别char2NOTNULL非主属性联系电话char10非主属性所在系char20NOTNULL非主属性违章情况char2非主属性累计借书int非主属性3.管理员信息表字段名称数据类型长度约束属性工作号char12NOTNULL主码姓名char20NOTNULL非主

12、属性性别char2NOTNULL非主属性电话char12非主属性工资char12非主属性4借阅关系表字段名称数据类型长度约束属性工作号char12NOTNULL外码书号char20NOTNULL外码读者编号char20NOTNULL非主属性借书日期dataNOTNULL非主属性还书日期dataNOTNULL非主属性是否续借char4NOTNULL非主属性5管理员_图书表字段名称数据类型长度约束属性工作号char12NOTNULL外码书号char20NOTNULL外码添加时间data非主属性是否在馆char14非主属性6.管理员_读者表字段名称数据类型长度约束属性工作号char12NOTNULL

13、外码读者编号char20NOTNULL外码借还确认char4非主属性数据库建立v 建表1 图书信息表BOOK CREATE TABLE BOOK ( 书号 char(20) PRIMARY KEY NOTNULL , 书名 char(50) NOTNULL , 作者 char(20) NOTNULL , 出版社 char(50) 出版日期 data , 简介 char(200) ) ;2 读者信息表STUDENT CREATE TABLE STUDENT ( 读者编号 char(20) PRIMARY KEY NOTNULL , 读者姓名 char(10) NOTNULL , 读者性别 cha

14、r(2) NOTNULL , 联系电话 char(10) , 所在系 char(20) NOTNULL , 违章情况 char(2) , 借书累计 int ) ;3 管理员信息表MANAGER CREATE TABLE MANAGER ( 工作号 char(12) PRIMARY KEY NOTNULL , 姓名 char(20) NOTNULL , 性别 char(2) NOTNULL , 电话 char(12) , 工资 char(12) ) ;4 借阅关系表 RBCREATE TABLE RB ( 工作号 char(12) NOTNULL , 书号 char(20) NOTNULL ,

15、读者编号 char(20) NOTNULL , 借书日期 data NOTNULL , 还书日期 data NOTNULL , 是否续借 char(4) NOTNULL, PRIMARY KEY (书号,读者编号) , FOREIGN KEY (书号) REFERENCES (书号) , FOREIGN KEY (读者编号) REFERENCES (读者编号) ) ;5 管理员_图书表MBCREATE TABLE MB ( 工作号 char(12) NOTNULL , 书号 char(20) NOTNULL , 添加时间 data , 是否在馆 char(14) , PRIMARY KEY (

16、工作号,书号) , FOREIGN KEY (工作号) REFERENCES (工作号) , FOREIGN KEY (书号) REFERENCES (书号) ) ;6 管理员_读者表 MSCREATE TABLE MS ( 工作号 char(12) NOTNULL , 读者编号 char(20) NOTNULL , 借还确认 char(4) , PRIMARY KEY (工作号,读者编号) , FOREIGN KEY (工作号) REFERENCES (工作号) , FOREIGN KEY (读者编号) REFERENCES (读者编号) ) v 权限1 将图书信息查询权限授给读者S1 GR

17、ANT SELECT ON TABLE BOOK TO S12 将图书借阅表、管路员_图书表、管理员_读者表的查询和修改权限授给管理员M1 GRANT UPDATE,SELECT ON TABLE RB,MB, MS TO M1v 视图性别为女的管理员信息表建立工资视图MANAGERWAGECREATE VIEW MANAGERWAGEASSELECT 姓名,性别,工资FROM MANAGERWHERE 性别='女' ;v 触发器 建立管理员工资不足1000元,自动改为1000元的触发器Insert_Or_Update_Wage CREATE TRIGGER Insert_Or

18、_Update_Wage BEFORE INSERT OR UPDATE ON MANAGER FOR EACH ROW AS BEGIN IF (new.Professinal='管理员' ) AND (new.工资< 1000) ) THEN new.工资 : = 1000 ; END IF ; END ;v 索引1 在图书信息表BOOK建立唯一索引B-BOOKNAMECREATE UNIQUE INDEX B-BOOKNAME ON BOOK(书名) ;2 在读者信息表STUDENT建立唯一索引S-STUDENTNOCREATE UNIQUE INDEX S-STU

19、DENTNO ON STUDENT (读者编号 ASC) ;3 在图书管理员表MANAGER建立唯一索引M-MANAGERNAME CREATE UNIQUE INDEX M-MANAGERNAME ON MANAGER( 姓名) ; 数据库实施v 数据库数据的载入和应用程序的编制调试1 建立数据库的结构 创建数据库,建立数据库中所包含的各个基本表、视图、索引等。利用SQL语句中的CREATE DATABASE、CREATE TABLR、CREATE VIEW、CREATE INDEX命令完成。此系统中需要用这些命令,建立图书信息表、读者信息表、管理员信息表、借阅关系表、管理员_书籍表、管理员_学生表、为性别为女的管理员信息表上建立工资视图、为管理员建立触发器工资不足700,自动改为700元、为表建立索引。2 将原始数据装入数据库原始数据一般都是分散的,而且他们的组织方式、结构和格式都与新设计的数据库系统中的数据有不同程度的区别。必须将数据从各个地方抽出来,输入计算机,并进行分类转换,使他们的结构与新的系统数据库的结构一致,然后才能输入到计算机。先输入少量的数据,等系统正常运行后将所有的原始数据装入到数据库。如果仅仅插入几条,可

温馨提示

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

最新文档

评论

0/150

提交评论