图书管理系统毕业论文设计.docx
《图书管理系统毕业论文设计.docx》由会员分享,可在线阅读,更多相关《图书管理系统毕业论文设计.docx(23页珍藏版)》请在冰豆网上搜索。

图书管理系统毕业论文设计
图书管理系统的设计和开发
第1章概论.....................................................1
1.1背景及目的.......................................................................................................................1
1.2系统功能模块设计简介..................................................................................................1
第2章图书管理系统需求分析.......................................2
2.1应用需求分析..................................................................................................................2
2.2功能需求分析..................................................................................................................2
2.3数据需求分析..................................................................................................................3
第3章数据库设计................................................4
3.1数据库设计平台...............................................................................................................4
3.2数据库ER模型图............................................................................................................4
3.3数据库的设计及内容简介...............................................................................................5
第4章功能模块概要设计...........................................8
4.1功能模块开发平台...........................................................................................................8
4.2功能模块设计及内容简介...............................................................................................8
4.3功能模块设计图...............................................................................................................8
第5章功能模块详细设计...........................................9
5.1借阅图书模块设计.........................................................................................................9
5.1归还图书模块设计.........................................................................................................14
论文总结.........................................................18致谢..............................................错误!
未定义书签。
参考文献...............................................................................................错误!
未定义书签。
第1章概论
1.1背景及目的
当今时代是飞速发展的信息时代,各行各业都离不开信息处理,这正是计算机被广泛应用于社会各行各业的原因。
使用计算机进行信息管理是行业现代化的一个标志,此举不仅提高了工作效率,而且大大的提高了其安全性。
尤其对于复杂的信息管理,计算机能够充分发挥它的优越性:
快速操作、智能分析、海量存储和长期保存等等。
使用计算机进行信息管理与信息管理系统的开发密切相关,因为信息管理系统的开发是利用信息管理系统进行管理的前提。
本系统就是为了进行现代化图书馆信息管理而设计的。
本系统是一个针对大中专院校图书馆的图书信息管理系统,着力于解决原来手工管理出现的问题,如效率低、易出错、手续繁琐,还耗费大量的人力和物力,旨在实现现代化的信息管理。
1.2系统功能模块设计简介
本系统包含读者登记、添加新书、读者借书、读者还书、图书注销、查询读者、查询图书等等功能。
Ø读者登记时要为读者编制读者卡号,包括读者的具体信息(包括读者编号、姓名、
性别、类别、有效证件、联系电话、联系地址等),写入读者文件中。
Ø添加新书时要为该书编制图书卡片(包括分类图书编号、图书书名、作者、类别、
图书单价和入库日期等信息),写入图书文件中。
Ø读者借书时,先检查该读者是否为有效的读者,若无效则拒绝借书,然后检查该
读者所借图书是否超过最大限制数,若超过则拒绝借书,再检查有尚未归还的过期图书,若有则拒绝借书,最后查找要借的图书是否还有,如果有则办理借出手续,登记图书分类号、读者号和借阅日期等。
Ø读者还书时,根据书号,从借书文件中读出有关记录,标明还书日期,如果图书
过期,则处以罚款。
Ø系统还应提供图书清理的功能,对无价值的和过时的图书可以进行注销。
Ø查询要求分为查询某位读者、某种图书和全局图书三种情况。
第2章图书管理系统需求分析
2.1应用需求分析
图书馆管理系统开发的总的设计目标是实现图书管理的系统化、规范化和自动化,实现对图书资料的集中统一的管理。
本系统主要实现对图书馆信息的管理,主要功能为管理有关读者、图书、借阅、查询、删除和管理员的信息等。
本系统结构分为读者类别管理、读者档案管理、图书类型管理、图书档案管理以及图书流程管理,读者管理可以浏览读者的信息,可以对读者信息进行维护。
图书管理可以浏览图书的信息,可以对图书信息进行维护。
借阅管理可以显示当前数据库中书籍借阅情况,可以对借阅信息进行维护。
本系统主要解决的问题是利用关键字对数据库进行查询。
图书管理系统需要满足来自二方面的需求,这二个方面分别是图书借阅者和图书管理系统管理人员。
图书借阅者的需求是查询图书馆所存的图书、个人借阅情况及个人信息的修改;图书管理系统管理人员对图书借阅者的借阅及还书要求进行操作,同时形成借书或还书情况给借阅者查看确认,对工作人员、图书借阅者、图书进行管理和维护,及系统状态的查看。
图书管理系统管理人员有修改图书借阅者借书和还书记录的权限,所以需对工作人员登陆本模块进行更多的考虑。
在此模块中,图书管理系统管理人员可以为图书借阅者加入借书记录或是还书记录,并给用户查看和确认。
管理员可以对图书的基本信息进行浏览、查询、添加、删除、修改和统计。
还可以对借阅者的基本信息进行浏览和查询以及对图书馆的借阅信息进行统计。
2.2功能需求分析
1.管理者登录
2.系统设置:
管理员设置、图书馆信息设置、罚金设置
3.图书管理:
添加、浏览、修改、删除、借阅、归还、挂失、详细查看、检索
4.读者管理:
添加、浏览、删除、修改、详情查看、检索
5.信息查询:
查询
2.3数据需求分析
1.管理员信息:
用户名、密码、权限、编号。
2.图书信息:
除读者需要的信息以外,还需要录入时间、产品的编号以及图书是否挂失的信息。
3.读者信息:
读者编码、姓名、性别、类别、联系电话、联系地址、注册时间、是否挂失。
4.借还书信息:
读者编码、图书编码、借书数量、借阅时间、还书时间
第3章数据库设计
3.1数据库设计平台
本数据库设计采用了MicrosoftSQLServer2000作为开发平台。
3.2数据库
3.3数据库的设计及内容简介
打开MicrosoftSQLServer2000,因为我设计是图书管理系统,所以为了方便,命名数据库的名称为tsglxt。
然后新建表,主要包括图书馆信息表(tsgxx表)、管理员表(admin表)、图书表(book表)、借书表(Jhbook表)、借书人表(borrow_reader表)、图书挂失表(tsgs表)、图书注销表(tszx表)、出版社表(cbs表)、图书存放位置表(cfwz表)、读者类别表(dzlb表)、用户表(users表)、读者挂失表(dzgs表)、有效证件表(yxzj表)、图书类别表(booklb表)等。
(1)名称:
管理员表表名称标识:
admin表
字段名
admin_id
admin_xm
admin_name
admin_password
字段类型charcharcharchar主/外键p
(2)名称:
图书表
表名称标识:
book表
字段名
Book_id
Book_name
author
publish
class
bookdj
inputtime
sjmc
nrjj
sfgs
kcsl
jcsl字段类型Char(10)Nvarchar(50)Char(10)Nvarchar(50)Char(10)Char(10)Nvarchar(50)Char(10)Nvarchar(50)Char(10)Int(4)Int(4)主/外键p
(3)名称:
出版社表
表名称标识:
cbs表
字段名
publish字段类型Nvarchar(50)主/外键
(4)名称:
图书挂失表
表名称标识:
tsgs表
字段名Book_idsfgsBook_name
字段类型Char(10)Char(10)Nvarchar(50)
主/外键p
(5)名称:
存放位置(书架名称)表
表名称标识:
cfwz表
字段名sjmc
字段类型Char(10)
主/外键
(6)名称:
读者类别表
表名称标识:
dzlb表
字段名dzlbkjslzcqx
字段类型Char(10)Char(10)Char(10)
主/外键
(7)名称:
借还书表
表名称标识:
jhbook表
字段名User_idUser_nameBook_idJstimehstime
字段类型Char(10)Varchar(20)Char(10)Datatimedatatime
主/外键
(8)名称:
图书馆信息表
表名称标识:
tsgxx表
字段名Tsg_nameTsg_adminB_timePhotoEmileAddressNrjj
字段类型Nvarchar(50)Char(10)Char(10)Nvarchar(50)Nvarchar(50)Nvarchar(50)Char(10)
主(9)名称:
注销图书表表名称标识:
zxts表
字段名
Book_id
Book_name字段类型Char(10)Nvarchar(50)主/外键p
(10)名称:
读者挂失表
表名称标识:
dzgs表
字段名
User_id
sfgs
User_name字段类型Char(10)Char(10)Char(10)主/外键P
(11)名称:
读者表
表名称标识:
users表
字段名
User_id
User_name
User_xb
User_lb
Photo
Address
Yxzj
Zj_number
Dj_time
sfgs字段类型Char(10)Char(10)Char(10)Char(10)Nvarchar(50)Nvarchar(50)Char(10)Nvarchar(50)Char(10)Char(10)主/外键P
(12)名称:
有效证件表
表名称标识:
yxzj表
字段名
yxzj字段类型Char(10)主/外键
(13)名称:
图书类别表
表名称标识:
booklb表
字段名
class字段类型Char(10)主/外键
(14)名称:
借书人表
表名称标识:
borrow_reader表字段名
User_id
Kjsl
Yjsl字段类型Char(10)Int(4)Int(4)主/外键P
/外键
第4章功能模块概要设计
4.1功能模块开发平台
本功能模块应用软件的开发采用了Microsoft.Visual.Studio.2005C#作为软件设计和开发平台。
功能应用软件的界面采用菜单方式进行操作,具有操作方便、直观,功能明确、统一,对各界面的调用均在程序的主窗口下进行操作。
4.2功能模块设计及内容简介
打开Microsoft.Visual.Studio.2005C#,新建项目并命名为图书管理系统。
新建窗体,拖入空间设计窗体。
本系统主要包括Welcome登录模块、系统设置模块、图书设置模块、读者管理模块、图书管理模块、系统查询模块、帮助模块等模块。
4.3功能模块设计图
第5章功能模块详细设计
5.1借阅图书模块设计
5.1.1界面设计
5.1.2算法设计
在“更新”按钮的Click事件代码中编写代码,采用ADO.Net技术实现数据库的访问,在数据库的book表中查询图书信息记录,用SqlDataReader对象读取,然后显示出所有的图书信息记录。
在“查询”按钮的Click事件代码中编写代码,采用ADO.Net技术实现数据库的访问,在数据库的book表中查询图书信息记录,用SqlDataReader对象读取,然后显示出查询的图书信息记录。
在“借阅图书”按钮的Click事件代码中编写代码,将读者要借的图书信息与读者的信息绑定写入数据库借还书表(jhbook表)中。
5.1.3代码实现
usingSystem;
usingSystem.Collections.Generic;
usingSystem.ComponentModel;
usingSystem.Data;
usingSystem.Drawing;
usingSystem.Text;
usingSystem.Windows.Forms;
usingSystem.Data.SqlClient;
namespaceWindowsApplication1
{
publicpartialclass借阅图书:
Form
{
public借阅图书()
{
InitializeComponent();
}
privatevoid借阅图书_Load(objectsender,EventArgse)
{
//TODO:
这行代码将数据加载到表“tsglxtDataSet.JHbook”中。
您可以根据需要移动或移除它。
this.jHbookTableAdapter.Fill(this.tsglxtDataSet.JHbook);
//TODO:
这行代码将数据加载到表“tsglxtDataSet.book”中。
您可以根据需要移动或移除它。
this.bookTableAdapter.Fill(this.tsglxtDataSet.book);
//TODO:
这行代码将数据加载到表“tsglxtDataSet.users”中。
您可以根据需要移动或移除它。
this.usersTableAdapter.Fill(this.tsglxtDataSet.users);
}
SqlConnectioncon=newSqlConnection("DataSource=.;InitialCatalog=tsglxt;IntegratedSecurity=True");
DataSetds=newDataSet();
SqlDataAdapterada=newSqlDataAdapter();
BindingSourcebs=newBindingSource();
privatevoidbutton1_Click(objectsender,EventArgse)
{
stringsql="select*fromuserswhereuser_id='"+textBox2.Text.Trim()+"'";ada.SelectCommand=newSqlCommand(sql,con);
dataGridView1.DataSource=null;
ada.Fill(ds,"users");
bs.DataSource=ds;
bs.DataMember="users";
if(bs.Count<=0)
MessageBox.Show("表中无此读者");
else
dataGridView1.DataSource=bs;
}
privatevoidbutton2_Click(objectsender,EventArgse)
{
stringsql="select*fromuserswhereuser_name='"+textBox1.Text.Trim()+"'";ada.SelectCommand=newSqlCommand(sql,con);
dataGridView1.DataSource=null;
ada.Fill(ds,"users");
bs.DataSource=ds;
bs.DataMember="users";
if(bs.Count<=0)
MessageBox.Show("表中无此读者");
else
dataGridView1.DataSource=bs;
}
privatevoidbutton3_Click(objectsender,EventArgse)
{
stringsql="select*frombookwherebook_id='"+textBox3.Text.Trim()+"'";ada.SelectCommand=newSqlCommand(sql,con);
dataGridView2.DataSource=null;
ada.Fill(ds,"book");
bs.DataSource=ds;
bs.DataMember="book";
if(bs.Count<=0)
MessageBox.Show("表中无此图书");
else
dataGridView2.DataSource=bs;
}
privatevoidbutton4_Click(objectsender,EventArgse)
{
stringsql="select*frombookwhereclass='"+comboBox1.SelectedItem.ToString()+"'";ada.SelectCommand=newSqlCommand(sql,con);
ada.SelectCommand.Parameters.AddWithValue("class",comboBox1.Text);
dataGridView2.DataSource=null;
ada.Fill(ds,"book");
bs.DataSource=ds;
bs.DataMember="book";
if(bs.Count<=0)
MessageBox.Show("表中无类别");
else
dataGridView2.DataSource=bs;
}
privatevoidbutton5_Click(objectsender,EventArgse)
{
stringsql="select*fromusers";
ada.SelectCommand=newSqlCommand(sql,con);
ds.Clear();
ada.Fill(ds,"users");
bs.DataSource=ds;
bs.DataMember="users";
dataGridView1.DataSource=bs;
}
privatevoidbutton6_Click(objectsender,EventArgse)
{
stringsql="select*frombook";
ada.SelectCommand=newSqlCommand(sql,con);
ds.Clear();
ada.Fill(ds,"book");
bs.DataSource=ds;
bs.DataMember="book";
dataGridView1.DataSource=bs;
}
privatevoidbutton7_Click(objectsender,EventArgse)
{
stringsql="selectkjsl-yjslfromborrow_readerwhereuser_id='"+textBox1.Text.Trim()+"'";
SqlCommandcmd=newSqlCommand(sql,con);
inta=cmd.ExecuteScalar();
if(a=0)
{
MessageBox.Show("借书数量已满,请还书后再借!
");
return;
}
string_sql="selectkcsl-jcslfrombookwherebook_id='"+textBox3.Text.Trim()+"'";SqlCommandcmd=newSqlCommand(_sql,con);
intb=cmd.ExecuteScalar();
if(b=0)
{
MessageBox.Show(