图书馆管理系统SQL数据库
数据库系统实验报告4(简单图书馆管理数据库的实现)

6
图书信息表:
2.还书后: 借阅信息表:
图书信息表:
备注: 1、表头及以下的栏目和内容,不得更改;其它栏目的位置可以适当调整,可以根据需要适当增加或减少 页。 2、本课程包含多次实验,请每次实验项目填写一份。
7
2
利用 sf_borrow,sf_return 进行借、还操作,并注意数据库中三个表的数据变化情况。 三、实验结果及分析 (一)创建数据库和数据表: 选择用企业管理器创建数据库、数据表
3
(二)数据相关操作: 1.查询:
2.删除:
4
删除后:
3.更新:
更新后:
(三)创建触发器、存储过程进行借还书操作: 1.针对借阅信息表的插入操作创建触发器,当借阅信息表进行插入操作时,自动根据书号,将图 书信息表相应记录的“状态”字段改为 0。 CREATE TRIGGER Insert_borrow ON dbo.借阅信息表 FOR INSERT AS begin update 图书信息表 set 状态=0 from Inserted i,图书信息表 t where t.书号=i.书号 end 2.针对借阅信息表的删除操作创建触发器,当借阅信息表进行删除操作时,自动根据书号,将图 书信息表相应记录的“状态”字段改为 1。
作者 sql c++ ms java c# net
状态 1 1 1 1 1 1
借书证号 1 2 3
姓名 张三 李四 王五
住址 学三 学四 学五
并对这两个表进行删除、更新、和查询等操作 三、创建触发器、和存储过程进行借、还书操作 1) 针对借阅信息表的插入操作创建触发器,当借阅信息表进行插入操作时,自动根据书号,将图 书信息表相应记录的“状态”字段改为 0。 2) 针对借阅信息表的删除操作创建触发器,当借阅信息表进行删除操作时,自动根据书号,将图 书信息表相应记录的“状态”字段改为 1。 3) 创建存储过程:sf_borrow,实现借书功能即:向借阅信息表进行插入操作,将书号、借书证 号,借书时间作为参数,并自动的将还书时间设置为借书时间后一个月。 4) 创建存储过程:sf_return,现实还书功能即:根据书号对借阅信息表进行删除操作,将书号 作为参数。
高校图书馆管理系统(SQL数据库)

高校图书馆管理系统(SQL数据库)高校图书馆管理系统(SQL数据库)随着信息技术的发展,高校图书馆管理系统在图书馆运营中的重要性日益凸显。
为了更好地管理馆藏资源和提供优质的服务,许多高校选择使用SQL数据库作为图书馆管理系统的基础。
本文将探讨高校图书馆管理系统中SQL数据库的应用及其优势。
一、图书馆管理系统简介图书馆管理系统是高校图书馆中的核心业务系统,它涵盖了图书馆的各个环节,包括图书采购、编目、借阅、归还、查询等功能。
通过图书馆管理系统,读者可以方便地查找、借阅和归还图书,图书馆工作人员也可以高效地管理馆藏资源。
二、SQL数据库在图书馆管理系统中的应用1. 数据库设计在图书馆管理系统中,SQL数据库的设计是至关重要的一环。
通过合理的数据库设计,可以提高系统的查询效率和安全性。
例如,可以将图书馆中的书籍信息、读者信息、借阅记录等存储在不同的数据库表中,并通过外键关联它们,实现数据的联合查询。
2. 图书馆资源管理SQL数据库提供了强大的查询和管理功能,可以方便地进行图书馆资源管理。
通过SQL语句,图书馆管理员可以实现对图书馆馆藏资源进行分类、检索和统计。
同时,SQL数据库还支持数据的备份和恢复,保障了图书馆数据的安全性。
3. 借阅管理借阅管理是图书馆管理系统中的核心功能之一。
SQL数据库可以存储读者的借阅记录,包括借阅时间、归还时间、借阅状态等信息。
通过SQL查询语句,管理员可以实时监控图书的借阅情况,及时催还逾期图书。
4. 读者管理通过SQL数据库,图书馆管理员可以方便地管理读者信息。
包括读者的个人信息、借阅历史记录、借阅限制等。
管理员可以针对不同的读者类型设置不同的借阅权限,确保图书馆资源的合理利用。
5. 统计和报表SQL数据库提供了强大的统计和报表功能,方便图书馆管理员进行图书馆运营效果的评估。
通过SQL查询语句,可以得到图书馆的借阅量、图书馆藏资源的流通情况等各项指标,为图书馆决策提供有力支持。
图书馆管理系统SQL数据库

