《图书管理系统数据库需求分析50828.pdf》由会员分享,可在线阅读,更多相关《图书管理系统数据库需求分析50828.pdf(14页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、 图书管理系统数据库需求分析(总 11 页)本页仅作为文档封面,使用时可以删除 This document is for reference only-rar21year.March 2 图书管理数据库系统 一、需求分析 1.功能设计 首先从需求出发构造数据库表,再由数据库表结合需求划分系统功能模块。这里把系统的层次划分为四个部分:图书维护、人员管理、图书借阅管理、信息查询。能实现以下功能:a)进行新书入库,对现有图书进行修改以及删除;b)实现对读者基本信息的查询及编辑管理;c)超期罚款;d)能够进行借阅信息的查询;2.处理对象 读者信息:读者编号、姓名、性别、专业、年纪、密码、办证日期。管理
2、员信息:管理员编号、姓名、性别、电话、密码、权限。图书信息:ISBN、图书名称、作者、出版社、单价、副本数、分类、出版日期、关键字、状态。借阅记录:ISBN、读者编号、图书名、作者、借阅日期、归还日期、应还日期、罚金。罚款信息:ISBN、读者编号、图书名、作者、借阅日期、归还日期、应还日期、罚金、处理状态、管理员编号。3.处理功能及要求 a)能够存储一定数量的图书信息,能够进行相应的书籍数据操作和管理主要包括:1)图书信息的录入、删除及修改3 2)图书信息的多关键字检索查询 3)图书的出借、归还及超期罚款或者丢失赔偿 b)能够对一定数量的读者、管理员进行相应的信息操作,包括:1)读者信息的登记
3、、删除及修改。2)管理员信息的增加、删除及修改。3)读者资料的统计与查询。c)能够提供一定的安全机制,提供数据信息授权访问,防止随意删改、查询。d)对查询、统计的结果能够列表显示。4.安全性和完整性要求 a)安全性要求 安全性通过视图机制,不同用户只能访问系统授权的视图,这样可提供系统数据一定程度上的安全性,再通过分配权限、设置权限级别来区别不同操作者对数据库的操作来提高数据库的安全性;系统平台的安全性体现在操作系统的安全性、计算机系统及网络体系的安全性等方面。b)完整性要求 系统完整性要求系统中数据的安全性及相容性。可通过建立主外键,使用 check约束,或者通过使用触发器或者级联更新。5.
4、数据字典 读者信息:读者编号 ReaderID、姓名 ReaderName、性别 ReaderSex、专业 ReaderMajor、年纪 ReaderAge、密码 ReaderPassword、办证日期ReaderDate。管理 员信息:管理员 编号 ManageID、姓 名 ManageName、性别4 Manage4 Sex、电 话ManagePhone、密 码ManagePassword、权 限ManageAuthority。图 书 信 息:书 籍 编 号 BookID、图 书 索 书 号 BookID、图 书 名 称 BookName、作者 BookAuthor、出版社 BookPri
5、nter、单价 BookPrice、副本数 BookNum、分类 BookType、出版日期 BookDate、关键字BookKeyword、状态 BookState。借阅状态:书籍编号 BookID、读者编号 ReaderID、图书名 BookName、作者 BookAuthor、借阅日期 BorrowDate、应还日期 ReturnDate 借阅历史:书籍编号 BookID、读者编号 ReaderID,图书名 BookName,作者 BookAuthor,借阅日期 BorrowDate、归还日期 ReturnedDate 罚款信息:书籍编号 BookID、读者编号 ReaderID、图书名
6、 BookName、作者 BookAuthor、借阅日期 BorrowDate、归还日期 ReturnedDate、应还日期 ReturnDate、罚金 Fine、处理状态 ManageStatus、管理员编号ManageID。二、概念结构设计 1.任务与目标 a)选择中层数据流为切入点,通常选择实际系统中的子系统;b)设计分 E-R 图,即各子模块的 E-R 图;c)生成初步 E-R 图,通过合并方法,做到各子系统实体、属性、联系统一;d)生成全局 E-R 图,通过消除冲突等方面。5 2.分-R 图 a)b)用户类型 输入 处理 输出 全部用户(总)用户类型 判断用户类型 无(总)账号,密码
7、 判断账号及密码正确性 进入系统或显示错误信息(总)修改个人信息(用户名、密码等)修改个人信息 修改结果信息(总)查询内容 判断查询内容 转至相应页面(总)查询书目 检索关键字 输出相应书目信息 学生或老师 (读)借阅或归还图书 处理图书信息 修改图书信息 管理员(管)新建图书项(ISBN、书名、作者、出版社、价格、副本量、库存量等)处理图书信息 新增图书项(管)删除图书项 处理图书信息 删除图书项(管)检索用户信息 搜索相应信息 用户信息(管)修改图书信息 处理图书信息 修改图书信息 全部用户(全)反馈信息(建议、警告、问题询问、回答等)搜集反馈信息 反馈给相应用户 维护人员(维)搜索源代码
8、 调用源代码文件 打开源代码文件 全部用户(全)退出 进行指令判断 退出,返回登录页面 6 c)3.基本 E-R 图 4.E-R 图的各实体的属性 Reader(ReaderID,ReaderName,ReaderSex,ReaderMajor,ReaderAge,ReaderPassword,ReaderDate)Manager(ManageID,ManageName,ManageSex,ManagePhone,ManagePassword,ManageAuthority)Book(ISBN,BookID,BookName,BookAuthor,BookPrinter,BookPrice,B
9、ookNum,BookType,BookDate,BookKeyword,BookState)7 Borrow(BookID,ReaderID,BookName,BookAuthor,BorrowDate,ReturnDate)History(ISBN,ReaderID,BookName,BookAuthor,BorrowDate,ReturnedDate)Fine(ISBN,ReaderID,BookName,BookAuthor,BorrowDate,ReturnedDate,ReturnDate,Fine,ManageStatus,ManageID)三、逻辑结构设计 1.将 E-R 图转
10、化为关系模式 实体型转换为关系模式。实体的属性就是关系的属性,实体的码就是关系的码。对于实体间的联系则有以下不同的情况:一个 m:n 联系转换为一个关系模式。与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为各实体码的组合。一个 1:n 联系可以转换为一个独立的关系模式,也可以与 n 端对应的关系模式合并。如果转换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为 n 端实体的码。一个 1:1 联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。三个或三个以上实体间的一个多元联系可以转换为一个关系模式。与
11、该多元联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为各实体码的组合,具有相同码的关系模式可合并。管理员与图书之间的维护联系是 1:n(一对多),读者与图书之间的借阅和归还联系方式则是 n:m(多对多),这样要把它们之间的联系转化为独立的关系模式,读者与管理员之间的罚款与管理联系是 m:n(多对多),将其联系也转化成独立的关系模式,具体的基本 E-R 图向关系模型的转化如下:8 Reader:ReaderID,ReaderName ReaderPassword ReadType ReaderSex ReaderInfo Book:ISBN BookName BookID
12、BookAuthor BookPublish BookPrice BookDate BookType BookKeyword BookState BorrowRecord:BorrowID ReaderID BookID BookName9 BookAuthor Borrowdate Returndate Fine isBorrowing isRenewing Fine:BookID ReaderID BookName BorrowID Borrowdate Returndate Fine 2.模型优化 关系模式 Book,Reader,Manager 不存在非主属性对主属性的部分函数依赖,也
13、不存在传递函数依赖,已经达到了 3NF,但是借阅关系模式、罚款关系模式(Borrow,History,Fine)中存在着一些数据冗余,现将三个关系模型进行合并,消除冗余,3.数据库模式定义 表 2.1 图书信息表 列名 数据类型 可否为空 说明 ISBN BookName Char Char not null not null ISBN 图书的书名 10 BookID Big int not null 索书号主码 10 BookAuthor Char 图书作者 BookPublish Char 图书出版社 BookPrice Double 图书的单价 BookDate Date 出版日期 Bo
14、okType Char 图书的分类 BookKeyword Char 图书的关键字 BookState Char not null 图书状态 表 2.2 读者信息表 列名 数据类型 可否为空 说明 ReaderID Big int not null 读者编号主码 ReaderName Char not null 读者名 ReaderPassword ReadType Char Char not null not null 读者密码 读者类型 ReaderSex Char 读者性别 ReaderInfo VarChar 读者信息 表 2.3 借阅信息表 列名 数据类型 可否为空 说明 Borro
15、wID ReaderID Big Int Big Int not null not null 借阅记录主码 读者编号外码 BookID Big Int not null 图书编号外码 BookName Char not null 图书名 BookAuthor Char 作者 Borrowdate Date not null 借阅时间 Returndate Date 归还时间 Fine Double 罚款金额 isBorrowing isRenewing Real Real Not null Not null 是否在借 是否可续借 11 表 2.4 图书基本信息视图 列名 数据类型 可否为空 说
16、明 BookID Char not null 图书的索书号 BookName Char not null 图书的书名 BookAuthor Char not null 图书作者 BookPublish Char not null 图书出版社 BookState Char not null 图书是否可借 表 2.5 读者借阅信息视图 列名 数据类型 可否为空 说明 BookID Char not null 图书编号 BookName Char not null 图书名 Borrowdate Date not null 借阅时间 Returndate Date 归还时间 表 2.6 读者罚款信息视图 列名 数据类型 可否为空 说明 BookID Big Int not null 图书编号 BookName ReaderID BorrowID Char Big Int Big Int not null not null not null 图书名 读者编号 借阅记录号 Borrowdate Date not null 借阅时间 Returndate Date 归还时间 Fine Double 罚款金额 12