图书管理系统的设计论文.docx
- 文档编号:11950974
- 上传时间:2023-04-16
- 格式:DOCX
- 页数:26
- 大小:270.15KB
图书管理系统的设计论文.docx
《图书管理系统的设计论文.docx》由会员分享,可在线阅读,更多相关《图书管理系统的设计论文.docx(26页珍藏版)》请在冰豆网上搜索。
图书管理系统的设计论文
图书馆管理系统
--数据库课程设计
系别:
计算机科学与技术系
班级:
软件工程09-2班
姓名:
李平
学号:
20091382
1选题的目的、意义
随着社会的进步,信息技术的广泛应用,数字化管理的优势日趋显著。
针对中小型图书馆或图书室管理落后的情况,设计实现一个图书信息管理系统,通过与计算机的结合使用对中小型图书馆或图书室的各种图书信息进行管理可以给管理员和用户带来以下不同的方便:
检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。
这些优点能够极大地提高工作效率,也是图书馆等部门管理科学化、正规化的重要标志之一。
而且计算机管理的成本不断降低。
因此,开发一套这样的中小型图书管理软件已经很有必要,并且实现研究服务于实践的原则。
2SQLServer2005概述
SQLServer是一个关系数据库管理系统它是由Microsoft推出的。
SQLServer是一个具备完全Web支持的数据库产品,提供了对可扩展标记语言(XML)的核心支持以及在Internet上和防火墙外进行查询的能力,提供了以Web标准为基础的扩展数据库编程功能。
丰富的XML和Internet标准支持允许使用内置的存储过程以XML格式轻松存储和检索数据。
SQLServer提供强大的开发工具和各类开发特性,在大大提高开发效率的同时,进一步拓展应用空间,带来新的商业应用机遇。
例如,XML数据库与WebService的支持将使您的应用实现Internet数据互联,.net集成极大的扩展了开发空间,异构数据集成、ServiceBroker使您的数据和其它应用无缝集成,各种新数据类型和T-SQL扩展带来了诸多灵活性。
C#、VB.net、XMLA、ADO.net2.0、SMO、AMO等都将成为SQLServer数据平台上开发数据相关应用的有力工具。
它具有以下特点:
(1)上手容易
大多数的中小企业日常的数据应用是建立在Windows平台上的。
由于SQLServer与Windows界面风格完全一致,且有许多"向导(Wizard)"帮助,因此易于安装和学习,有关SQLServer的资料、培训随处可得,并且目前国内具有MCDBA认证的工程师不在少数
(2)兼容性良好
由于今天Windows操作系统占领着主导地的位,选择SQLServer一定会在兼容性方面取得一些优势。
另外,SQLServer2005除了具有扩展性,可靠性以外,还具有可以迅速开发新的因特网系统的功能。
尤其是它可以直接存贮XML数据,可以将搜索结果以XML格式输出等特点,有利于构建了异构系统的互操作性,奠定了面向互联网的企业应用和服务的基石。
这些特点在.NET战略中发挥着重要的作用。
(3)电子商务
在使用由MicrosoftSQLServer2005关系数据库引擎的情况下,XML数据可在关系表中进行存储,而查询则能以XML格式将有关结果返回。
此外,XML支持还简化了后端系统集成,并实现了跨防火墙的无缝数据传输。
你还可以使用HypertextTransferProtocol(超文本传输协议,HTTP)来访问SQLServer2005,以实现面向SQLServer2005数据库的安全Web连接和无须额外编程的联机分析处理(OLAP)多维数据集。
(4)数据仓库
MicrosoftSQLServer2005非常明显的改进就是增加了OLAP(联机分析处理)功能,这可以让很多中小企业用户也可以使用数据仓库的一些特性进行分析。
OLAP可以通过多维存储技术对大型、复杂数据集执行快速、高级的分析工作。
数据挖掘功能能够揭示出隐藏在大量数据中的倾向及趋势,它允许组织或机构最大限度的从数据中获取价值。
通过对现有数据进行有效分析,这一功能可以对未来的趋势进行预测。
3系统需求分析
随着互联网的爆炸性发展,人们越来越习惯于利用网络来实现所需的服务,网络已深深影响到人们生活的各个方面。
另外,传统的图书馆不能满足一部分现代人的需要,而电子阅览室,由于其不受时间与空间的限制同时又具有传统图书馆的大部分功能,能够满足各类用户的常规与特殊需求,而且其方便快捷,实现技术又比较成熟,因此受到当代人的喜爱。
该系统主要分为两部分:
读者部分和管理员部分。
为了方便读者查找自己感兴趣的主题进行阅读,要将图书按照内容进行分类。
读者可以按照类别进行查找,逐级浏览、可以查看自己的信息。
本系统还可对用户的账号和书目的阅读权限进行管理。
管理员需要给用户分配用户名和密码,及设定用户的级别,还为用户提供图书的排行榜让用户能知道那些图书受到大家的欢迎。
(1)系统设置模块:
添加删除管理员、设置管理员的权限、说明图书存放书架信息添加删除书架信息。
(2)读者管理模块:
添加删除不同类型的读者及注明可借图书的数量、添加删除读者的档案。
(3)图书管理模块:
添加删除不同类型的图书及注明图书可借的天数库存数量、添加删除图书的档案。
(4)图书借还模块:
可查询读者借阅和归还图书的信息及图书的现有库存量。
(5)系统查询模块:
可根据不同的条件(条形码、书名、类别、作者、书架、出版社)查询读者需要的图书、读者可根据不同的条件(图书条形码、图书名称、读者编号、读者名字、到期时间)查询自己借阅图书信息。
(6)排行榜模块:
可以让读者知道图书借阅的排行榜及读者借阅的排行榜。
3.1系统功能结构图
根据图书管理系统的实际需求,可以将图书管理系统划分为系统设置、图书管理、读者管理、图书借还、系统查询、排行榜6个部分各个部分的具体功能的系统功能结构图如图3-1所示。
图3-1系统功能结构图
(1)图书借阅系统完成用户的借书过程其数据流图如图3-2所示。
图3-2借阅系统的数据流图
(2)还书系统完成图书的归还过程其数据流图如图3-3所示。
图3-3归还系统的数据流图
(3)图书档案管理系统为用户提供图书档案信息其数据流图如图3-4所示。
图书档案
图3-4图书档案管理数据流图
(4)读者档案系统用于记录读者的详细信息其数据流图如图3-5所示。
图3-5读者档案管理数据流图
3.2系统流程图
图书管理系统的流程是用户先输入自己的账号密码及系统显示的验证码进入系统如有一项不符合则不能进入系统,成功登陆系统后系统根剧登陆的账号信息从数据库中的数据进行对比判断是读者还是管理员,如果是读者则能进行信息查询,及修改自己的相关信息,查询到自己所需要的图书就能通过管理员进行借阅图书、归还图书也是通过管理员完成的。
如果不是读者而是管理员,那管理员可以进行相关信息的查询、添加删除图书及读者的所有信息、设置相应的权限、为图书更新排行榜的信息、以及完成读者的图书借阅与归还。
图书管理系统的系统流程图如图3-6所示。
’
图3-6图书管理系统的流程图、
4.图书管理系统的系统E-R图
图书管理系统的系统E-R图如图4-5所示。
m
1
m
n
n
m
图4-5图书管理系统的系统E-R图
4.1数据表设计
本系统使用的数据库管理系统为SQLServer2005。
数据库中的表有管理员信息表、图书信息表、读者信息表、管理员权限表、图书借阅归还表等。
图书管理员基本信息表tb_admin,如表4-6所示
表4-6tb_admin(管理员)表。
字段名
数据类型
长度
主键
描述
id
Varchar
50
是
管理员编号
name
Varchar
50
否
管理员名称
pwd
Varchar
30
否
密码
读者详细信息表tb_reader,如表4-7所示。
表4-7tb_reader(读者信息)表
字段名
数据类型
长度
主键
描述
id
Varchar
30
是
读者编号
name
Varchar
50
否
读者名称
sex
Char
4
否
性别
type
Varchar
50
否
读者类型
birthday
smalldatetime
4
否
生日
paperType
Varchar
20
否
证件类型
paperNum
Varchar
30
否
证件号码
tel
Varchar
20
否
电话
Varchar
50
否
createDate
smalldatetime
4
否
注册日期
oper
Varchar
30
否
操作员
remark
Text
16
否
备注
borrownum
Int
4
否
借阅次数
图书详细信息表tb_bookkifo,如表4-8所示。
表4-8tb_bookkifo(图书信息)表
字段名
数据类型
长度
主键
描述
Bookcode
Varchar
30
是
图书条形码
bookname
Varchar
50
否
图书名称
type
Varchar
50
否
图书类型
autor
Varchar
50
否
作者
translator
Varchar
50
否
译者
pubname
Varchar
100
否
出版社
price
Money
8
否
价格
page
Int
4
否
页码
bcase
Varchar
50
否
书架
storage
Bigint
8
否
存储数量
inTime
Smalldatetime
4
否
入馆时间
oper
Varchar
30
否
操作员
borrownum
Int
4
否
被借次数
图书借阅和归还信息表tb_borrowandback,如表4-9所示。
表4-9tb_borrowandback(图书借阅和归还信息)表
字段名
数据类型
长度
主键
描述
id
Varchar
30
是
借书编号
readid
Varchar
20
否
读者编号
bookcode
Varchar
30
否
图书条形码
borrowTime
Smalldatetime
4
否
借书时间
ygbackTime
Smalldatetime
4
否
应该还书时间
sjbackTime
Smalldatetime
4
否
实际还书时间
borrowoper
Varchar
30
否
借书操作
backoper
Varchar
30
否
还书操作
isback
Bit
1
否
是否归还
权限信息表tb_purview,如表4-10所示。
表4-10tb_purview(权限信息)表
字段名
数据类型
长度
主键
描述
Id
Varchar
50
是
用户编号
syset
Bit
1
否
系统设置
readset
Bit
1
否
读者管理
bookset
Bit
1
否
图书管理
borrowback
Bit
1
否
图书借还
syaquery
Bit
1
否
系统查询
}
5.图书信息管理模块
图书信息管理模块主要分为查看图书信息页面和添加修改图书信息页面,用户可以在查看图书信息页面查看图书的基本信息,管理员也可以看这些信息,并且可以通过单击“添加图书信息”这个超级链接或GridView控件中的“详情”超级链接转到添加或删除图书信息界面,并在该页中添加或修改图书信息,如图5-2与5-3所示。
图5-2添加或修改图书信息界面
图5-3查看图书信息界面
添加图书信息模块实现
usingSystem;
usingSystem.Data;
usingSystem.Configuration;
usingSystem.Collections;
usingSystem.Web;
usingSystem.Web.Security;
usingSystem.Web.UI;
usingSystem.Web.UI.WebControls;
usingSystem.Web.UI.WebControls.WebParts;
usingSystem.Web.UI.HtmlControls;
publicpartialclassBookManage_AddBook:
System.Web.UI.Page
{
ValidateClassvalidate=newValidateClass();
BookcaseManagebookcasemanage=newBookcaseManage();
BTypeManagebtypemanage=newBTypeManage();
BookManagebookmanage=newBookManage();
protectedvoidPage_Load(objectsender,EventArgse)
{
this.Title="添加/修改图书信息页面";
if(!
IsPostBack)
{
DataSetbcaseds=bookcasemanage.GetAllBCase("tb_bookcase");
ddlBCase.DataSource=bcaseds;
ddlBCase.DataTextField="name";
ddlBCase.DataBind();
DataSetbtypeds=btypemanage.GetAllBType("tb_booktype");
ddlBType.DataSource=btypeds;
ddlBType.DataTextField="typename";
ddlBType.DataBind();
if(Request["bookcode"]==null)
{
btnAdd.Enabled=true;
txtInTime.Text=DateTime.Now.ToShortDateString();
}
else
{
btnSave.Enabled=true;
txtBCode.ReadOnly=txtBName.ReadOnly=true;
txtBCode.Text=Request["bookcode"].ToString();
bookmanage.BookCode=txtBCode.Text;
DataSetbookds=bookmanage.FindBookByCode(bookmanage,"tb_bookinfo");
txtBName.Text=bookds.Tables[0].Rows[0][1].ToString();
ddlBType.SelectedValue=bookds.Tables[0].Rows[0][2].ToString();
txtAuthor.Text=bookds.Tables[0].Rows[0][3].ToString();
txtTranslator.Text=bookds.Tables[0].Rows[0][4].ToString();
txtPub.Text=bookds.Tables[0].Rows[0][5].ToString();
txtPrice.Text=bookds.Tables[0].Rows[0][6].ToString();
txtPage.Text=bookds.Tables[0].Rows[0][7].ToString();
ddlBCase.SelectedValue=bookds.Tables[0].Rows[0][8].ToString();
txtStorage.Text=bookds.Tables[0].Rows[0][9].ToString();
txtInTime.Text=bookds.Tables[0].Rows[0][10].ToString();
txtOper.Text=bookds.Tables[0].Rows[0][11].ToString();
}
}
}
protectedvoidbtnAdd_Click(objectsender,EventArgse)
{
ValidateFun();
bookmanage.BookCode=txtBCode.Text;
if(bookmanage.FindBookByCode(bookmanage,"tb_bookinfo").Tables[0].Rows.Count>0)
{
bookmanage.BookName=txtBName.Text;
bookmanage.Type=ddlBType.SelectedValue;
bookmanage.Author=txtAuthor.Text;
bookmanage.Translator=txtTranslator.Text;
bookmanage.PubName=txtPub.Text;
bookmanage.Price=Convert.ToDecimal(txtPrice.Text);
bookmanage.Page=Convert.ToInt32(txtPage.Text);
bookmanage.Bcase=ddlBCase.SelectedValue;
bookmanage.Storage=Convert.ToInt32(txtStorage.Text)+Convert.ToInt32(bookmanage.FindBookByCode(bookmanage,"tb_bookinfo").Tables[0].Rows[0][9].ToString());
bookmanage.InTime=Convert.ToDateTime(txtInTime.Text);
bookmanage.Oper=txtOper.Text;
bookmanage.UpdateBook(bookmanage);
}
else
{
bookmanage.BookName=txtBName.Text;
bookmanage.Type=ddlBType.SelectedValue;
bookmanage.Author=txtAuthor.Text;
bookmanage.Translator=txtTranslator.Text;
bookmanage.PubName=txtPub.Text;
bookmanage.Price=Convert.ToDecimal(txtPrice.Text);
bookmanage.Page=Convert.ToInt32(txtPage.Text);
bookmanage.Bcase=ddlBCase.SelectedValue;
bookmanage.Storage=Convert.ToInt32(txtStorage.Text);
bookmanage.InTime=Convert.ToDateTime(txtInTime.Text);
bookmanage.Oper=txtOper.Text;
bookmanage.AddBook(bookmanage);
}
Response.Redirect("BookManage.aspx");
}
protectedvoidbtnSave_Click(objectsender,EventArgse)
{
ValidateFun();
bookmanage.BookCode=txtBCode.Text;
bookmanage.BookName=txtBName.Text;
bookmanage.Type=ddlBType.SelectedValue;
bookmanage.Author=txtAuthor.Text;
bookmanage.Translator=txtTranslator.Text;
bookmanage.PubName=txtPub.Text;
bookmanage.Price=Convert.ToDecimal(txtPrice.Text);
bookmanage.Page=Convert.ToInt32(txtPage.Text);
bookmanage.Bcase=ddlBCase.SelectedValue;
bookmanage.Storage=Convert.ToInt32(txtStorage.Text);
bookmanage.InTime=Convert.ToDateTime(txtInTime.Text);
bookmanage.Oper=txtOper.Text;
bookmanage.UpdateBook(bookmanage);
Response.Redirect("BookManage.aspx");
}
protectedvoidbtnCancel_Click(objectsender,EventArgse)
{
txtInTime.Text=DateTime.Now.ToShortDateString();
txtBName.Text=txtAuthor.Text=txtTranslator.Text=txtPub.Text=txtPrice.Text=txtPage.Text=txtStorage.Text=txtOper.Text=string.Empty;
}
protectedvoidValidateFun()
{
if(txtBCode.Text=="")
{
Response.Write("");
return;
}
if(txtBName.Text=="")
{
Response.Write("");
return;
}
if(!
validate.validateNum(txtPrice.Text))
{
Response.Write("");
return;
}
if(!
validate.validateN
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 图书 管理 系统 设计 论文