图书馆管理系统S Q L数据库Document number【AA80KGB-AA98YT-AAT8CB-2A6UT-A18GG】摘要在计算机日益普及的今天,对个人而言若采用一套行之有效的图书管理系统来管理自己的书籍,会方便许多。
对图书管理部门而言,以前单一的手工检索已不能满足人们的要求,往往是投入了大量的人力和财力却得不到高效的管理效率。
为了便于图书资料的管理需要有效的图书管理软件,减轻工作人员的工作量,方便工作人员对它的操作,提高管理的质量和水平,做到高效、智能化管理,达到提高图书借阅信息管理效率的目的。
采用数据库技术生成的图书馆借阅管理系统将会极大地方便借阅者并简化图书馆管理人员和工作人员的劳动,使工作人员从繁忙、复杂的工作进入到一个简单、高效的工作中关键字:图书借阅;人员管理;图书维护。
目录1.引言随着社会信息量的与日俱增,职场竞争的日趋激烈,越来越多的人更关注知识的积累、能力的培养。
作为信息存储的主要媒体之一图书,数量、规模比以往任何时候都大的多,不论个人还是图书管理部门都需要使用方便而有效的方式来管理自己的书籍。
在计算机日益普及的今天,对个人而言若采用一套行之有效的图书管理系统来管理自己的书籍,会方便许多。
对图书管理部门而言,以前单一的手工检索已不能满足人们的要求,为了便于图书资料的管理需要有效的图书管理软件。
对于日益扩大的图书馆,查找特定的书目总是借阅者或工作人员劳神费力,有时还没有结果。
因此往往是投入了大量的人力和财力却得不到高效的管理效率。
为了缩短借阅者的等待时间,减轻工作人员的工作量,方便工作人员对它的操作,提高管理的质量和水平,做到高效、智能化管理,从而达到提高图书借阅信息管理效率的目的,采用数据库技术生成的图书馆借阅管理系统将会极大地方便借阅者并简化图书馆管理人员和工作人员的劳动,使工作人员从繁忙、复杂的工作进入到一个简单、高效的工作中。
本文以高校图书馆管理系统管理系统开发过程为背景,全文分为目录、需求分析、概要设计、逻辑设计、物理设计,以及系统的实现等全过程。
基于ASP 和SQL—Server 数据库的小型图书管理系统

基于ASP 和SQL—Server 数据库的小型图书管理系统作者:李艳峰李磊来源:《电脑知识与技术》2012年第28期摘要:信息时代的今天,网络已经成为人们工作和学习中非常重要的一部分,现在人们的生活已经离不开网络,比如用于通信的通信网、用于看电视的有线电视网、以及强大的互联网。
再者就是现在正在飞速发展的物联网。
而校园网,是在学校范围内,为学校教学、科研和管理等教育提供资源共享、信息交流和协同工作的计算机网络。
比如办公自动化系统、CRP系统(教务管理系统)、图书馆管理系统等。
一个好的图书馆管理系统可以使图书馆各项工作更加明确,学生借书、还书、检索图书更加方便。
本图书馆管理系统,是一个小型、简单实用的图书系统。
以ASP为主要开发语言,全方面运用DreamwerverCS5、Fireworks更有强大的SQL-server数据库支持,是一个成本低廉,使用方便的图书管理系统。
关键词:Dreamweaver;ASP;SQL-server;图书馆管理系统中图分类号:TP391 文献标识码:A 文章编号:1009-3044(2012)28-6648-041 概述一个好的图书馆不但要有丰富的书籍更应有一个完善的管理系统,一个好的管理系统可以使图书馆的各项工作更加有利于管理,目前仍有些图书馆的管理仍处在手工阶段。
存在信息资料管理分散、安全性差、利用率低等缺陷;再者,图书信息本身存在着它的不规范性,单纯使用特定的软件进行管理也有一定难度,而且很难适应此类信息管理模式的变化比计划还快的特点。
对此,基于网络技术的网络管理模式体现出强大的生命力,有人誉为是将改变用户网络管理方式的革命性网络管理解决方案。
本系统是笔者通过对所在学校校图书馆管理系统的充分了解的基础上开发的,可以实现简单的图书查看、借阅、归还等功能。
2 系统介绍和功能分析2.1系统介绍本系统是一个基于ASP的图书馆系统,采用ASP作为编程语言,采用强大的SQL-server 作为数据库,管理员可以对网站进行管理和维护。
实验5 sql语句练习——图书馆数据库答案

