图书管理系统的设计论文.docx
《图书管理系统的设计论文.docx》由会员分享,可在线阅读,更多相关《图书管理系统的设计论文.docx(22页珍藏版)》请在冰豆网上搜索。
图书管理系统的设计论文
毕业论文
图书管理系统的设计与实现
姓名:
指导教师:
专业名称:
软件技术0801
所在系部:
信息工程
二○一一年六月
目录
引言
第一章系统功能设计1
1.1系统设计目标1
1.2系统功能设计1
1.3开发工具的选择2
第二章系统数据库设计与实现3
2.1系统数据库设计3
2.2数据库的实现6
第三章主窗体设计7
3.1菜单设计7
3.2工具栏设计7
3.3主窗体代码的实现8
第四章主要功能模块的实现9
4.1登录窗体设计9
4.2图书信息管理模块设计10
4.3读者信息管理模块设计12
4.4图书借阅处理模块设计13
4.5图书查询处理模块设计14
4.6员工管理模块设计15
第五章结束语17
第六章致谢17
参考文献18
引言
随着社会的发展,人们对知识的需求也不断地增长。
在这种形势下,书籍就渐渐地成为人们获取并增长知识的主要途径,而图书馆就自然而然地在人们的生活中占据了一定的位置,如何科学地管理图书馆不但关系到读者求知的方便程度,也关系到图书馆的发展,因此,开发一套完善的图书馆管理系统就成不可少了,图书馆在正常运营中总是面对大量的读者信息、书籍信息以及两者相互作用产生的借书信息、还书信息。
因此需要对读者资源、书籍资源、借书信息、还书信息进行管理,及时了解各个环节中信息的变更,有利于提高管理效率。
随着社会的日益发展,尤其是科技的迅猛发展,使得我国各项事业得到了前所未有的突破,不仅提高了工作效率,而且也降低了劳动强度,美化了工作环境。
随着计算机广泛地应用在科学技术领域的各个方面,并逐渐进入家庭,成为人们生活中必不可少的一部分。
为了适应读者对图书的需求,同时又大大减轻图书馆工作人员的工作量,全面提高图书馆的管理效率及服务质量,我以C#为环境,基于ACCESSS数据库,开发了此应用软件,本系统适用于各类小型图书馆,以及各类大中专院校、中小学校、企事业单位的图书馆和资料室的现代化综合管理。
本软件针对图书馆的业务范围及工作特点,设计了读者管理、图书管理、借阅管理、新书入库管理、修改图书信息等5个子系统,这5个子系统包括了图书馆的主要业务,可以全面实现对图书馆采购、编目、检索、统计和流通等业务的计算机管理,使图书馆管理水平和业务水平跃上一个新的台阶。
应用本系统可以在计算机上灵活、方便地管理图书,从而大大的提高了处理速率,使管理更加现代化。
本系统是根据实际情况和具体内容,按照一定的要求,科学、合理的进行系统分析、设计,具体包括菜单设计、数据输入、查询、删除、修改等设计。
从而使本系统完全能满足经济性、灵活性、系统性及可靠性的要求。
本系统的实现的主要功能有:
读者信息管理、书籍信息管理,报表,以及读者和书籍的查询和修改,等等的功能,是一个可以满足借阅者和图书馆工作人员的需要的数据库。
第一章系统功能设计
1.1系统设计目标
系统功能依据用户需求而设计,主要包括信息管理对象的特征、事物流程的内容和数据流量,根据用户需求和方便用户使用的原则确定相应的功能模块。
本系统为学校的图书馆信息而设计,实现信息处理的自动化、规范化,主要用于处理图书日常借阅和还书、图书入库、各种查询操作,系统具有以下功能。
1)图书借阅处理
2)图书与读者信息查询与修改、删除
3)图书入库与图书的信息修改、删除
4)员工信息的修改、删除
1.2系统功能设计
要求系统实现图书馆日常管理事务最主要的功能,包括图书的借出于还回,图书信息的录入、修改和查询,读者信息的录入、修改和查询,员工信息的录入、修改和查询。
实现这些基本功能,组建了图书管理系统的基本框架,根据功能的关联关系和集中分组的原则,将系统细化如图1-1所示的结构图。
图1-1系统功能结构图
1.3开发工具的选择
本系统采用ACCESS创建后台数据库,前台开发工具采用的Visual Studio2005,编程语言为C#,程序采用C/S结构。
第二章系统数据库设计与实现
数据库设计得合理与否,对数据库的完整性、安全性、程序运行的效率和程序设计的复杂程度有着十分密切的关系。
数据库设计的内容包括数据库管理系统的选择、数据实体的确定、数据实体的E-R图和数据库的实现。
2.1系统数据库设计
1.实体E-R图
根据图书管理系统分析与功能设计,图书信息管理系统中主要包括图书信息实体、读者信息实体、借阅信息实体、员工信息实体以及读者类别实体等。
图书信息实体包括表征一本书基本特征的数据和由于管理需要而记录的一些数据,有8个属性构成。
该实体的E-R图如图1-2所示。
其中“图书编号”实际上就是ISBN编号,这是用于唯一确定一本合法出版物的标准编号,它作为本实体的主键。
图1-2图书信息实体E-R图
读者信息实体标示一个读者的个人特征数据和该读者在图书馆的借阅状态信息,有10个属性构成。
该实体的E-R图如图1-3所示。
其中“读者编号”为主键,“读者姓名”、“性别”、单位和电话等式常见的基本信息。
图1-3读者信息实体E-R图
借阅信息实体标示哪个读者在何时借了哪本书。
从信息完整性和减少冗余度的角度来考虑,本实体只需3个属性,即:
“读者编号”-------是谁借了这本书:
“图书编号”-------借的是那本书:
“借出日期”--------是那天接的。
该实体的E-R图如图1-4所示。
图1-4借阅信息实体E-R图
员工信息实体标示本馆员工的信息。
员工信息实体是为图书馆管理者掌握本馆员工的资料而设计的,它的另一重要作用是提高员工登录系统时的编号和密码。
该实体的E-R图如图1-5所示。
图1-5员工信息实体E-R图
2.数据库结构设计
根据图书信息管理系统E-R图设计系统数据库。
本系统数据库名为“tsglxt”,其中包括五个数据表,分别存放图书信息、读者信息、读者类别信息、借阅信息和员工信息。
1)图书信息表:
表名为:
“book”,用于保存所以图书信息,其结够如图1-6所示。
图1-6book表的结构
2)读者信息表:
表名为:
“reader”,用于保存可以在本馆借书的所有读者信息,其结果如图1-7所示。
图1-7reader表的结构
3)读者类别表:
表名为:
“readerc”,用于保存各种类别的读者借阅的一些限制,该表结够如图1-8所示。
图1-8readerc表的结构
4)借阅信息表:
表名为:
“borrow”,用于保存每本书的借出信息,借阅信息表的结够如图1-9所示。
图1-9borrow表的结构
5)员工信息表:
表名为:
“employee”,用于保存本馆员工的信息,该表的架构如图1-10所示。
图1-10employee表的结构
2.2数据库的实现
选择“开始”——“程序”——“MicrosoftOffice”——“MicrosoftOfficeAccess2003”命令,连接服务器,在“对象资源管理器”中创建数据库。
数据库名称为“tsglxt”,并输入表中的数据。
第三章主窗体设计
首先,启动程序“MicrosoftVisualStudio2005”,选择“文件”——“新建”——“项目”,打开“新建项目”对话框,输入项目名称为“tsgl”,并指定文件位置。
将项目中的默认添加的第1个Windows窗体文件名称改为“frmMain.cs”,并将其作为主窗体。
在主窗体中先进行界面设计,然后再编写其相应的事件方法代码,主窗体的执行效果如图1-11所示。
图1-11主窗体执行的效果图
3.1菜单设计
菜单项的结构如图1-11所示。
在窗体上添加MenuStrip控件,依次输入如图所示的各菜单的标题。
3.2工具栏设计
利用工具栏可以快速执行系统中的常用命令。
工具栏的设计步骤是:
在主窗体上添加ToolStrip控件,在上面依次添加7个Button,设置每个Button的DisplayStyle属性均为“text”,并设置每个的属性依次为:
借书、还书、图书信息查询、添加读者信息、添加员工信息、图书入库和退出。
工具栏的运行效果如图1-12所示。
图1-12工具栏的运行效果图
3.3主窗体代码的实现
分析:
单击菜单项时,需将子窗体显示出来,单击工具栏上的按钮时,可以调用菜单项的Click事件方法代码。
代码:
举例说明部分的菜单项和工具栏按钮的代码实现。
privatevoidtoolStripButton1_Click(objectsender,EventArgse)
{
借书处理ToolStripMenuItem_Click(null,null);
}
privatevoid借书处理ToolStripMenuItem_Click(objectsender,EventArgse)
{
frmBorrowfrmborrow=newfrmBorrow();
frmborrow.MdiParent=this;
frmborrow.Show();
}
privatevoid还书处理ToolStripMenuItem_Click(objectsender,EventArgse)
{
frmReturnfrmreturn=newfrmReturn();
frmreturn.MdiParent=this;
frmreturn.Show();
}
privatevoidtoolStripButton2_Click(objectsender,EventArgse)
{
还书处理ToolStripMenuItem_Click(null,null);
}
第四章主要功能模块的实现
4.1登录窗体设计
登录窗体作为系统的启动窗体,用于核对用户和密码,只有图书馆工作管理人员才能登录到本系统进行操作。
登录窗体的设计比较灵活,只要能实现用户和密码的验证即可,本系统将其设计成为一个小窗体,其运行界面如图1-13所示。
登录窗体文件名设计为“frmLogin.cs”.
1.
界面设计:
图1-13登陆窗体运行效果
在该窗体上添加2个Label、1个ComboBox、1个TextBox、2个Button控件,其中登录窗体及其主要控件的属性设置如表1-1所示。
表1-1登录窗体及其主要控件的属性设置
窗体及其控件类型
属性名称
属性值
说明
Form
Name
frmLogin
窗体名称
Text
登录
窗体的标题文本
MaximizeBox
False
窗体的最大化失效
Startposition
CenterScreen
窗体启动时位于屏幕中心
FormBorderStyle
FixedSingle
窗体的大小固定
ComboBox
Name
cbxEmployeeNo
选择登录用户编号
TextBox
Name
Txtpwd
输入用户登录密码
PasswordChar
*
密码替代显示字符
Button
Name
btnOK
“确定”按钮
btnCancel
“取消”按钮
2.代码设计:
privatevoidbtnOK_Click(objectsender,EventArgse)
{string[]note=newstring[2];
OleDbConnectioncon=newOleDbConnection("provider=Microsoft.Jet.OLEDB.4.0;"+"dataSource=d:
\\bylw\\tsgl.mdb");
OleDbCommandcom=newOleDbCommand("select*fromemployeewhere员工编号="+"'"+txtEmployeeNo.Text.Trim()+"'",con);
con.Open();
try
{OleDbDataReaderreader=com.ExecuteReader();
if(reader.Read())
{note[0]=(string)reader["员工编号"];
note[1]=(string)reader["密码"];
}else
throw(newException("您的账号有问题,请确认后再输!
"));
if(note[0]==txtEmployeeNo.Text.Trim())
if(note[1]==txtPwd.Text.Trim())
{frmMainmain=newfrmMain();
main.Show();
this.Hide();
}else
{throw(newException("您的密码出现错误,请查证再输!
"));}
else
{throw(newException("您的账号有问题,请确认后再输!
"));}
}
catch(Exceptionex)
{MessageBox.Show("登陆问题:
\n"+ex.Message,"登陆出错",MessageBoxButtons.OK,MessageBoxIcon.Error);}
}privatevoidbtnCancel_Click(objectsender,EventArgse)
{Application.Exit();}
4.2图书信息管理模块设计
图书信息管理模块的内容包括图书入库和修改图书信息等。
该功能模块主要负责图书信息的相关操作,保证数据库中的完整、规范和准确,使用户可以方便快捷地来管理图书信息。
该模块主要操作针对数据库的的图书信息表“”进行添加、修改和删除记录。
1.图书入库窗体,其运行效果如图1-14所示。
窗体设计:
图1-14图书入库窗体的运行效果
代码清单:
(略)
2.修改图书信息窗体,其运行效果如图1-15所示。
窗体设计:
图1-15修改图书窗体的运行效果
代码清单:
(略)
3.删除图书信息窗体,其运行效果如图1-16所示。
窗体设计:
图1-16删除图书窗体的运行效果
代码清单:
(略)
4.3读者信息管理模块设计
每年都有新生入校和老生毕业,作为一个学校的图书馆,读者信息需要实时的更新。
读者信息管理包括添加读者信息、修改读者信息和删除读者信息。
1.添加读者信息窗体,其运行效果如图1-17所示。
窗体设计:
(略)
图1-17添加读者信息窗体的运行效果
代码清单:
(略)
2.
修改读者信息窗体,其运行效果如图1-18所示。
窗体设计:
图1-18修改读者信息窗体的运行效果
代码清单:
(略)
3.删除读者信息窗体,其运行效果如图1-19所示。
窗体设计:
图1-19删除读者信息窗体的运行效果
代码清单:
(略)
4.4图书借阅处理模块设计
图书借阅处理模块的本系统的核心模块,包括借书窗体和还书窗体的设计。
1.借书处理窗体,其运行效果如图1-20所示。
窗体设计:
图1-20借书处理窗体的运行效果
代码清单:
(略)
2.还书处理窗体,其运行效果如图1-21所示。
窗体设计:
图1-21还书处理窗体的运行效果
代码清单:
(略)
4.5图书查询处理模块设计
查询功能是十分重要的功能,读者需要查询他所借的书和以还的书,图书馆工作人员需要查询本馆的图书、借阅信息和员工信息。
查询功能仅仅需要显示符合条件的数据,并不需要对数据进行复杂的处理。
系统设计的查询模块包含以下3个窗体。
1)图书信息查询窗体:
2)借阅信息查询窗体:
3)读者信息查询窗体:
1.图书信息查询窗体,其运行效果如图1-22所示。
窗体设计:
图1-22图书信息查询窗体的运行效果
代码清单:
(略)
2.借阅信息查询窗体,其运行效果如图1-23所示。
窗体设计:
图1-23借阅信息查询窗体的运行效果
代码清单:
(略)
3.读者信息查询窗体,其运行效果如图1-24所示。
窗体设计:
图1-24读者信息查询窗体的运行效果
代码清单:
(略)
4.6员工管理模块设计
1、添加员工信息窗体,其运行效果如图1-25所示。
窗体设计:
图1-25添加员工信息窗体的运行效果
代码设计:
(略)
2、修改员工信息窗体,其运行效果如图1-26所示。
窗体设计:
图1-26修改员工信息窗体的运行效果
代码设计:
(略)
3、删除员工信息窗体,其运行效果如图1-27所示。
窗体设计:
图1-27删除员工信息窗体的运行效果
代码设计:
(略)
第五章结束语
经过一个月的设计和开发,图书管理信息系统基本开发完毕。
其功能基本符合用户需求,能够完成管理主界面与登录程序设计,系统管理模块,图书信息管理模块,读者信息管理模块,还借信息管理模块等。
并提供部分系统测试功能,使用户方便进行数据添加、数据查询、数据修改。
由于时间较短和本人水平所限,该系统必然会存在一些缺陷和不足。
但其功能全面、易于日后程序更新、数据库管理容易、界面友好、操作方便、效率高、安全性好等优点是本管理系统所必需的。
相信本图书管理信息系统是一套学校在日常管理中必不可少的管理软件。
第六章致谢
首先诚挚的感谢指导老师*老师,老师悉心的教导使我得以通过开发这个系统,从以前的理论上升到实践,真正做到学有所用,虽然在设计中我遇到了不少问题,而且往往一个小小的错误都会使我花很多的时间和精力去寻找和修正,但在老师竭尽全力的帮助下和自己的努力下,最终还是一一克服了。
通过这次设计,使我学到了很多东西,收益非浅,我感觉理论到实践是一个艰难的过程,必须勤动手,才能发现问题,使自己得到真正的提高。
经过了这次的设计使我学到了很多知识,给我今后在工作和学习上也提供了不少宝贵的经验。
并且通过这次设计也使我也发现了自己在学习上的不足,主要是动手能力的不足,我会努力在以后的工作道路上继续充实自我,完善自我。
但在这次毕业设计中的最大收获并不是掌握这几门开发工具的应用,而是学会了设计系统的思维方法,以及与同学们之间相互帮助的精神。
参考文献
[1]杨涛Access2007实用教程清华大学出版社2007年第一版页281---300
[2]李志云周岩徐春华等VisualC#2005数据库开发案例教程机械工业出版社2009年第一版页146---193
[3]李春葆金晶曾平等C#程序设计教程清华大学出版社2010年第一版
[4]陈桂林Access数据库程序设计高等教育出版社2007年第一版
[5]张波译Access2007宝典人民邮电出版社2008年第二版页944
[6]向隅数据库应用(Access2007)实例教程清华大学出版社北京交通大学出版社2009年第一版
[7]李佳丁宁C#开发技术大全清华大学出版社2009年2月第一版页230—252
[8]李容完全手册VisualC#2008开发技术详解电子工业出版社2008年5月第一版页183--206