图书馆管理系统.doc_第1页
图书馆管理系统.doc_第2页
图书馆管理系统.doc_第3页
图书馆管理系统.doc_第4页
图书馆管理系统.doc_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

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

文档简介

图书馆管理系统课程作业报告题 目: 图书馆管理系统数据库的设计 学 院: 江西理工软件学院 专 业: 软件土木 班 级: 13软件土木四班学 号: 13242439 学 生: 钟李平 授课教师: 李春雨 时 间: 2015 年 5 月 15 日 目录一、需求分析31.1 需求概述31.2 功能简介3二、数据库概念结构设计32.1 确定联系集及E-R图32.2 画出E-R图42.3图书馆管理系统总E-R图5三、数据库逻辑设计63.1 分馆信息表(fg)63.2 书籍分类信息表(fl)63.3 图书信息表(books)73.4 学生信息表(student)73.5 借阅信息表(borrow)73.6 数据字典8四、建表84.1 创建数据库84.2 创建数据表8五、数据库的运行和维护105.1 定义105.1.1 基本表的创建,建表语句105.1.2 基本表的删除105.2 数据操作105.2.1 单表查询:105.2.2 连接查询115.2.3 操作结果集查询125.2.4 嵌套查询125.3 数据库更新操作135.3.1 插入数据135.3.2 修改数据135.3.3 删除数据135.4 数据库的安全性145.5 数据库的完整性145.5.1 实体完整性定义145.5.2 参照完整性定义14六、总结15一、需求分析1.1 需求概述针对江西理工大学的图书馆管理工作量大、繁杂,人工处理非常困难。图书馆管理系统借助于计算机强大的处理能力,大大减轻了管理人员的工作量,并提高了处理的准确性。图书馆管理系统的开发运用,实现了图书馆管理的自动化,能够将图书所属的分馆与分类信息清晰,准确的传递给管理员,不仅把广大图书馆管理员从繁重的图书管理工作中解脱出来、把学校从传统的图书管理模式中解放出来,而且方便广大读者查询,借阅各类图书。1.2 功能简介能够进行数据库的数据定义、数据操纵、数据控制等处理功能,进行联机处理的相应时间要短。具体功能应包括:系统应该提供图书信息数据的插入、删除、更新、查询;借阅信息的添加、修改、删除、查询,学生基本信息查询的功能。 二、数据库概念结构设计2.1 确定联系集及E-R图根据前面对系统进行的分析,已经初步了解了图书馆管理系统的数据处理流程,找出与系统有关的各个实体及其相互联系如下:、标示实体集:分馆,书籍分类,图书,学生,四个关系。、标示联系集:书籍分类和分馆:一个分馆拥有多个书籍分类,一个书籍分类只能属于一个分馆; 存在“归属”的关系:N:1书籍分类和图书:一个书籍分类拥有多种图书,一种图书只能属于一个书籍分类; 存在“包含”的关系:1:N学生与图书:一个学生可以借多本书,一种图书可以被多个学生借阅; 存在“借阅”的关系:N:M、标示属性集:分馆(分馆编号,分馆名称,位置)书籍分类(分类编号,分类名,所属分馆)图书(图书编号,书名,作者,所属分类)学生(学号,姓名,性别,所在系)借阅(学号,图书编号,借书时间,还书时间)2.2 画出E-R图分馆信息图如下:图2-2-1分馆实体集的E-R图书籍分类信息图如下: 图2-2-2 书籍分类实体集E-R图图书信息图如下: 图2-2-3图书实体集E-R图学生信息图如下: 图2-2-4学生实体集E-R2.3图书馆管理系统总E-R图根据上面对实体联系的分析,可以画出E-R图如下:图2-2-5图书馆管理系统总E-R图三、数据库逻辑设计逻辑结构是独立于任何一种数据模型的信息结构。逻辑结构的任务是把概念结构设计阶段设计好的基本E-R图转化为宜选用的DBMS所支持的数据模型相符合的逻辑结构,并对其进行优化。E-R图向关系模型转化要解决的问题是如何将实体型和实体间的联系转化为关系模式,如何确定这些关系模式的属性和码。设计图书馆管理数据库,包括分馆、书籍分类、图书、学生四个关系, 其关系模式中对每个实体定义的属性如下:分馆信息表fg:(分馆编号,分馆名称,位置)书籍分类信息表fl: (分类编号,名称,所属分馆)图书信息表Books: (图书编号,书名,作者,所属分类)学生表Student:(学号,姓名,性别,所在系)设计出E-R图后,可将E-R图转换为数据库模式。本系统建立的数据库为“LibraryDB”,运行本系统时在库中所建立的表分别介绍如下:3.1 分馆信息表(fg)字段名描述数据类型字段限制fgno分馆编号Numberr(10)Primarykeyfgname分馆名称Varchar2(10)Not nullfglocate分馆位置Varchar2(10)Not null3.2 书籍分类信息表(fl)字段名描述数据类型字段权限Flno 分类编号Number(10)Primarykey Flname 分类名称Varchar2(10)Not null Fgno 所属分馆Numberr(10)Not null 3.3 图书信息表(books)字段名属 性数据类型字段权限bno图书编号 Numberr(10)Primarykeybname书名Varchar2(20)Not nullbauthor作者Varchar2(15)Not nullFlno所属分类Number(10)Not null 3.4 学生信息表(student)字段名属 性数据类型字段权限Sno学号Number(10)PrimarykeySname姓名 varchar2(10)Not nullsgender 性别 varchar2(10)Not nullSdept所在系 varchar2(10)Not null3.5 借阅信息表(borrow)字段名属 性数据类型字段权限Sno学号Number(10)PrimarykeyBno图书编号 Number(10)Primarykeylborrow_date 借书时间 DateNot nullReturn_date还书时间 Date3.6 数据字典参数名 类型 长度别名 意义分馆编号数值型10fgno唯一标识一个分馆分馆名称字符型10fgname分馆位置字符型10fglocate分类编号数值型10flno唯一标识一个书籍分类分类名称字符型15flname图书编号数值型10bno唯一标识一类图书图书书名字符型20bname图书作者字符型15bauthor学号数值型10sno唯一标识一个学生姓名字符型10sname性别字符型10sgender所在系字符型10sdept四、建表4.1 创建数据库打开SQL工具“查询分析器”在查询窗口中键入下列SQL语句create database libraryDB执行上述SQL语句即可新建一名为libraryDB的数据库。4.2 创建数据表 一个完整的数据库不可缺少的就是数据表,若干个数据表的集合成一个数据库。数据表主要用来存放一定格式的记录,数据表中的行被称为记录,列被称为字段。创建数据表的过程其实就是定义字段的过程。在此图书馆管理系统中需要创建五个表,即分馆信息表、书籍分类信息表、图书信息表、学生信息表和借阅信息表。创建数据库后,为libraryDB数据库添加数据表,步骤如下。新建查询窗口在查询窗口中键入下列SQL语句create table fg(fgno number(10) primary key, /分馆编号fgname varchar2(10), /分馆名称fglocate varchar2(10) /分馆位置);执行上述SQL语句即可创建分馆信息表相关表格create table fl(flno number(10) primary key, /书籍分类编号flname varchar2(15), /书籍分类名称fgno number(10) references fg(fgno) /书籍所属分馆);执行上述SQL语句即可创建书籍分类信息表相关表格create table books(bno number(10) constraint b_pk primary key, /图书编号bname varchar2(20), /书名bauthor varchar2(15), /作者 flno number(10) references fl(flno) /所属分类);执行上述SQL语句即可创建图书信息表相关表格create table student(sno number(10) constraint s_pk primary key, /学号sname varchar2(10), /姓名sgender varchar2(10) check(sgender in(男,女), /性别sdept varchar2(10) /所在系);create table borrow(sno number(10) references student(sno), /学号bno number(10), /图书编号borrow_date date, /借书时间ruturn_date date, /还书时间foreign key(bno) references books(bno),constraint borrow_pk primary key(sno,bno);执行上述SQL语句即可创建借阅信息表相关表格五、数据库的运行和维护5.1 定义基本表的创建、修改及删除;索引的创建和删除。5.1.1 基本表的创建,建表语句 create table fg( /创建分馆表fgno number(10) primary key, fgname varchar2(10), fglocate varchar2(10) );5.1.2 基本表的删除drop table fg;5.2 数据操作5.2.1 单表查询:查询书名为“乱世佳人”的作者select bauthor from bookswhere bname=乱世佳人;结果: 5.2.2 连接查询查询学生的学号、姓名,所借图书的编号和书名以及借书时间select a.sno,a.sname,b.bno,b.bname,c.borrow_date from student a,books b,borrow cwhere a.sno=c.sno and b.bno=c.bno;结果:5.2.3 操作结果集查询查询13242401号同学和13242405号同学共同借阅过的图书select bno from borrowwhere sno=13242401intersectselect bno from borrowwhere sno=13242405; 查询结果:5.2.4 嵌套查询 查询借阅过“3”这本书的所有学生的学号、姓名。select sno,sname from studentwhere sno in(select sno from borrow where bno=3);查询结果:5.3 数据库更新操作5.3.1 插入数据向Student表中添加一项记录:学号:13242407, 姓名:kobi ,性别:男, 所在系:cs insert into student values(13242407,kobi,男,cs);结果:5.3.2 修改数据修改rose的学号为13242408update student set sno=13242408 where sname=rose;结果:5.3.3 删除数据删除所有ps系学生的记录Delete from studentWhere(sdept=ps);结果: 5.4 数据库的安全性所谓计算机系统安全性,是指为计算机系统建立和采取的各种安全保护措施,以保护计算机系统中的硬件,软件及数据,防止其偶然或恶意的原因使系统遭到破坏,数据遭到更改或泄露等。为防止因用户非法使用数据库造成数据泄露、更改或破坏,必须采取一些安全性控制措施以保证数据库中数据的安全、可靠和正确有效。安全性控制的防范对象是非法用户和非法操作,防止他们对数据库数据的非法存取。主要采用用户标识及鉴定,使用用户名或用户标识号来标明用户身份。用户想要对对数据库内容进行相关操作,必须申请一个用户名或用户标识号,每次登陆都必须输入该用户名以及相应正确的口令,然后系统对其进行验证,只有通过验证的用户方可对数据库进行操作。5.5 数据库的完整性5.5.1 实体完整性定义:在学生表student中将sno定义为主码。create table student(sno number(10) , sname varchar2(10), sgender varchar2(10) check(sgender in(男,女), sdept varchar2(10) , constraint s_pk primary key(sno) );5.5.2 参照完整性定义:在借阅信息表borrow中将sno、bno定义为外码。create table borrow(sno number(10) , bno number(10), borrow_date date, ruturn_date date, Constraint borrow_pk1 foreign key(bno) r

温馨提示

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

评论

0/150

提交评论