实验5sql语句练习——图书馆数据库实验5 sql语句练习——图书馆数据库实验目的(1)了解SQL Server数据库的逻辑结构和物理结构;(2)了解表的结构特点;(3)了解SQL Server的基本数据类型;(4)了解空值概念;(5)学会在企业管理器中创建数据库和表;(6)学会使用T-SQL语句创建数据库和表。
(7)学会使用T-SQL语句更新数据。
(7)学会使用T-SQL语句创建多种查询。
实验准备首先要明确,能够创建数据库的用户必须是系统管理员,或是被授权使用CREATE DATABASE语句的用户。
其次创建数据库必须要确定数据库名、数据库大小(最初的大小、最大的大小、是否允许增长及增长方式)和存储数据库的文件。
然后,确定数据库包含哪些表,以及所包含的各表的结构,还要了解SQL Server的常用数据类型,以创建数据库的表。
此外还要了解两种常用的创建数据库、表的方法,即在企业管理器中创建和使用T-SQL的CREATE DA TABASE语句。
实验内容假设有5本书设有一图书馆数据库,其中包括3个表,即图书表、读者表和借阅表。
三个表的结构如图:列名说明数据类型约束说明书号图书唯一的编号定长字符串,长度为10 主键书名图书的名称定长字符串,长度为50 空值作者图书的编著者名定长字符串,长度为30 空值出版社图书的出版社定长字符串,长度为30 空值单价出版社确定的图书的单价浮点型,Float 空值读者表结构假设有10位读者列名说明数据类型约束说明读者号读者唯一的编号定长字符串,长度为10 主键姓名读者姓名定长字符串,长度为8 非空值性别读者性别定长字符串,长度为2 非空值办公电话读者办公电话定长字符串,长度为8 空值部门读者所在部门定长字符串,长度为30 空值列名说明数据类型约束说明读者号读者的唯一编号定长字符串,长度为10 外码,引用读者表的主键书号图书的唯一编号定长字符串,长度为20 外码,引用图书表的主键借出日期借出图书的日期定长字符串,长度为8 非空值归还日期归还图书的日期定长字符串,长度为8 空值主键为:(读者号,图书号)(1)用Sql语句创建图书馆数据库Create database Lab05(2)用Sql语句创建上述3个表create table book(bookId char(10)primary key,bookName varchar(50),bookWriter varchar(30),bookPublish varchar(30),bookPrice float)create table reader(readerId char(10) primary key,readerName varchar(8)not null,readerSex char(2)not null,readerOfficeTel char(8),readerDepartment varchar(30))create table 借阅表(readerId char(10),bookId char(10),checkOutTime char(8),checkInTime char(8),primary key(readerId,bookId),foreign key (readerId) references reader(readerId),foreign key (bookId) references book(bookId),)(3)基于图书馆数据库的3个表,用sql语言完成一下操作:1)为图书表增加一列“ISBN”,数据类型为CHAR(10)alter table book add ISBN char(10)2)为刚添加的ISBN列增加缺省值约束,约束名为ISBNDEF,缺省值为‘7111085949’ALTER TABLE book ADD CONSTRAINT ISBNDEF DEFAULT ('7111085949') FOR ISBN 3)删除图书表中ISBN列增加的缺省值约束alter table book drop ISBNDEF4)删除图书表中新增的ISBN列ALTER TABLE book DROP COLUMN ISBN5)查询全体图书的图书号、书名、作者、出版社和单价select bookId,bookName,bookWriter,bookPublish,bookPricefrom book6)查询全体图书的信息,其中单价打8折,并设置该列的别名为‘打折价’select bookId,bookName,bookWriter,bookPublish,(bookPrice*0.8) as打折价from book7)显示所有借阅者的读者号,并去掉重复行select distinct readerIdfrom 借阅表8)查询所有单价在20—30元之间的图书信息select bookId,bookName,bookWriter,bookPublish,bookPrice,ISBNfrom bookwhere bookPrice between 20 and 309)查询机械工业出版社、科学出版社、人民邮电出版社的图书信息select bookId,bookName,bookWriter,bookPublish,bookPrice,ISBNfrom bookwhere bookPublish in('机械工业出版社' , '科学出版社','人民邮电出版社') 10)查询既不是机械工业出版社、人民邮电出版社、也不是科学出版社出版的图书信息select bookId,bookName,bookWriter,bookPublish,bookPrice,ISBNfrom bookwhere bookPublish not in('机械工业出版社' , '科学出版社','人民邮电出版社') 11)查询姓名的第二个字符是’建’,并且只有2个字的读者的读者号及姓名select readerId,readerNamefrom readerwhere readerName like '_建'12)查询姓名不是以‘王’、‘张’或‘李’开头的所有读者的读者号及姓名【方式一】查询出来的结果有问题!select readerId,readerNamefrom readerwhere readerName not in ('王%','张%','李%')【方式二】select readerId,readerNamefrom readerwhere readerName not in(select readerNamefrom readerwhere readerName like'王%'or readerName like'张%'or readerName like'李%' )13)查询无归还日期的借阅信息select book.bookId,book.bookName,reader.readerId,reader.readerName,借阅表.checkOutTime as 借书时间,借阅表.checkInTime as 还书时间from 借阅表,book,readerwhere 借阅表.bookId = book.bookIdand 借阅表.readerId = reader.readerIdand 借阅表.checkInTime is null14)查询机械工业出版社图书的平均价格、最高价、最低价select avg(bookPrice)as 平均价格,max(bookPrice) as 最高价,min(bookPrice) as 最低价from bookwhere bookPublish = '机械工业出版社图书'15)查询读者的基本信息及借阅情况select reader.readerId,reader.readerName ,借阅表.bookId,book.bookName,book.bookPublishfrom reader , 借阅表,bookwhere reader.readerId = 借阅表.readerIdand book.bookId = 借阅表.bookIdand 借阅表.readerId ='1000000007'16)查询至少借阅过1本机械工业出版社出版的图书的读者的读者号、姓名、书名及借阅本数,并按借阅本书多少降序排列select r.Rno,Rname,count(borrow.Bno) 借阅册数from borrow,b,rwhere b.bno=borrow.bno and press='机械工业出版社' and borrow.rno=r.rnogroup by r.rno,Rnameorder by count(borrow.Bno) desc17)查询与‘王小平’的办公电话相同的读者的姓名/* 使用“自连接方式”求解*/select b.readerName,b.readerId,a.readerOfficeTelfrom reader a, reader bwhere a.readerName like '王小平'and a.readerOfficeTel = b.readerOfficeTel/*18)查询所有单价小于平均单价的图书的书号、书名及出版社select bookId,bookName,bookPublish,bookPricefrom bookwhere bookPrice <(select avg(bookPrice) as averagePricefrom book)19)查询‘科学出版社’的图书单价比‘机械工业出版社’最高单价还高的图书书名及单价select bookId,bookName,bookPublish,bookPricefrom bookwhere bookPublish like '科学出版社' and bookPrice >(select max(bookPrice)from bookwhere bookPublish = '机械工业出版社')20)查询‘科学出版社’的图书中单价比‘机械工业出版社’最低单价高的图书书名及单价select bookId,bookName,bookPublish,bookPricefrom bookwhere bookPrice <(select max(bookPrice)from bookwhere bookPublish = '机械工业出版社')and bookPublish like '科学出版社'21)创建机械工业出版社图书的视图CREATE VIEW 机械工业出版社ViewASSELECT bookId,bookName,bookPriceFROM bookWHERE bookPublish = '机械工业出版社'22)创建一个借阅统计视图,名为CountView,包含读者的读者号和总借阅本数CREATE VIEW CountViewASSELECT readerId as 读者号,count(*) as 总借阅本数FROM 借阅表GROUP BY readerId23)创建一个借阅统计视图,名为CountView10,包含借阅总本数打于2的读者号和总借阅本数CREATE VIEW 借阅统计视图ViewASSELECT readerId as 读者号,count(*) as 总借阅本数FROM 借阅表GROUP BY readerIdHA VING COUNT(*) >2。
图书馆管理系统概要设计说明书

图书馆管理系统概要设计说明书目录1引言 (2)1.1 背景 (2)1.2 系统概述 (2)1.3 文档概述 (2)2引用文档 (3)3设计与决策 (3)4软件体系结构设计 (3)4.1 体系结构 (4)4.1.1 程序模块划分 (4)4.1.2 程序功能模块关系 (6)4.2接口设计 (6)4.2.1接口描述 (6)4.2.2 用户接口 (7)4.2.3 外部接口 (7)4.2.4 内部接口 (7)5各模块设计 (7)5.1用户登录模块 (8)5.2图书管理模块 (9)5.3读者信息管理模块 (9)5.4借阅信息管理模块 (10)5.5系统管理模块 (11)6数据库设计 (12)6.1数据库逻辑结构设计 (12)6.2 数据库物理结构 (17)6.3数据结构与程序的关系 (17)7需求的可追踪性 (17)8系统运行与维护设计 (17)8.1运行设计 (17)8.2维护设计 (18)1引言1.1 背景随着信息化水平的不断扩大,计算机技术的不断应用和提高,计算机已经深入到社会生活的各个角落。
而中小型租、借书图书馆仍采用手工管理图书的方法,不仅效率低、易出错、手续繁琐,而且耗费大量的人力。
为了满足其管理人员对图书馆书籍,读者资料,借还书等进行高效的管理,在工作人员具备一定的计算机操作能力的前提下,此图书管理馆系统软件力求提高其管理效率,代替人工处理提高图书馆的信息化和自动化。
1.2 系统概述根据需求分析说明书所得出的客户需求,本图书馆管理系统的主要实现的功能有:图书馆管理员对图书的系统化管理,包括图书信息的增删改以及查询、读者信息的增删改以及查询;读者借书和还书的处理以及相关信息的管理,用户信息管理、图书信息检索查询、用户登录操作等。
本图书馆管理系统属于一个数据管理型系统。
包括数据的处理加工,数据的存储,以及用户交互等;运行的现场不应该出现太多的错误,能够准确的根据用户的操作进行一系列的交互,以满足用户的需求。
实验十一 图书管理系统数据库设计

注销
图3-1
学生的操作流程
(2)管理员 管理员可完成书籍和学生的增加、删除和修改以及对学生借阅、续借、归还的确认,其 操作流程如图3-2 所示。 登录
书籍信息维护
学生信息维护
借阅图书确认
归还图书确认
注销
图3-2 2、概念模型设计
管理员操作流程
数据库需要表述的信息有以下几种: (1)图书信息 (2)学生信息 (3)管理员信息 (4)学生预定图书信息 (5)学生借阅还图书信息 说明: 1)书号是图书的键码,每本书有唯一的书号。一个学生可同时借阅多本书。一个管理员可 处理多个同学的借阅等事宜。 2)一般情况下,学生、管理员和图书之间的联系为1:1:n,借书关系Lend作为连接关系, 其键码为n端实体集的键码,即书号为借书关系的键码。这反映了如果还书时也把当初的借 书记录删除,则书号就能唯一识别一个元组。 如果在不删除借书记录的情况下,同一学生再次借同一本书,这时,学生、管理员和图 之间的联系变为m:p:n,于是,借书关系的键码为书号、学号和管理员号的组合。但这里有一 个隐含的信息, 即同一学生前后两次借同一本书所遇到的管理员不同, 而这种不同可能仅仅 是“ 日期”不同。因此,借书日期成了必不可少的成分,也就是说,在这种情况下,属性全集 才是借书关系的键码。 总之,借书关系的键码与图书管理模式有关,读者可按照自己的理解确定键码,并编写 相应的事务处理流程。其他关系也有类似之处。 3)要知道图书当前的状态,是在图书馆存放,还是被借阅等,需要在Book的模式中增加对 应项用以表示图书当前的状态。 比如我们增加State, 并且约定取值和状态的对应关系如下: 0:在图书馆中并且没有被预定 1:在图书馆中并且已被预定 2:被借出并且没有被预定 3:被借出并且已被预定 用E-R模型表达该模型的设计,画出E-R模型如下: 3、逻辑设计 通过E-R模型到关系模型的设计,请写出关系模式: (实体或属性的英文可以自取) 4、物理设计 为了提高在表中搜索元组的速度, 在实际实现的时候应该基于键码建立索引。 下面是各 表中建立索引的表项: (1)在书表中按书号建立索引 T-SQL语句: (2)在学生表中按学号建立索引 T-SQL语句: 5、用T-SQL实现设计 (1)建立数据库表 1) 建Book(图书信息) 表(同2) 时定义约束) T-SQL: 2) 建Student(学生信息)表(同4) 时定义约束) T-SQL:
Sql-server数据库课程设计-图书馆管理系统

数据库系统概论课程设计图书馆数据库管理系统目录序言 (1)一、图书馆管理系统E-R图 (2)二、图书馆管理系统功能实现示意图 (3)三、图书馆管理系统功能图例 (4)3.1 读者借阅图书 (4)3.2 读者归还图书 (4)3.3 读者续借图书 (5)3.4 读者查询借阅图书情况 (5)3.5 读者检索图书信息 (6)四、图书馆管理系统附加功能 (7)4.1 往学生表中插入列"系部",其值等于学号中代表系部的位的值,再插入列"专业号",其值等于学号中代表专业的位的值 (7)4.2 查询每个学生对书本的借阅数量 (9)4.3 查询各个专业的学生借阅书本的数量 (11)五、图书馆管理系统数据库、数据表源代码 (12)5.1 图书馆管理系统"数据库"源代码 (12)5.2 图书馆管理系统"数据表"源代码 (12)六、图书馆管理系统存储过程源代码 (15)6.1 读者借阅图书存储过程 (15)6.2 读者还书存储过程 (17)6.3 读者续借图书存储过程 (18)6.4 读者查询借阅图书情况存储过程 (19)6.5 读者检索的图书信息存储过程 (22)七、图书馆管理系统触发器源代码 (23)7.1 借书要求(书本没有库存,则无法进行借书操作) (23)7.2 借书要求(读者最多借阅量) (24)7.3 续借次数要求 (25)7.4 读者还书信息插入RDeleted表 (26)序言本图书馆管理系统谨根据实际需求所创建,创建有如下八个数据表:Book(图书信息表),Dept(学生系部信息表),Major(学生专业信息表),Student(学生信息表),StudentBook(学生借阅图书信息表),Teacher(教师信息表),TeacherBook(教师借阅图书信息表),RDeleted(读者还书信息表)等。
这些数据表结合图书馆数据库中的五个存储过程,即实现了普通图书馆的大部分功能。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
图书馆管理系统S Q L数据库Document number【AA80KGB-AA98YT-AAT8CB-2A6UT-A18GG】摘要在计算机日益普及的今天,对个人而言若采用一套行之有效的图书管理系统来管理自己的书籍,会方便许多。
对图书管理部门而言,以前单一的手工检索已不能满足人们的要求,往往是投入了大量的人力和财力却得不到高效的管理效率。
为了便于图书资料的管理需要有效的图书管理软件,减轻工作人员的工作量,方便工作人员对它的操作,提高管理的质量和水平,做到高效、智能化管理,达到提高图书借阅信息管理效率的目的。
采用数据库技术生成的图书馆借阅管理系统将会极大地方便借阅者并简化图书馆管理人员和工作人员的劳动,使工作人员从繁忙、复杂的工作进入到一个简单、高效的工作中关键字:图书借阅;人员管理;图书维护。
目录1.引言随着社会信息量的与日俱增,职场竞争的日趋激烈,越来越多的人更关注知识的积累、能力的培养。
作为信息存储的主要媒体之一图书,数量、规模比以往任何时候都大的多,不论个人还是图书管理部门都需要使用方便而有效的方式来管理自己的书籍。
在计算机日益普及的今天,对个人而言若采用一套行之有效的图书管理系统来管理自己的书籍,会方便许多。
对图书管理部门而言,以前单一的手工检索已不能满足人们的要求,为了便于图书资料的管理需要有效的图书管理软件。
对于日益扩大的图书馆,查找特定的书目总是借阅者或工作人员劳神费力,有时还没有结果。
因此往往是投入了大量的人力和财力却得不到高效的管理效率。
为了缩短借阅者的等待时间,减轻工作人员的工作量,方便工作人员对它的操作,提高管理的质量和水平,做到高效、智能化管理,从而达到提高图书借阅信息管理效率的目的,采用数据库技术生成的图书馆借阅管理系统将会极大地方便借阅者并简化图书馆管理人员和工作人员的劳动,使工作人员从繁忙、复杂的工作进入到一个简单、高效的工作中。
本文以高校图书馆管理系统管理系统开发过程为背景,全文分为目录、需求分析、概要设计、逻辑设计、物理设计,以及系统的实现等全过程。
在程序设计与调试上采用了自上而下,逐步细化,逐步完善的原则。
采用结构化的功能模块设计系统功能,可读性好,易于扩充。
基本功能全面,系统可读性好,易于维护、更新,安全性好。
2. 需求分析阶段2.1 引言进行系统设计,首先要对系统的现状进行分析。
根据系统的目标、需求和功能,制定和选择一个较好的系统方案,从而达到一个合理的优化系统。
每个学校都有图书馆,最初由于图书数量和种类较少,人工手动管理比较方便和灵活。
随着社会的发展,图书的数量和种类越来越多,人工手动管理会降低工作的效率,希望建立一个图书管理系统,是为了解决人工手动管理图书信息在实践的问题,从而达到系统化、规范化、标准化的水平。
该系统的建立不但给管理者带来了方便,也节省了工作时间从而提高了工作效率。
需求分析是在于要弄清用户对开发的数据库应用系统的确切要求。
数据库设计的第一步是明确数据库的目的和如何使用,也就是说需要从数据库中得到哪些信息。
明确目的之后,就可以确定您需要保存哪些主题的信息(表),以及每个主题需要保存哪些信息(表中字段)。
在构造系统时,首先从需求出发构造数据库表,然后再由数据库表结合需求划分系统功能模块。
这样,就把一个大的系统分解成了几个小系统。
这里把系统的层次划分为了四个部分:图书维护,人员信息管理,图书借阅管理,信息查询。
能够实现以下功能:○1进行新书入库、现有图书信息修改以及删除;②能够实现对读者基本信息的查询和编辑管理;③能够进行超期罚款功能;④能够进行借阅信息的查询功能;2.2 需求分析阶段的目标与任务2.2.1处理对象读者信息:读者编号,姓名,性别,学号,学院,专业,年级,类型,类别编号,办证日期管理员信息:管理员编号,姓名,性别,权限,登录口令,住址,电话馆藏图书信息:图书编号,索书号,图书名称,作者,出版社,单价,摘要,关键字,副本数,分类,出版日期,状态借阅信息:图书编号,读者编号,图书名,作者,借阅日期,归还日期,归还日期,应还日期,罚金借阅历史信息:图书编号,读者编号,图书名,作者,借阅日期,还书日期罚款信息:读者编号,图书编号,图书名,作者,借阅日期,应还日期,归还日期,罚款金额,处理状态,管理员编号2.2.2处理功能及要求1.能够存储一定数量的图书信息,并方便有效的进行相应的书籍数据操作和管理,这主要包括:1) 图书信息的录入、删除及修改。
2) 图书信息的多关键字检索查询。
3) 图书的出借、返还及超期罚款或丢失赔偿。
2.能够对一定数量的读者、管理员进行相应的信息存储与管理,这其中包括:1) 读者信息的登记、删除及修改。
2)管理员信息的增加、删除及修改。
3) 读者资料的统计与查询。
3.能够提供一定的安全机制,提供数据信息授权访问,防止随意删改、查询。
4.对查询、统计的结果能够列表显示。
2.2.3.安全性和完整性要求1)安全性要求系统安全性要求体现在数据库安全性、信息安全性和系统平台的安全性等方面。
安全性先通过视图机制,不同的用户只能访问系统授权的视图,这样可提供系统数据一定程度上的安全性,再通过分配权限、设置权限级别来区别对待不同操作者对数据库的操作来提高数据库的安全性;系统平台的安全性体现在操作系统的安全性、计算机系统的安全性和网络体系的安全性等方面。
2)完整性要求系统完整性要求系统中数据的正确性以及相容性。
可通过建立主、外键,使用check约束,或者通过使用触发器和级联更新。
2.3 需求分析阶段成果2.3.1 体会与收获系统需求分析主要是通过对本校图书管理员的咨询、请教,了解我校图书馆的管理规则和运行机制,并通过上网搜索有关图书管理系统的知识,了解到了图书管理的现状,以及在管理中的一些问题。
由于是第一次做这样的需求调查,开始总是觉得无从下手,不知道自己该了解、该清楚那些方面的知识,在绘制系统业务流程图时,也遇到了很多的问题,但通过老师的帮助与指导,和自己一遍一遍的分析和完善,才逐步把业务弄清楚,最终顺利完成了需求分析阶段的任务。
2.3.4 图书管理系统数据字典(a)数据项:系统涉及的数据项有44项表1.1 数据项列表数据项编号数据项名数据项含义与其它数据项的关系存储结构别名DI-1 BookID 图书条码号char(9)条码号DI-2 BookNo 图书索书号char(10)索书号DI-3 BookName 图书名char(20)书名DI-4 BookWriter图书作者char(8)作者DI-5 BookPublish图书出版社char(20)出版社号的关系构DI-6 BookPrice 图书单价char(7)单价DI-7 BookDate 图书出版日期Date 出版日期DI-8 BookClass 图书分类char(20)类别DI-9 BookMain 图书摘要char (200)摘要DI-10 BookPrim 图书关键字char(30)关键字DI-11 BookCopy 图书副本数char(5)副本数DI-12 BookState 图书是否可借char(10)状态DI-13 BookRNo 所属馆室号同RoomNo char(5)馆室号DI-14 ReaID 读者条码号char(9)条码号DI-15 ReaName 读者姓名char(10)姓名DI-16 ReaSex 读者性别char(2)性别DI-17 ReaNo 读者学号char(9)学号DI-18 ReaLBID 读者类别编号同LBID char(5)类别编号DI-19 ReaType 读者类型(职务)char(20)类型DI-20 ReaDep 读者所在学院char(20)学院DI-21 ReaGrade 读者所属年级char(5)年级DI-22 ReaPre 读者所读专业char(20)专业DI-23 ReaDate 读者办证时间Date 办证时间DI-24 OutDate 借阅日期Date 借阅时间DI-25 InDate 归还日期Date 归还时间DI-26 YHDate 应还日期Date 应还时间DI-27 Fine 罚款金额char(3)罚款金额DI-28 CLState 是否交纳罚金char(8)处理状态DI-29 LBID 类别编号同ReaLBID char(5类别编号号的关系构)DI-30 LBName 读者类别名char(20)类别名DI-31 LBnum 允许最多借书数量char(5)借阅数量DI-32 LBbqx 允许最长持有时间char(4)借阅期限DI-33 LBqx 借阅卡有效期char(3)有效期限DI-34 MID 管理员编号同RoomMID char(10)编号DI-35 MName 管理员姓名char(10)姓名DI-36 MSex 管理员性别char(2)性别DI-37 Mpwd 管理员口令char(8)口令DI-38 MAuth 管理员权限级别char(4)权限级别DI-39 MTeleph 管理员电话char(15)电话DI-40 MAddre 管理员地址char(30)住址DI-41 RoomNo 馆室号同BookRNo char(5)馆室号DI-42 RoomMID 馆室管理员编号同MID char(10)编号DI-43 RoomNum 馆室内图书数目char(5)数量DI-44 RoomAddre 馆室地址char(20)地址(b)数据结构:表1.2 数据结构列表数据结构编号数据结构名数据结构含义组成DS-1 Book 馆藏图书信息BookID,BookNo,BookName,BookWriter ,BookPublish,BookPrice,BookDate,Bo okClass,BookMain,BookPrim,BookCopy,BookSt数据结构编号数据结构名数据结构含义组成ate,BookRNoDS-2 Reader 读者信息ReaID, ReaName, ReaSex, ReaNo, ReaLBID, ReaType, ReaDep, ReaGrade, ReaPref, ReaDate,DS-3 Borrow 借阅信息BookID,ReaID,BookName,BookWriter, Outdate,YHdateDS-4 History 借阅历史BookID,ReaID,BookName,BookWriter, Outdate,IndateDS-5 Fine 罚款信息BookID,ReaID,BookName,Outdate,Ind ate,Fine, CLState,MIDDS-6 ReaderType读者类别LBID, LBName, LBnum, LBbqx,LBqxDS-7 Maneger 管理员信息MID,MName,MSex,Mpwd,MAuth,MTeleph ,MAddreDS-8 Room 馆室信息RoomNO, RoomMID, RoomNum, RoomAddre2.3.5 处理逻辑描述表1.3 处理逻辑列表3 概念设计阶段3.1 引言系统开发的总体目标是实现图书馆管理的系统化和自动化,缩短借阅者的等待时间,减轻工作人员的工作量,方便工作人员对它的操作,提高管理的质量和水平,做到高效、智能化管理,从而达到提高图书管理效率的目的。