大型数据库课程设计说明书14923.pdf
目录 第 1 章 概述(或绪论).3 1.1 系统设计的目的和意义.3 1.2 主要研究容.3 1.3 本章小结.4 第 2 章 需求分析阶段.5 2.1 引言.5 2.2 需求分析阶段的目的与任务.5 2.2.1 处理对象.5 2.2.2 处理功能及要求.6 2.2.3 安全性和完整性要求.6 2.3 需求分析阶段成果.7 2.3.1 图书管理系统业务流程图.7 2.3.2 图书管理系统数据字典.7 2.4 本章小结.9 第 3 章 概念结构设计阶段.10 3.1 引言.10 3.2 任务与目标.10 3.3 阶段结果.10 3.4 本章小结.12 第 4 章 逻辑设计阶段.13 4.1 逻辑设计的任务和目标.13 4.2 数据组织.13 4.2.1 数据库模式定义.13 4.3 数据处理.15 4.4 本章小结.16 第 5 章 物理设计阶段.17 5.1 物理设计阶段的目标和任务.17 5.2 系统功能模块.17 52.1 读者基本信息的查询和更新模块.17 5.2.2 图书基本信息的查询和更新模块具体如下:.18 5.3 本章小结.18 第 6 章 数据库实施阶段.19 6.1 在数据库上建立表空间,数据文件,用户以及授予用户权限.19 6.1.1 创建表空间 bookmanage 和创建临时表空间 bookmanage1.20 6.1.2 创建表空间用于存储密码和用户名.20 6.1.3 创建用户.21 6.1.4 授予用户权限.21 6.2 创建数据表和序列,以及触发器.21 6.2.1 创建数据表.21 6.2.2 创建序列和触发器.23 6.3 使用游标进行查询.24 6.3.1 对图书进行查询(编号).24 6.3.2 对图书进行查询().24 6.3.3 通过图书名称查询.24 6.4 本章小结.24 第 7 章 oracle 后台数据的测试.25 7.1 基本表的查询.25 7.2 触发器功能的测试.26 7.3 使用游标进行图书信息查询.27 7.4 图书逾期提示.28 7.5 本章小结.28 展望.29 参考文献.30 第 1 章 概述(或绪论)1.1 系统设计的目的和意义 随着社会信息量的与日俱增,职场竞争的日趋激烈,越来越多的人更关注知识的积累,能力的培养,作为信息存储的主要媒体之一,图书数量,规模比以往任何时候都大的多,不论个人还是图书管理部门都需要使用方便而有效的方式来管理自己的书籍。在计算机日益普及的今天,对个人而言采用一套行之有效的图书馆管理系统来管理自己的书籍,会方便许多,对图书管理部门而言,以前单一的手工检索已不能满足人们的要求,往往投入了大量人力和财力还得不到高校的管理效率,为了便于图书资料的管理需要有效的图书管理软件,减轻工作人员的工作量,方便工作人员对它的操作,提供管理的质量和水平,做到高校,智能化管理,达到提高图书借阅信息管理效率的目的,采用数据库技术生成的图书馆借阅管理系统将会极方便借阅者并简化图书馆管理人员和工作人员的劳动,使工作人员从繁忙,复杂的工作进入到一个简单、高校的工作中。1.2 主要研究容 主要研究容是根据目前高校图书馆的现状和需求,设计出一个新的图书馆管理系统。研究容主要包括以下几个方面:(1)介绍了高校图书馆管理系统的基本概念,开展此项目的目的与意义,对当前国外研究情况进行对比分析,明确了当前我国高校图书馆管理系统项目的现状。(2)在理论分析的基础上,通过分析当前图书馆管理系统中使用的相关技术,研究当前图书馆管理系统中存在的问题,提出相关的解决策略。(3)结合解决策略,提出新的图书馆管理系统模型,并对照原有的传统管理系统模式分析新模型的特点和适应性(4)详细介绍开发系统的全过程,对系统的定义阶段,开发阶段,设计阶段,实现阶段,使用阶段进行记录和研究。通过现实的资料收集,完成对新管理系统的性能进行测试与评价(5)归纳总结全文,提出后继的分析研究设计工作。1.3 本章小结 本章主要介绍了教师教学综合评价系统的课题背景,讲述了高校进行教师教学综合评价的急切性和重要性。并介绍了教师教学综合评价的现实意义,简述了以工学院计信为研究对象教师教学综合评价系统为课题研究的主要容。第 2 章 需求分析阶段 2.1 引言 进行系统设计,首先要对系统的现状进行分析。根据系统的目 标、需求和功能,制定和选择一个较好的系统方案,从而达到一个合理的优化系统,每个学校都有图书馆,最初由于图书数量和种类较少人工手动管理比较方便灵活。随着社会的发展,图书的数量和种类越来越多,人工手动管理会降低工作的效率,希望建立一个图书管理系统,是为了解决人工手动管理图书信息在实践的问题,从而达到系统化,规化,标准化的水平,该系统的建立不但给管理者带来了方便,也节省了工作时间从而提高了工作效率。需求分析是在于要弄清楚用户对开发的数据库应用系统的确切要求。数据库设计的第一步是明确数据库的目的和如何使用,也就是说需要从数据库中得到哪些信息。明确目的之后,就可以确定您需要保存哪些主题的信息(表),以及每个主题需要保存哪些信息(表中字段)。在构造系统时,首先从需求出发构造数据库表,然后再由数据库表结合需求划分系统功能模块,这样,就把一个大的系统分解成了几个小系统。这里把系统的层次划分为了四个部分;图书维护,人员信息管理,图书借阅管理,信息查询。能够实现以下功能:(1)进行新手入库,现有图书信息修改以及删除;(2)能够实现对读者基本信息查询和编辑管理;(3)能够进行超期提示功能;(4)能够进行借阅信息的查询功能;2.2 需求分析阶段的目的与任务 2.2.1 处理对象 读者信息:读者编号,性别,年龄,系部编号,班级编号,编号,联系方式 管理员信息:管理员编号,性别,年龄,编号 图书信息:图书编号,图书名称,作者,单价,idbn 号 借阅信息:图书编号,读者编号,借阅日期 归还信息:图书编号,读者编号,归还日期 2.2.2 处理功能及要求(1)能够存储一定数量的图书信息,并方便有效的进行相应的书籍数据操作管理,这主要包括:1)图书信息的录入,修改及删除。2)图书信息的编号,模糊名称查询,模糊作者名查询。3)类别为学生的每次借书期最长为 30 天。4)图书的出借,归还,及超期自动提示(2)能够对一定数量的读者、管理员进行相应的信息存储和管理,这其中包括;1)读者信息的登记,修改及删除。2)管理员信息的增加、删除及修改 3)读者资料的统计与查询。(3)能够提供一定的安全机制,提供数据信息授权访问,防止随意删改(4)对查询,统计的结果能够列表显示 2.2.3 安全性和完整性要求(1)安全性要求 系统安全性要求体现在数据库安全性,信息安全性和系统平台安全性等方面,安全性先通过视图机制,不同的用户只能访问系统授权的视图,这样可提供系统数据的一定程度上的安全性,再通过分配权限设置权限级别来区别对待不同的操作者对数据库的操作来提高数据库的安全性。(2)完整性要求 系统完整性要求系统中数据的正确性以及相容性,可通过简历主,外键,使用 check 约束,或者通过序列和使用触发器和级联更新 2.3 需求分析阶段成果 2.3.1 图书管理系统业务流程图(1)从读者角度考虑的业务流程图如图 1 所示:图 1 业务流程图 2.3.2 图书管理系统数据字典(1)数据项表如表 1 所示:表 1 图书管理系统的数据项表 数据项编号 数据项名称 数据项含义 与其它项关系 存储结构 DI-1 Reader_id 自增序列项 Number DI-2 readerNo 读者编号 Number DI-3 readerName 读者 Varchar2 DI-4 readerSex 性别 Char 管理员 逾期信息 还书处理 借书处理 还书记录 借书记录 查询结果 更 新 的 图书信息 查询处理 读者 读者信息 续表 1 数据项编号 数据项名称 数据项含义 与其它项关系 存储结构 DI-6 Deptno 系部编号 Number DI-7 Classno 班级编号 Number DI-8 Cardno 编号 Number DI-9 Telephonenumber 联系方式 Number DI-10 Admin_id 自增序列项 Number DI-11 Adminno 管理员编号 Number DI-12 Adminname 管理员 Varchar2 DI-13 Adminsex 性别 Char DI-14 Adminage 年龄 Int DI-15 Admincardno 编号 Number DI-16 Book_id 自增序列 Number DI-17 bookno 图书编号 Number DI-18 titlename 图书名称 Varchar2 DI-19 publishname 名称 Varchar2 DI-20 authorname 作者名称 Varchar2 DI-21 remianamount 库存数量 Int DI-22 Totalamount 总数量 Int DI-23 saleprice 单价 Int DI-24 Isbn Isbn 号 Number DI-25 Bw_id 自增序列 Number DI-26 bReader_id 读者编号 同 readerno Number DI-27 Bbook_id 图书编号 同 bookno Number DI-28 Borrow_date 借阅日期 Date DI-29 Re_id 自增序列 Number DI-30 Rreader_id 读者编号 同 readerno Number DI-31 Rbook_id 图书编号 同 bookno Number DI-32 Return_date 归还日期 Date (2)系统中所用数据结构如下所示:表 2 系统中的数据结构详细表 数据结构编 号 数据结构名 数据结构含义 数据结构组成 DS-1 Reader_info 读者信息 Reader_id,no,name,sex,age,deptno,classno,cardno,telephonenumber DS-2 Book_info 图书信息 Book_id,no,titlename,publishname,authorname,remainamount,totalamount,saleprice,isbn DS-3 Admin_info 管理员信息 Admin_id,no,name,sex,age,cardno DS-4 Borrow_info 借阅信息 Bw_id,book_id,reader_id,borrow_date DS-5 Return_info 归还信息 Re_id,book_id,reader_id,return_date 2.4 本章小结 系统需求分析主要是通过对本校图书管理员的咨询,请教,了解我校图书馆的管理规则和运行机制,并通过上网搜索有关图书馆管理系统的知识,了解到图书管理的现状,以及在管理中的一些问题,由于是第一次做这样的需求调查,开始总是觉得无从下手,不知道自己想了解什么,该了解什么方面的知识,在绘制系统业务流程图时,遇到了很多问题,但通过老师的指导和帮助,以及自己一遍一遍的分析和完善,才逐渐把业务弄清楚,最终完成了需求分析阶段的任务 第 3 章 概念结构设计阶段 3.1 引言 系统开发的总体目标是实现图书馆管理的系统化和自动化,缩短借阅者的等待时间,减轻工作人员的工作量,方便工作人员对它的操作,提高管理的质量和水平,做到高效、智能化管理,从而达到提高图书管理效率的目的。3.2 任务与目标 主要任务是对读者信息、管理员信息、图书资料信息、借阅信息、归还图书信息。罚款信息的基本信息的操作及处理。概念设计阶段主要是将需求分析阶段得到的用户需求抽象为信息结构(概念模型)的过程,它是整个数据库设计的关键。(1)选择中层数据流为切入点,通常选择实际系统的子系统;(2)设计分 E-R 图,即各子模块的 E-R 图;(3)生成初步 E-R 图,通过合并方法,做到各子系统实体,属性,联系统一;(4)生成全局 E-R 图,通过消除冲突等方面。通过分析各数据项和数据字典得知整个系统功能围绕“读者”“管理员”、“图书”的处理,根据实体与属性间的两条准则:1.作为“属性”、,不能再具有需要描述的性质。2.“属性”不能与其他实体具有联系。3.3 阶段结果(1)根据不同的对象,画出各分 E-R 图 1)读者与管理员:图 2 读者与管理员分 E-R 图 2)读者与图书:读者 管理员 管理 m n 图 3 读者与图书分 E-R 图 3)管理员与图书:图 4 管理员与图书分 E-R 图(2)合并各分 E-R 图,消除属性,命名冲突,结构冲突三种冲突,得到的基本 E-R 图 图 5 图书管理系统基本 E-R 图 读者 图书 借阅 1 n m 管理员 图书 维护 n n m nm 1 n逾期提示 读者 管理 借书 还书 管理员 图书 维护 借阅 修改 删除 增加 查询 n m n (3)各 E-R 图各实体的属性如下所示 读者:reader_info(readerno,name,age,sex,deptno,classno,cardno,telephonenumber)图书:book_info(bookno,titlename,publishname,authorname,remainamount,totalamount,saleprice,isbn)管理员:admin_info(adminno,name,age,sex,cardno)维护:维护(adminno,bookno)借阅:借阅(readerno,bookno)管理:管理(adminno,bookno)3.4 本章小结 在本章中,主要介绍了系统的概念结构设计,主要是针对系统的各个部分进行 E-R 图的绘制,并最后得到图书管理系统的基本 E-R 图 以及系统当中实体的各个属性。第 4 章 逻辑设计阶段 4.1 逻辑设计的任务和目标 以上的概念设计阶段是独立于任何一种数据模型,但是逻辑设计阶段就与选用的 DBMS 产品发生关系了,系统逻辑设计的任务就是概念设计阶段设计好的基本 E-R 图转换为 DBMS 产品所支持的数据模型相符合的逻辑结构,具体容包括数据组织(数据库模式定义),数据处理(画出系统功能模块图)两大任务。4.2 数据组织 4.2.1 数据库模式定义(1)读者基本信息表如下所示:表 3 读者基本信息表 列名 数据类型 可否为空 说明 Reader_id Number Not null 自增序列主键 No Number Not null 读者编号 Name Varchar2 Not null Age Int Not null 年龄 Sex Char Not null 性别 Deptno Number Not null 系部编号 Classno Number Not null 班级编号 Cardno Number Not null 号 Telephonenumber Number Not null 联系方式(2)管理员基本信息如下表所示:表 4 管理员基本信息表 (3)图书基本信息如下表所示:表 5 图书基本信息表 列名 数据类型 是否为空 说明 Book_id Number Not null 自增序列,主键 No Number Not null 图书编号 Titlename Varchar2 Not null 图书名称 Publishname Varchar2 Not null 名称 Authorname Varchar2 Not null 作者 Remainamount Int Not null 库存数量 Totalamount Int Not null 总数量 Saleprice Int Not null 单价 Isbn Number Not null Isbn 号(4)借阅信息表如下表所示:列名 数据类型 是否为空 说明 Admin_id Number Not null 自增序列,主键 No Number Not null 编号 Name Varchar2 Not null 名字 Age Int Not null 年龄 Sex Char Not null 性别 Cardno Number Not null 号 表 6 借阅基本信息表 列名 数据类型 是否为空 说明 Bw_id Number Not null 自增序列,主键 Book_id Number Not null 外键 Reader_id Number Not null 外键 Borrow_date date Not null 借阅日期(5)归还信息表如下所示:表 7 归还基本信息表 列名 数据类型 是否为空 说明 Re_id Number Not null 自增序列,主键 Book_id Number Not null 外键 Reader_id Number Not null 外键 Return_date number Not null 归还日期 4.3 数据处理(1)系统功能模块图如下:图书管理系统 图书维护子系统 读者管理子系统 借还服务子系统 查询服务子系统 增加新到图书 修改图书信息 读者注册 删除无效用户 修改用户信息 读者借阅服务 读者归还服务 图书查询服务 个人信息服务 删除过期图书 图 6 系统功能模块图 4.4 本章小结 在本章中,主要介绍了系统的逻辑设计,主要是描述了图书管理系统的基本数据表的信息和模式,详细地列出了每个基本表的结构,并在最后一小节给出了系统的功能模块图。第 5 章 物理设计阶段 5.1 物理设计阶段的目标和任务 数据库的物理设计就是为逻辑数据模型选取一个最合适应用要求的物理结构的过程,在这个阶段中要完成两大任务:(1)确定数据库的物理结构,在关系数据库中主要是存取方法和存储结构;(2)对物理结构进行评价,评价的重点是时间和空间效率。5.2 系统功能模块 52.1 读者基本信息的查询和更新模块 将实现对读者基本信息的查询更新(修改,删除,更新)操作,用于新生入学,毕业生离校,以及读者补办借阅证或更改信息的情况,具体的功能模块图如下:查询 更新 y 更新读者信息表 是否成功 更新后的读者信息表 提示信息 结束 管理员发出查询或更新的命令 查询?更新?查询读者信息表 查询的结果 n 是否继续 N n y 图 7 读者基本信息更新和查询模块图 5.2.2 图书基本信息的查询和更新模块具体如下:图 8 图书基本信息的更新与查询模块图 5.3 本章小结 在本章中,主要介绍了系统的物理设计,主要将上一章的系统功能模块图细化,得出两个重要的更新与查询模块。n y y n y 权限 是否 有效 查询图书 查询的结果 是否继续 管理员发出更新图书的命令 读者发出查询的命令 更新图书信息结束 更新后的图书信息表 提示信息 是否成功 n 第 6 章 数据库实施阶段 6.1 建立一个数据库 hwy07,并在数据库上建立表空间,数据文件,用户以及授予用户权限 6.1.1 创建数据库具体步骤 (1)使用 DCA 启动创建数据库程序 图 9 创建数据库过程截图(一)(2)选择创建数据库实例 图 10 创建数据库过程截图(二)(3)根据 DCA 提示完成数据库的建立 图 11 创建数据库过程截图(三)(4)对数据库默认用户进行口令设置 图 12 创建数据库过程截图(四)(5)继续接下来的步骤,选择文件路径,完成创建 图 13 创建数据库过程截图(五)6.1.2 创建表空间 bookmanage 和创建临时表空间 bookmanage1 图 14 代码实现截图(一)6.1.3 将表空间设为默认表空间 图 15 代码实现截图(二)6.1.4 创建用户 (1)创建后台程序管理员 图 16 代码实现截图(三)(2)创建读者用户 图 17 代码实现截图(四)6.1.5 授予用户权限 图 18 代码实现截图(五)6.2 创建数据表和序列,以及触发器 6.2.1 创建数据表(1)创建读者信息表 图 19 代码实现截图(六)(2)管理员信息 图 20 代码实现截图(七)(3)图书信息 图 21 代码实现截图(八)(4)借阅信息 图 22 代码实现截图(九)(5)归还信息 图 23 代码实现截图(十)6.2.2 创建序列和触发器(1)创建 reader_id,admin_id,book_id,re_id,bw_id 序列以及相应触发器,以 reader_id,reader_id_tri 分别为例:1)创建 reader_id 序列 图 24 代码实现截图(十一)2)创建 reader_id_tri 触发器 图 25 代码实现截图(十二)(2)创建其它功能触发器 1)还书后更新书籍的库存数量,删除借阅信息;当同一人借同本书时,不允许借出 图 26 代码实现截图(十三)2)借书后减少书籍库存数量假如书籍数量小于 0 则不借出 图 27 代码实现截图(十四)6.3 使用游标进行查询 6.3.1 对图书进行查询(编号)图 28 代码实现截图(十五)6.3.2 对图书进行查询()图 29 代码实现截图(十六)6.3.3 通过图书名称查询 图 30 代码实现截图(十七)6.4 本章小结 本章主要是通过简单的代码表现了系统一些功能的具体实现方式,主要是实现查询功能和随着借书和还书,库存数量自动修改的功能。第 7 章 oracle 后台数据的测试 7.1 基本表的查询(1)查看 reader_info 表中的数据,测试结果如下:图 31 reader_info 表数据的截图(2)查看 book_info 表中的数据,测试结果如下 图 32 book_info 表数据的截图(3)查看 admin_info 表中的数据,测试结果如下:图 33 admin_info 表数据的截图 (4)查看 return_info 和 borrow_info 表中的数据,测试结果如下:图 34 return_info 和 borrow_info 表数据的截图 7.2 触发器功能的测试(1)还书后更新书籍的库存数量,删除借阅信息;当同一人借同本书时,不允许借出,测试结果如下:图 35 还书触发器测试结果截图(2)借书后减少书籍库存数量假如书籍数量小于 0 则不借出,测试结果如下:图 36 借书触发器测试结果截图 7.3 使用游标进行图书信息查询(1)利用图书编号查询,测试结果如下:图 37 通过编号查询测试结果截图(2)利用作者模糊查询,测试结果如下:图 38 通过作者模糊查询测试结果截图 (3)利用图书名称模糊查询,测试结果如下:图 39 通过图书名称模糊查询测试结果截图 7.4 图书逾期提示 当书籍出现逾期情况时,展示读者的信息,测试结果如下:图 40 逾期提示测试结果截图 7.5 本章小结 本章主要是通过记录后台 oracle 的数据运行结果截图,体现了此图书管理系统的功能,其中包括图书的模糊查询,借书操作,还书操作,读者基本信息的查询。展望 本文主要研究了高校图书管理系统的设计与实现。本课题是使用 oracle 数据库进行后台数据的更新与查询。实现了图书管理系统的基本功能要求。但是由于开发者水平有限,本课题还有大量的功能需要去实现。以及时间原因,系统设置一些功能实现是存在许多问题,因此可以通过更加广泛的调查、研究、论证,使图书管理系统更为科学、合理,方便。本系统还可以通过与前端程序的结合,利用 java 程序语言或者其他程序语言实现用户的各种交互功能,达到用户的种种要求。参考文献 1 萨师煊,王珊.数据库系统概论.高等教育 2 永健,尚毅.oracle 数据库管理、开发与实践.人民邮电