数据库SQL图书管理系统Word文件下载.docx
《数据库SQL图书管理系统Word文件下载.docx》由会员分享,可在线阅读,更多相关《数据库SQL图书管理系统Word文件下载.docx(52页珍藏版)》请在冰点文库上搜索。
4.3图书信息界面17
4.4借阅板块23
4.5教师信息27
4.6学生信息30
4.7帮助34
4.8退出系统34
第五章总结35
5.1设计制作过程中遇到问题及解决35
5.2总体总结36
第一章绪论
随着数据库技术在各行各业的广泛应用,强大的数据库窗口技术、良好的数据库访问能力和友好的用户界面,日益成为设计者的得力助手,很好的运用好这些东西,对我们大学生以后的工作学习有很大的帮助。
1.1课题研究现状分析
在现今信息化发达的社会,图书的发行量与日俱增。
传统的图书馆需要制作有署名与对应编号的书卡,由读者按分类查找再交由图书管理员来处理借书工作,还书也要人工翻阅大量的记录,这样使得工作量大并及其繁琐,效率变得低下。
因此需要对书籍资源、读者资源、借书信息、还书信息进行管理,及时了解各个环节中信息的变更,有利用管理效率的提高。
建立网上电子图书管理系统的目的是实现无纸化图书管理,减轻管理员的工作量,方便读者查阅所需的图书,还可以利用网络实现提醒读者还书的功能。
管理员还可以对各种图书进行分析统计,对过时、损坏的图书进行删除,预约图书供应商订购更新的图书。
达到降低成本提高工作效率的目标。
1.2选题的目的及意义
目的:
图书管理系统主要目的是对图书馆种类繁多的书籍进行管理,并且合理管理好用户的借还信息。
提高图书馆的工作效率,降低管理成本。
意义:
通过完成从用户需求分析、数据库设计到上机编程、调试和应用等全过程,进一步了解和掌握本书中所讲解的内容,了解数据库的结构和操作,从而到达熟悉数据库的目的。
第二章系统需求分析
2.1用户调查
1.图书馆工作人员对功能的需求
工作人员对功能的需求细分如下:
1、教师信息的输入,查询,修改;
2、书籍信息的输入,查询,修改;
3、学生信息的输入,查询,修改;
4、借书信息的输入,查询;
5、还书信息的输入。
6、读者信息的查询。
2.读者对功能的需求
1、图书信息检索:
范围可按书名,作者,出版社,等检索款目进行任意条件组合精确或模糊检索,最快时间查找目标书籍;
2、读者人个信息的输入、修改。
查询。
建立读者个人信息档案,获取当前读者的个人信息。
并根据学号查询当前读者当前的借书情况,历史借书情况等。
2.2图书管理系统数据流图
2.3数据字典
一、主要数据项的定义
1.图书信息表
属性名
数据类型
长度
允许空
备注
分类号
char
15
N
书名
20
作者
10
Y
出版社
储书总量
Int
4
借出量
2.学生基本信息表
学生学号
唯一
姓名
性别
年龄
民族
8
所在专业
所在学院
Char
联系方式
入学年份
5
3.教师基本信息表
教工号
教师姓名
教师性别
教师年龄
教师职称
4.教师借阅信息表
图书分类号
图书书名
借书日期
续借次数
5.学生借阅信息表
学生姓名
6.借书表
学生学号/教工号
借出日期
已续借次数
N
应还日期
7.还书表
是否归还
归还日期
第三章数据库设计
3.1数据库概念结构设计
1.数据库需要表述的信息有以下几种:
(1)图书基本信息,
(2)学生基本信息,
(3)教师基本信息
(4)学生借阅信息表
(5)教师借阅信息表
(6)借书表
(7)还书表
通过分析整理可得图书管理系统E-R图为:
由系统E-R图可得其主要处理过程:
(1)处理过程:
学生信息
输入:
学生学号输出:
读者的注册信息
处理操作:
对所有注册的读者信息建表,用学号作为读者统一编号,编号是唯一的。
(2)处理过程:
教师信息
输入:
输出:
教师的基本信息
处理操作:
对所有教师编号,建立教师基本信息表,教工号具有唯一性,
(3)处理过程:
图书管理
图书的基本信息
对所有进馆的图书编号,建立图书信息表,图书分类号具有唯一性,
(4)处理过程:
图书查询
所查询图书的相关信息
用户登录后可以查询图书信息,按图书编号可以查询到某本书的详细情况,也可以通过书名,作者,进行模糊查询
(5)处理过程:
图书借出
分类号,学号
图书借阅信息
添加图书借阅记录,建立图书借阅信息表。
(6)处理过程:
图书归还
图书归还信息
添加图书归还记录,建立图书归还信息表。
3.2数据库逻辑结构设计
通过E/R模型到关系模型的转化,可以得到如下关系模式:
图书(分类号,书名,作者,类别,出版社,储书总量,借出量)。
学生(学生学号,学生姓名,性别,年龄,所属学院,所在专业,联系方式)。
教师(教工号,姓名,性别,年龄,职称,联系电话)。
教师借阅表(教工号,教师姓名,分类号,书名,借书日期,续借次数)
学生借阅图书表(分类号,书名,学号,姓名,借书日期,续借次数)。
借书表(分类号,教工号/学生学号,借出日期,应还日期,续借次数)
归还图书(分类号,学生学号/教工号,还书日期,续借次数)。
每个关系模式的主键码都用下划线标出。
(1)分类号是图书的键码,每本书有唯一的分类号。
一个读者可以同时借阅多本书,
一个管理员可以处理多个读者的借阅事宜。
(2)同一本书可以借给不同的同学,同一个读者可以再次借同一本书。
于是借书关系的键码为分类号,学号和借书日期的组合。
3.3数据库实施
1、数据库及表结构的创建
设本系统使用的数据库名为图书管理系统,根据已设计的关系模式及各模式的完整性要求,现在就可以在SQLServer2005数据库系统中实现这些逻辑结构。
下面是使用sqlserver2005建立的图书管理系统:
图书基本信息:
学生基本信息:
教师信息表:
借阅信息表:
借书表:
还书表:
各表之间的关系表:
第四章图书管理系统使用说明
4.1系统登录界面
登录时可由“admin”“teacher”“student”三种身份登录,登录密码分别为admin、tea、stu。
点击确定后,如果输入的用户名为空,则会提示“请输入用户名”;
如果输入用户名,没有输入密码时,则会提示“请输入密码”;
登录成功时,提示信息:
“登陆成功”。
登录界面实现的代码为:
procedureTdenglu.BitBtn1Click(Sender:
TObject);
begin
ifedit1.text='
'
thenshowmessage('
请输入用户名'
)else
ifedit2.Text='
请输入密码'
)
else
begin
if(edit1.Text='
admin'
)and(edit2.text='
)then
showmessage('
登陆成功'
);
denglu.Hide;
zhujiemian.Show;
end
elseif(edit1.Text='
teacher'
)and(edit2.Text='
tea'
)then
student'
stu'
密码或用户名不正确'
edit1.Text:
='
;
edit2.Text:
edit1.setfocus;
end;
end.
4.2主界面
该窗体是本系统的主体界面。
它是系统的结构匡架,便于对整个系统的观摩、管理.主要使用Label和panl以及manu、imagelist等控件实现的。
Image控件使得界面得以美化。
由于每次操作不一定会用到所有的数据库,所以没有必要在每次运行时生成所有的数据库别名。
主界面下可以分为系统管理(未实现)、图书信息管理、借阅管理、教师信息管理、学生信息管理、帮助、退出这七个板块功能。
在主菜单下面有“图书信息、借阅信息、教师信息、学生信息、借书、还书、数据备份(还未实现)、帮助、退出系统”共九个快捷键。
通过各个键的作用,导出各个板块的内容,从而实现对图书的管理查询等功能。
相关代码如下:
procedureTzhujiemian.N6Click(Sender:
jiaoshixinxi.Show;
end;
procedureTzhujiemian.N7Click(Sender:
procedureTzhujiemian.N8Click(Sender:
procedureTzhujiemian.N5Click(Sender:
ifmessagedlg('
确定要退出系统?
mtinformation,[mbno,mbyes],0)=mrYes
thenApplication.Terminate;
procedureTzhujiemian.N9Click(Sender:
xueshengxinxi.Show;
procedureTzhujiemian.N10Click(Sender:
procedureTzhujiemian.N11Click(Sender:
procedureTzhujiemian.N12Click(Sender:
tushuxinxi.Show;
procedureTzhujiemian.N13Click(Sender:
procedureTzhujiemian.N14Click(Sender:
procedureTzhujiemian.N20Click(Sender:
jieyuexinxi.Show;
procedureTzhujiemian.N21Click(Sender:
procedureTzhujiemian.N22Click(Sender:
jiehuanshu.Show;
procedureTzhujiemian.N24Click(Sender:
about.Show;
procedureTzhujiemian.ToolButton1Click(Sender:
procedureTzhujiemian.ToolButton3Click(Sender:
procedureTzhujiemian.ToolButton5Click(Sender:
procedureTzhujiemian.ToolButton7Click(Sender:
procedureTzhujiemian.ToolButton15Click(Sender:
procedureTzhujiemian.ToolButton17Click(Sender:
procedureTzhujiemian.N23Click(Sender:
bangzhu.Show;
procedureTzhujiemian.ToolButton11Click(Sender:
4.3图书信息界面
此板块共有三个功能:
图书基本信息查询、新书添加、旧书删除。
通过数据库间的连接,直接将修改、添加、删除的数据在SQL中修改,从而实现图书的基本信息的操作。
可通过“分类号、书名、作者名”三个关键字进行查找。
当有新图书入库时,通过输入图书信息,然后点击“添加”按钮即可。
1、图书基本信息:
可通过“分类号、书名、作者”对图书进行查找,界面右侧将显示所查图书的信息。
也可对查到的图书进行信息的修改,从而实现数据库的更新。
2、新书入库表:
通过在右侧输入新图书的信息,添加图书。
3、旧书删除:
对于过期的图书,可将其信息删除,先通过“分类号、书名、作者”查找所要删除的图书,然后确定要删除信息后,点击删除即可。
此板块的代码如下:
procedureTtushuxinxi.Button1Click(Sender:
adoquery1.Edit;
ifradiobutton1.Checkedthen
begin//////
adoquery1.Active:
=true;
adoquery1.Close;
adoquery1.SQL.Clear;
adoquery1.SQL.Text:
select*from图书信息表where分类号='
+edit1.Text+'
adoquery1.open;
ifadoquery1.RecordCount=0then
beginshowmessage('
没有符合条件的纪录'
///
begin///
纪录已经查找到了'
//////
ifradiobutton2.Checkedthen
select*from图书信息表where书名='
+edit2.Text+'
adoquery1.Open;
ifradiobutton3.Checkedthen
select*from图书信息表where作者='
+edit3.Text+'
edit3.Text:
procedureTtushuxinxi.Button2Click(Sender:
close;
procedureTtushuxinxi.BitBtn1Click(Sender:
确实要修改该图书的信息?
mtInformation,[mbOK,mbCancel],0)=mrokthen
adoquery1.Fields[0].AsString:
=dbedit1.Text;
adoquery1.Fields[1].AsString:
=dbedit2.Text;
adoquery1.Fields[2].AsString:
=dbedit3.Text;
adoquery1.Fields[3].AsString:
=dbedit4.Text;
adoquery1.Fields[4].AsString:
=dbedit5.Text;
adoquery1.Fields[5].AsString:
=dbedit6.Text;
adoquery1.Fields[6].AsString:
=dbedit7.Text;
adoquery1.post;
信息修改成功'
elseshowmessage('
信息没有修改'
procedureTtushuxinxi.BitBtn2Click(Sender:
adoquery1.Append;
procedureTtushuxinxi.BitBtn3Click(Sender:
ifedit4.Text='
请输入分类号'
elseifedit5.Text='
请输入书名'
elseifedit6.Text='
请输入作者'
elseifedit7.Text='
请输入出版社'
elseifedit8.Text='
请输入类别'
elseifedit9.Text='
请输入储书总量'
elseifedit10.Text='
请输入借出量'
确实要添加该图