数据库之图书管理系统实验报告.docx
《数据库之图书管理系统实验报告.docx》由会员分享,可在线阅读,更多相关《数据库之图书管理系统实验报告.docx(19页珍藏版)》请在冰点文库上搜索。
数据库之图书管理系统实验报告
数据库原理及应用
课程设计报告
题目:
图书管理系统
2012-7
一、需求分析
随着我国市场经济的迅速发展和人们生活水平的不断提高,图书馆图书种类、数量的不断扩大,图书检索速度慢、统计工作量大,难以满足图书馆现代化管理的要求。
因此,建立一套图书馆管理软件,科学的对图书馆数据进行管理,方便图书的检索和读者借阅工作。
通过对对应问题所处环境的调查,对一个实际问题的分析,设计与实现,将原理与应用相结合,使学生学会如何把书本上学到点知识应用于解决实际问题,培养学生的动手能力以及创新意识;另一方面,使学生深入理解和灵活掌握教学内容。
本程序实现学生与图书馆管理员的界面分离模式,同时实现管理员对学生有全面的资料管理功能。
有多个图书、学生、系统的动态管理功能,如:
图书的查询、添加、删除、修改与及学生的详细资料的查询、添加、删除、修改等等多样、动态的管理。
同时可以放权给管理员查询、添加、删除、修改的能力。
设计实现了如下三个功能,分别是书籍管理系统,读者管理子系统,借阅者管理子系统。
书籍管理子系统
它主要提供用户登录功能,并按各用户的权限使用本系统。
本系统分三类用户:
权限公查询,管理员的权限是借还书和管理书,超级管理员的权限是管理读者,管理图书分类,管理管理员登录帐户,管理逾期图书。
读者管理子系统
主要用于查询图书,其中直接查询包括按图书编号直接查询,按书名查询,按作者查询,按出版社查询(可选模糊查询)。
多条件查询可以按读者的要求选取所需要的图书直接查询和模糊查询,多条件查询)。
借阅管理子系统
分别是由图书管理员管理图书(包括图书信息的修改,新图书的增加,旧图书的删除),超级管理员管理图书分类,管理信息,管理管理员登录帐户,管理逾期.
图书馆管理信息系统要完成功能主要有:
1)读者基本信息查询、修改,包括借书证号,读者姓名、读者性别等
2)书籍类别的制定,类别信息输入,包括:
书号,图书大类名,图书小类名,
3)借书信息的输入,包括读者学号,书号,借书时间,还书时间,是否归还,续借次数,管理员编号
4)借书信息的查询包括书号,书名,数量,作者,所属书大类名,所属书小类,出版社,价格
5)超期罚款输入包括罚款单号,书号,学号,应罚金额,是否交款,罚款日期,管理员编号
6)管理员管理管理员编号,姓名,地址,电话,备注
7)书名书籍类别的查询包括书号,图书大类名,图书小类名,书名
8)读者基本信息的输入,包括姓名,学号,性别,专业,班号,违章状况,已借数目,可借天数,借书时间.
图—1整体架构图
二、概念结构设计
2.1概念结构
一个图书馆拥有多个图书室
一个图书室可以存放多本书籍,一本书籍也可以放在不同的图书室
不同管理员可以管理多本书籍,不同的书籍也可以被不同的管理员管理
不同管理员可以办理多个借书证,一个借书证可以由不同的管理员办理
不同借书证可以查询不同的书籍,一本书籍可以被不同的借书证查询
一个读者可以借阅多本书籍,一本书籍也可以被不同的读者借阅
一个读者持有一个借书证,一个借书证只能被一个读者持有
一个读者只能查询自己的付款信息表,损害丢失表,还款信息表
2.2整体E-R图
图—2整体E-R图
2.3局部E-R图
图—3局部E-R图
2.4数据字典
数据库名:
TSGLXT.mdb
2.4.1数据库内含下列表以及说明等
Library(图书馆)
Book(书籍)
Manager(管理员)
Reader(读者)
Library_card(借书证)
Library_room(图书室)
Publish(出版社)
Reserve(存放)
Admin(管理)
Handle(办理)
Before_search(借阅前查询)
Last_search(借阅后查询)
Offer(提供)
Own(拥有)
Type(类别)
In_and_Out(借还书信息表)
Bookmanage(书籍管理表)
Harm_and_Miss(损害丢失信息表)
Fine(罚款信息表)
2.4.2数据库表详细设计
(1)Library表
字段名
字段含义
数据类型
约束
lname
馆名
Varchar(30)
Notnull
adds
地址
Varchar(30)
b_time
成立时间
decimal
Notnull
telephone_no
电话
Varchar(50)
r_no
房间号
Char(7)
Notnull
(2)Book表
字段名
字段含义
数据类型
约束
b_no
图书编号
Varchar(9)
Notnullkey
amount
数量
Char(7)
Notnull
bname
名称
Varchar(30)
Notnull
type
分类
Varchar(50)
publish
出版社名
Varchar(30)
p_time
出版日期
Decimal
Notnull
price
价格
Char(10)
m_no
管理员编号
Char(7)
borrow
是否可借
Notnull
r_no
书所在房间号
Char(7)
Notnull
bookshelf_no
书所在书架号
Char(7)
Notnull
key
关键字
Varchar(20)
zhaiyao
摘要
Varchar(50)
isbn
Isbn
Varchar(15)
Primarykey
(3)Manager表
字段名
字段含义
数据类型
约束
m_no
管理员编号
Char(7)
key
mname
姓名
Varchar(24)
Notnu
position
地址
Varchar(24)
teltphone_no
电话
Varchar(50)
beizhu
备注
Char(50)
(4).Reader表
字段名
字段含义
数据类型
约束
sname
姓借
Varchar(24)
student_id
学号
Varchar(9)
key
sex
性别
Varchar
(2)
specialty
专业
Varchar(20)
Notnull
class_no
班号
Char(7)
Notnull
weizhangzk
违章状况
Varchar(9)
Notnull
borrow_amount
已借天数
Varchar(9)
Notnull
kejietianshu
可借天数
Varchar(9)
Notnull
borrowdate
书时间名
Decimal
Notnull
(5)Library_card表
字段名
字段含义
数据类型
约束
sname
姓名
Varchar(24)
sex
性别
Varchar
(2)
dept
院系
Varchar(30)
Notnull
specialty
专业
Varchar(20)
limit
借书上限
Varchar(9)
Notnull
student_id
学号
Varchar(9)
Key
(6)Library_room
字段名
字段含义
数据类型
约束
r_no
房间号
Char(7)
Notnull
bookshelf_no
书架号
Char(7)
Notnull
bookanmout
图书总量
Varchar(9)
Notnull
(7)Publish表
字段名
字段含义
数据类型
约束
pname
出版社名
Varchar(30)
key
adds
地址
Varchar(50)
teltphone_no
电话
Varchar(50)
e-mail
Char(20)
bname
书名
Varchar(30)
Notnull
isbn
条形码
Varchar(15)
Primarykey
(8)Reserve表
字段名
字段含义
数据类型
约束
r_no
房间号
Char(7)
Notnull
bookshelf_no
书架号
Char(7)
Notnull
b_no
书号
Varchar(9)
Notnull
(9)Admin表
字段名
字段含义
数据类型
约束
b_no
书号
Varchar(9)
Notnull
r_no
房间号
Char(7)
Notnull
bookshelf_no
书架号
Char(7)
Notnull
type
类别
Varchar(50)
(10)Handle表
字段名
字段含义
数据类型
约束
sname
姓名
Varchar(24)
Notnull
Student_id
学号
Varchar(9)
Notnull
date
办理日期
Datetime
mima
密码
Char
sex
性别
varchar
男,女
(11)Before_search表
字段名
字段含义
数据类型
约束
b_no
书号
Varchar(9)
Notnull
bname
书名
Varchar(30)
Notnull
p_time
出版日期
Decimal
Notnull
pname,
出版社名
Varchar(30)
r_no
房间号
Char(7)
Notnull
status
借阅情况
Varchar(10)
(12)Last_search表
字段名
字段含义
数据类型
约束
b_no,
书号
Varchar(9)
Notnull
student_id,
学号
Varchar(9)
Notnull
borrowtime,
借书时间
Decimal
Notnull
backtime
还书时间
Decimal
Notnull
(13)Offer表
字段名
字段含义
数据类型
约束
bname
书名
VarChar(30)
Notnull
bquantity
书籍数量
Decimal
isbn
条形码
Varchar(15)
Primarykey
(14)Own表
字段名
字段含义
数据类型
约束
r_no
房间号
Char(7)
Primarykey
libraryroom_amount
图书室数量
Char(70)
(15)Type表
字段名
字段含义
数据类型
约束
b_no
书号
varChar
Primarykey
tsdlm
图书大类名
VarChar(24)
Notnull
tuxlm
图书小类名
VarChar(24)
Notnull
bname
书名
VarChar(30)
Notnull
(16)In_and_Out表
字段名
字段含义
数据类型
约束
student_id
学号
VarChar(9)
Primarykey
b_no
书号
VarChar(9)
key
borrowtime
借书时间
Detetime
Notnull
backtime
还书时间
Detetime
Notnull
xjcishu
续借次数
Detetime
Notnull
m_no
管理员编号
Char(7)
Notnull
back
是否归还
VarChar
(2)
Notnull
(17)Bookmanage表
字段名
字段含义
数据类型
约束
b_no
书号
Varchar(9)
PrimaryKey
bname)
书名
VarChar(30)
Notnull
writer
作者
VarChar(24)
amount
数量
Varchar(7)
tsdlm
图书大类名
VarChar(24)
Notnull
tsxlm
图书小类名
VarChar(24)
Notnull
publish
出版社
VarChar(50)
price
价格
Decimal
(18)Harm_and_Miss表
字段名
字段含义
数据类型
约束
bname
书名
Varchar(30)
Notnull
b_no
书号
Varchar(9)
NotPkey
sname
姓名
Varchar(24)
Notnull
student_id
学号
Varchar(9)
Notnull
pay
是否已赔
Char
(2)
Notnull是否
money
赔偿金额
decimal
Notnull
(19)Fine表
字段名
字段含义
数据类型
约束
fine_id
罚款单号
Varchar(7)
Notnullkey
b_no
书号
Varchar(7)
Notkey
student_id
学号
Varchar(9)
Notkey
finemoney
罚款金额
Decimal
Notnull
jiaokuan
是否交款
Char
(2)
Notnull是否
finetime
罚款时间
decimal
Notnull
m_no
管理员编号
Char(7)
Notnull
三、逻辑结构设计
3.1E-R图向关系模型转化(加下划线的为候选码)
图书馆(馆名,地址,成立时间,电话,房间号)
书籍(图书编号,数量,名称,分类,出版社名,出版日期,价格,管理员编号,是否可借,摘要,关键字,书所在房间号,书所在书架号,isbn)
管理员(管理员编号,姓名,地址,电话,备注)
读者(学号,姓名,性别,专业,班号,违章状况,已借数目,可借天数,借书时间)
借书证(学号,姓名,性别,院系,专业,借书上限)
图书室(房间号,书架号,图书总量)
出版社(出版社名,地址,电话,邮编,e-mail)
分类(书号,图书大类名,图书小类名,书名)
借还书信息(学号,书号,借书时间,还书时间,是否归还,续借次数,管理员编号)
书籍管理信息(书号,书名,数量,作者,所属书大类名,所属书小类,出版社,价格)
损害丢失信息(学号,书号,读者姓名,是否已赔,应赔偿金额)
罚款信息(罚款单号,书号,学号,应罚金额,是否交款,日期,管理员编号)
联系:
存放(房间号,书架号,图书编号存放量)
管理(书号,房间号,书架号,类别,)
办理(学号,姓名,密码,办理日期,性别)
借阅前查询(图书编号,名称,出版日期,出版社名,房间号,借阅情况)
借书后查询(图书编号,借书证号,借出时间,需归还时间)
提供(isbn,书籍数量,书名)
拥有(图书室编号,图书室数量)
3.2关系截图
四、数据库详细设计
4.1表的录入
(1)Library表的录入
(2)Book表的录入
(3)Manager表的录入
(4)Reader表的录入
(5)Publish表的录入
(6)Reserve表的录入
(7)Offer表的录入
(8)type表的录入
注:
其余表的录入从略。
4.2结构查询
(1)查询Manager表的结构
(2)表的查询
查找Book中的名称
(3)更新表中记录
更新表Reader中的读者名
(4)插入表中记录
向表Own中插入记录(8,7)
(5)删除
删除表Library中名称为“图书馆”的记录
(6)创建视图
创建表Book的视图
五、总结
这次课程设计不同以往的地方是我们每个人根据各自的理解来独立完成任务,在这次的数据库设计中,显然没有以前做实验是那么盲目,基本搞清楚了理论方面的知识,知道SQLsever的运用,通过自己动手实践获得知识,感觉就是不一样,对数据库系统又有了新的认识,运用计算机自己开发设计系统,来减轻劳动强度,提高信息处理速度和准确性,我们分析现有图书馆管理的漏洞,然后搜集资料,设计出自己的图书管理系统。
这次设计是对我们综合能力的提升,虽然在做的过程中遇到了很多困难,但是我们小组讨论之后也都解决了,可能解决的不是很完美但是完成任务后感觉很开心,最后我们也不得不承认我们的能力和认识有局限性,所以今后我们学习的道路是漫长的。
这个系统可能还存在着许多不足之处,请老师指正,我们会在以后的课程中,不断改进。
参考文献
[1]陈志泊主编.数据库原理及应用教程(第二版).北京:
人民邮电出版社,2008
[2]王珊主编.数据库系统简明教程.北京:
高等教育出版社,2004
[3]萨师煊,王珊.数据库系统概论(第三版).北京:
高等教育出版社,2001