《图书管理系统.doc》由会员分享,可在线阅读,更多相关《图书管理系统.doc(19页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、【精品文档】如有侵权,请联系网站删除,仅供学习与交流图书管理系统.精品文档.图书馆管理系统需求分析作者:候嵩涛学号:2010100602目录1图书管理系统的开发背景:32具体软件开发适应对象:33系统需求分析:43.1主要功能43.2 系统性能要求:43.3 针对管理员需实现的基本功能:43.3.1 查询43.3.2 读者信息维护43.3.3 图书信息的维护53.4 系统功能模块划分51日常工作管理62基本资料维护管理63查询管理74系统管理73.5 ER图71图书管理系统的开发背景: 为了满足开放式图书馆管理的要求,我们小组对Microsoft Office Access数据库管理系统、SQ
2、L语言原理、Microsoft Visual Basic应用程序设计,数据库技术进行了较深入的学习和应用,主要完成对图书管理系统的需求分析、功能模块划分、数据库模式分析,并由此设计了数据库结构和应用程序。系统运行结果证明,本文所设计的图书管理系统可以满足借阅者、图书馆工作人员和高级管理员及学校图书管理几方面的需要。 图书管理系统是典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者要求建立起数据一致性和完整性强、数据安全性好的库。而对于后者则要求应用程序功能完备,易使用等特点。2具体软件开发适应对象:A.所建议开发的软件系统的名称:图书馆管
3、理系统B.开发者:小组全体成员(杨克凡,邱明宾,张贺,杨明峰,曹一丁,邢俊。)C.用户:学校图书馆工作人员;D.该软件系统同其他系统或其他机构的基本的相互来往关系:该系统目前为止为单机版,独立于其他系统。3系统需求分析:3.1主要功能(1)能够输入图书的综合情况和进行新书入库、现有图书信息修改以及删除;(2)能够实现对读者档案的查询、密码的修改以及编辑管理;(3)能够进行借阅、还书功能;3.2 系统性能要求:(1)系统安全、可靠;(2)功能齐全;(3)操作方便、界面友好;(4)易于维护和扩充。3.3 针对管理员需实现的基本功能:3.3.1 查询:(1)书籍信息查询:管理员可以根据书籍名,书籍分
4、类,书籍作者、编号、出版社等信息来检索查询图书馆的书籍,便于管理。(2)读者信息查询:根据相应的读者资料进行所需查询。 读者编号、读者姓名、读者种类。3.3.2 读者信息维护:(1)修改读者信息:管理员可以录入、修改、删除读者信息。(2)修改密码:管理员可登录平台对遗忘密码的读者的密码进行修改。3.3.3 图书信息的维护:包括新书的入库,以及现有书籍资料的修改和删除,方便读者的查询。3-1管理员权限图3.4 系统功能模块划分: 图书管理系统需要实现的功能主要有四大模块,分别为日常工作管理、基本资料维护管理、查询管理和系统管理。其中日常工作管理和基本资料维护是整个系统的核心。1日常工作管理:包括
5、借书管理、还书管理。(1) 借书管理:主要功能是记录借阅证编号和图书编号,进行借书过程。在数据库中插入一条借书记录,该记录包括读者编号、图书编号、借出日期、还书期限、操作员编号。(2) 还书管理:主要功能是输入借阅证编号、图书编号,在借阅登记表中找到相应的记录,将该记录的相应数据插入到还书记录中,同时将借书记录删除,并保存在借阅历史记录表中。2基本资料维护管理:包括图书资料维护、读者资料维护(1) 图书资料维护:包括新书的入库,以及现有书籍资料的修改和删除。(2) 读者资料维护:包括新读者的资料入库,以及现有读者资料的修改和删除3查询管理:包括图书资料查询、读者资料查询。(1) 图书资料查询:
6、根据相应的图书信息对所有书籍进行所需查询。此查询包括:图书分类、图书编号、图书名称、作者、出版社。(2) 读者资料查询:根据相应的读者资料进行所需查询。 读者编号、读者姓名、读者种类。4系统管理:系统的登录、标准数据管理(1)系统的登录:管理员的登录。(2)标准数据管理:用于常用数据的系统维护。3.5 ER图图书管理信息系统功能结构图:图书采购子系统图书流通子系统编目子系统图书馆信息系统 二级功能图:各种财务信息编目结果借书记录借阅要求图书清单订单各种统计报表各种查询要求过期图书清单图书馆信息系统供应商上级部门产业部门借阅者读者财务处工作流程图:不重复的图书进书统计表订书统计表重复的图书订单图
7、书清单图书馆采购子系统供应商其他部门馆长编目室二级流程图:订书清单图书清单进书统计表定书统计表不重复的书清单不重复的书清单重复的书清单验收供书商图书定购订书单登帐图书馆统计馆长 编目室其他部门图书流通子系统工作流图:借书证书籍 借书证借书证书籍 借书证流通子系统借书者归还者二层流图借书证借书证书 借书证书 借书证借书者分类教师处理处学生处理处分类归还者三层流图查询结果查询结果查询结果查询结果图书库借书者分类教师类学生类教师类学生类分类查询日期查询日期查询书目查询书目书目视图日志视图归还者数据库创建语句use mastergocreate database bookmangeron primar
8、yname=图书管理_data,filename=D:SQL2000DateBase新建文件夹 (2) bookmanger _Data.MDf,size=10,maxsize=100,filegrowth=10 log onname=图书管理_log,filename=D:SQL2000DateBase新建文件夹 (2) bookmanger _Log.MDF,size=10,maxsize=100,filegrowth=10表以及约束的创建USE bookmangergo * TABLE: book CREATE TABLE book( booknum char(10) NOT NULL,
9、 booknam char(10) NULL, bookaut char(10) NULL, bookpub char(10) NULL, booklen char(10) NULL, bookren char(10) NULL, CONSTRAINT PK4 PRIMARY KEY NONCLUSTERED (booknum)go * TABLE: booktercherlendbooks CREATE TABLE booktercherlendbooks( booknum char(10) NOT NULL, teacherbooknum char(10) NOT NULL, CONSTR
10、AINT PK9 PRIMARY KEY NONCLUSTERED (booknum, teacherbooknum)go * TABLE: manger CREATE TABLE manger( mangernum char(10) NOT NULL, mangernam char(10) NULL, mangersex char(10) NULL, CONSTRAINT PK3 PRIMARY KEY NONCLUSTERED (mangernum)go * TABLE: mangerbook CREATE TABLE mangerbook( mangernum char(10) NOT
11、NULL, booknum char(10) NOT NULL, CONSTRAINT PK8 PRIMARY KEY NONCLUSTERED (mangernum, booknum)go * TABLE: student CREATE TABLE student( studentnum char(10) NOT NULL, studentnam char(10) NULL, studentsex char(10) NULL, studentclass char(10) NULL, CONSTRAINT PK1 PRIMARY KEY NONCLUSTERED (studentnum)go
12、* TABLE: studentlendbook CREATE TABLE studentlendbook( studentbooknum char(10) NOT NULL, studentnum char(10) NULL, CONSTRAINT PK6 PRIMARY KEY NONCLUSTERED (studentbooknum)go * TABLE: studentlendbookbook CREATE TABLE studentlendbookbook( studentbooknum char(10) NOT NULL, booknum char(10) NOT NULL, CO
13、NSTRAINT PK7 PRIMARY KEY NONCLUSTERED (studentbooknum, booknum)go * TABLE: teacher CREATE TABLE teacher( teachernum char(10) NOT NULL, teachersex char(10) NULL, teachernam char(10) NULL, CONSTRAINT PK2 PRIMARY KEY NONCLUSTERED (teachernum)go * TABLE: tercherlendbooks CREATE TABLE tercherlendbooks( t
14、eacherbooknum char(10) NOT NULL, teachernum char(10) NULL, CONSTRAINT PK5 PRIMARY KEY NONCLUSTERED (teacherbooknum)go * TABLE: booktercherlendbooks ALTER TABLE booktercherlendbooks ADD CONSTRAINT Refbook12 FOREIGN KEY (booknum) REFERENCES book(booknum)goALTER TABLE booktercherlendbooks ADD CONSTRAIN
15、T Reftercherlendbooks13 FOREIGN KEY (teacherbooknum) REFERENCES tercherlendbooks(teacherbooknum)go * TABLE: manger book ALTER TABLE mangerbook ADD CONSTRAINT Refmanger6 FOREIGN KEY (mangernum) REFERENCES manger(mangernum)goALTER TABLE mangerbook ADD CONSTRAINT Refbook7 FOREIGN KEY (booknum) REFERENC
16、ES book(booknum)go * TABLE: studentlendbook ALTER TABLE studentlendbook ADD CONSTRAINT Refstudent1 FOREIGN KEY (studentnum) REFERENCES student(studentnum)go * TABLE: studentlendbookbook ALTER TABLE studentlendbookbook ADD CONSTRAINT Refstudentlendbook3 FOREIGN KEY (studentbooknum) REFERENCES student
17、lendbook(studentbooknum)goALTER TABLE studentlendbookbook ADD CONSTRAINT Refbook4 FOREIGN KEY (booknum) REFERENCES book(booknum)go * TABLE: tercherlendbooks ALTER TABLE tercherlendbooks ADD CONSTRAINT Refteacher10 FOREIGN KEY (teachernum) REFERENCES teacher(teachernum)go索引的创建create unique clustered
18、index mangeron manger (mangernum)create unique clustered index teacheron teacher (teachernum)create unique clustered index studenton student (studentnum)create unique clustered index bookon book (booknum)插入数据及查看数据语句insert into book (booknum,booknam,bookaut,bookpub,booklen,bookren)values (00001,C语言,谭
19、浩强,清华大学,2008-3-28,2008-4-28);insert into book (booknum,booknam,bookaut,bookpub,booklen,bookren)values (00002,软件工程,张海藩,清华大学,2008-2-27,2008-3-27);insert into book (booknum,booknam,bookaut,bookpub,booklen,bookren)values (00003,C+语言,陈文宇,电子邮电,2008-1-33,2008-3-33);select*from bookinsert into manger (mange
20、rnum,mangernam,mangersex)values (001,王凤,女);insert into manger (mangernum,mangernam,mangersex)values (002,李德,男);insert into manger (mangernum,mangernam,mangersex)values (003,凌风,男);select*from mangerinsert into mangerbook (mangernum,booknum)values (001,1);insert into mangerbook (mangernum,booknum)valu
21、es (002,2);insert into mangerbook (mangernum,booknum)values (003,3);select*from mangerbookinsert into student (studentnum,studentnam,studentsex,studentclass)values (2008121014,张三,男,08级01班);insert into student (studentnum,studentnam,studentsex,studentclass)values (2008121015,李四,女,07级04班);insert into
22、student (studentnum,studentnam,studentsex,studentclass)values (2008121016,李三,男,07级11班);select*from studentinsert into teacher (teachernum,teachernam,teachersex)values (200811,宋子文,男);insert into teacher (teachernum,teachernam,teachersex)values (200812,李德,男);insert into teacher (teachernum,teachernam,
23、teachersex)values (200813,远山,男);select*from teacherinsert into tercherlendbooks (teacherbooknum,teachernum)values (200811,200811);insert into tercherlendbooks (teacherbooknum,teachernum)values (200812,200812);insert into tercherlendbooks (teacherbooknum,teachernum)values (200813,200813);select*from
24、tercherlendbooksinsert into booktercherlendbooks (booknum,teacherbooknum)values (1,200811);insert into booktercherlendbooks (booknum,teacherbooknum)values (2,200812);insert into booktercherlendbooks (booknum,teacherbooknum)values (3,200813);select*from booktercherlendbooksinsert into studentlendbook
25、 (studentbooknum,studentnum)values (2008121014,2008121014);insert into studentlendbook (studentbooknum,studentnum)values (2008121015,2008121015);insert into studentlendbook (studentbooknum,studentnum)values (2008121016,2008121016);select*from studentlendbookinsert into studentlendbookbook (studentbo
26、oknum,booknum)values (2008121016,1);insert into studentlendbookbook (studentbooknum,booknum)values (2008121016,2);insert into studentlendbookbook (studentbooknum,booknum)values (2008121016,3);select*from studentlendbookbook多条件查询语句select mangernum,mangernam,mangersex from mangerwhere mangernum4 and m
27、angersex=男order by mangernum descselect studentnum,studentnam,studentsex,studentclass from studentwhere studentnum2008121018 and studentsex=男order by studentnum descselect teachernum,teachernam,teachersex from teacherwhere teachernum200813 and teachersex=男order by teachernum descselect booknum,bookn
28、am,bookaut,bookpub from bookwhere booknum3 and booknam=c语言order by booknum desc分组统计使用select 学生姓名=studentnam,学生编号=studentnum,学生性别=studentsex,学生年级=studentclass from studentwhere studentsex=男order by studentnumselect max(studentnum),min(studentnum)from studentselect 教师姓名=teachernam,教师编号=teachernum,教师性别
29、=teachersex from teacherwhere teachersex=男order by teachernumselect max(teachernum),min(teachernum)from teacherselect 管理员姓名=mangernam,管理员编号=mangernum,管理员性别=mangersex from mangerwhere mangersex=男order by mangernumselect max(mangernum),min(mangernum)from mangerselect 管理员姓名=mangernam,管理员编号=mangernum,管理
30、员性别=mangersex from mangerwhere mangersex=男order by mangernumselect max(mangernum),min(mangernum)from manger排序select booknum,booknam,bookaut,bookpub,booklen,bookren from bookorder by booknumselect studentnum,studentnam,studentsex,studentclass from studentorder by studentnumselect mangernum,mangernam,
31、mangersex from mangerorder by mangernumselect mangernum,mangernam,mangersex from mangerorder by mangernum嵌套查询select booknam from bookwhere booknum=(select max(booknum)from book)select studentnam from studentwhere studentnum=(select max(studentnum)from student)select teachernam from teacherwhere teac
32、hernum=(select max(teachernum)from teacher)select mangernam from mangerwhere mangernum=(select max(mangernum)from manger) 模糊查询select booknum,booknam,bookaut from bookwhere booknam like w%select booknum,booknam,bookaut from bookwhere booknam like %wselect booknum,booknam,bookaut from bookwhere bookna
33、m like %fd% 数据的修改及删除update book set booknam=abc,bookaut=abc,bookpub=hhhhwhere booknum=00001update book set booknam=www,bookaut=erre,bookpub=hhhhwhere booknum=00002update book set booknam=efdde,bookaut=efrrtt,bookpub=hhhhwhere booknum=00003delete studentlendbookbook where booknum=1delete mangerbook w
34、here booknum=1delete booktercherlendbooks where booknum=1delete book where booknum=1/*查询学生读者信息并对读者信息进行维护管理*/*本地方可以提供所有学生信息查询,学号查询,(姓名,班级组合查询,(年级的模糊查询)*/*所有信息查询*/select 姓名=studentnam,学号=studentnum,性别=studentsex,年级=studentclass from studentorder by studentnum desc/*学号查询*/select 姓名=studentnam,学号=studen
35、tnum,性别=studentsex,年级=studentclass from studentwhere studentnum=2008121014order by studentnum desc/*姓名班级组合查询*/select 姓名=studentnam,学号=studentnum,性别=studentsex,年级=studentclass from studentwhere studentnam=张三 and studentclass=08级01班order by studentnum desc/*年级的模糊查询*/select 姓名=studentnam,学号=studentnum,
36、性别=studentsex,年级=studentclass from studentwhere studentclass like08%/*学生基本信息维护(学生信息的输入),(学生信息的删除,(学生信息的修改)*/*增加一个学生基本信息(应为此学生分配借书证号)*/insert into student (studentnum,studentnam,studentsex,studentclass)values (2008121044,张武,男,08级11班);insert into studentlendbook (studentbooknum,studentnum)values (2008
37、121044,2008121044);/*修改学生的图书证号*/update studentset studentnam=李汉where studentnum=2008121014/*按学号删除一个学生信息*/delete studentlendbookwhere studentnum=2008121044delete studentwhere studentnum=2008121044/*查询教师信息并对读者信息进行维护管理*/*本地方可以提供所有教师信息查询,教师编号查询*/select 姓名=teachernam,教师编号=teachernum,教师性别=teachersex from
38、teacher/*教师编号查询*/select 姓名=teachernam,教师编号=teachernum,教师性别=teachersex from teacherwhere teachernum=200812/*教师基本信息维护(教师信息的输入),(教师信息的删除,(教师信息的修改)*/*增加一个教师基本信息(应为此教师分配借书证号)*/insert into teacher (teachernum,teachernam,teachersex)values (200844,宋文,男);insert into tercherlendbooks (teacherbooknum,teachernu
39、m)values (200844,200844);/*修改教师的图书证号*/update teacherset teachernam=安安where teachernum=200844/*按学号删除一个教师信息*/delete tercherlendbookswhere teachernum=200844delete teacherwhere teachernum=200844/*查询图书管理员信息并对图书管理员信息进行维护管理*/*本地方可以提供所有图书管理员信息查询*/select 管理员姓名=mangernam,管理员编号=mangernum,管理员性别=mangersex from manger/*教师基本信息维护(教师信息的输入),(教师信息的删除,(教师信息的修改)*/*增加一个教师基本信息(应为此教师分配借书证号)*/insert into manger (mangernum,mangernam,mangersex)values (005,莉莉,女);/*修改图书管理员的图书证号*/update mangerset mangernam=安安where mangernum=005/*按管理员编号删除一个学生信息*/delete mangerwhere mangernum=3
限制150内