数据库课程设计图书借阅管理系统设计解析.docx

上传人:b****6 文档编号:8453588 上传时间:2023-01-31 格式:DOCX 页数:17 大小:137.95KB
下载 相关 举报
数据库课程设计图书借阅管理系统设计解析.docx_第1页
第1页 / 共17页
数据库课程设计图书借阅管理系统设计解析.docx_第2页
第2页 / 共17页
数据库课程设计图书借阅管理系统设计解析.docx_第3页
第3页 / 共17页
数据库课程设计图书借阅管理系统设计解析.docx_第4页
第4页 / 共17页
数据库课程设计图书借阅管理系统设计解析.docx_第5页
第5页 / 共17页
点击查看更多>>
下载资源
资源描述

数据库课程设计图书借阅管理系统设计解析.docx

《数据库课程设计图书借阅管理系统设计解析.docx》由会员分享,可在线阅读,更多相关《数据库课程设计图书借阅管理系统设计解析.docx(17页珍藏版)》请在冰豆网上搜索。

数据库课程设计图书借阅管理系统设计解析.docx

数据库课程设计图书借阅管理系统设计解析

摘要1

一、问题描述与要求2

二、系统分析2

三、系统数据库设计3

1.数据库概念结构设计3

2.数据库逻辑结构设计5

四、系统设计与实现6

1.系统体系结构及实现方法6

2.系统工作环境及支撑软件6

五、系统集成测试6

1.登录界面6

2.数据库后台关系图7

六、附录8

1.数据库创建代码8

2.网站后台部分代码10

总结与致谢16

参考文献17

 

摘要

明确了图书馆工作由图书管理、读者管理、借书服务和还书服务4部分组成。

根据学生图书借阅管理系统的需求分析,我们可以先得到3个实体:

书、学生、管理员。

将图书馆管理系统的E-R图转换为关系数据库的数据模型,其关系模式为:

管理员,书,读者。

图书馆管理系统采用B/S(浏览器/服务器)结构。

服务器主要任务是承担网络监听和实现客户端链接、数据库管理、数据存取和数据传输功能。

浏览器面向用户,承担着图书馆管理系统的管理和服务工作。

关键词:

书;读者;管理员;数据库

 

一、问题描述和要求

该系统是一个专门为学校图书管理而设计的系统。

学生从图书馆借书,对图书馆来说,学生好像书籍一样,都是先被注册到系统中的。

图书馆需要处理新买的图书,包括添加和删除等,图书管理员是图书馆的雇员,所有图书登记、读者注册的工作由图书管理员完成,他们负责和学生交互,该系统支持他们的工作。

图书馆要求系统能方便的建立、更新和删除存在该系统中有关书名、读者等信息,也能方便的登记图书的借出与归还等信息。

二、系统分析

通过对现行图书馆业务的调查,明确了图书馆工作由图书管理、读者管理、借书服务和还书服务4部分组成。

对现有系统功能的描述如下:

1、图书管理

1)对馆内的所有图书按类别统一编码;对各类图书建立图书登记卡,登记图书的主要信息。

2)新购的图书要编码和建卡,对遗失的图书要注销其图书登记卡。

2、读者管理

1)建立读者信息表,对读者统一编号。

2)对新加盟的读者,将其信息加入到读者信息表中;对某些特定的读者,将其信息从读者信息表中删除。

3)当读者情况变化时,修改读者信息表中相应的记录。

3、借书服务

1)未借出的图书要按类别上架,供读者查看。

2)建立借书登记卡,卡上记录着书号、读者姓名和编号、借书日期;将借书登记卡按读者单位、读者编号集中保管。

3)读者提出借书请求时,先查看该读者的借书卡,统计读者已借书的数量。

如果该读者无借书超期或超量情况,则办理借书手续。

4)办理借书手续的方法是:

填写借书登记卡,管理员核实后读者可将图书带走。

4、还书服务

1)读者提出还书要求时,先对照相应的借书卡,确认书号和书名无误后可办理还书手续。

2)办理还书手续的方法是:

在借书卡上填写还书时间,管理员签名;将已还的借书卡集中保管;收回图书。

3)将收回的图书上架,供读者查看和借阅。

三、系统数据库设计

1.数据库概念结构设计

根据学生图书借阅管理系统的需求分析,我们可以先得到3个实体:

书、学生、管理员。

再分析他们之间的关系,管理员与书之间存在着一对多的联系,将该联系命名为登记,一个管理员可以登记多本图书,联系如图所示:

管理员与学生(也就是读者)之间也存在着一对多的联系,该联系命名为注册,一个管理员可以注册多名学生,联系如图所示:

管理员、书、学生(读者)之间存在着多对多的借阅联系,一个学生可以借阅多本图书,一个管理员可以办理多次借阅与归还,一本书可以被多名学生借阅,

因此3个实体与他们之间的联系如图所示:

根据系统需求分析,对每个实体我们分析相应的属性,图书管理员的属性有:

职工号、姓名、性别,读者的属性只有:

借书证号、姓名、性别、系别,书的属性只有:

书号、书名、作者、出版社、分类号。

将上述实体、属性、联系等集成,得到学生图书借阅管理系统完整的E-R模型图如下图所示:

 

2.数据库逻辑结构设计

将图书馆管理系统的E-R图转换为关系数据库的数据模型,其关系模式为:

管理员(职工号,姓名,性别,权限级别),

书(书号,书名,作者,出版社,分类号),

读者(借书证号,姓名,性别,系别),

根据1:

n联系的转换规则,我们把联系“登记”的属性即“读者权限”和管理员关系的主键即职工号加入到读者关系中,得到读者改进后的关系:

读者(借书证号,姓名,性别,系别,职工号),

这里职工号是外键。

根据1:

n联系的转换规则,我们把联系“注册”的属性即“入库时间”和管理员关系的主键即职工号加入到读者关系中,得到书改进后的关系:

书(书号,书名,作者,出版社,分类号,入库时间,职工号),

这里职工号也是外键。

将一个三元关系管理员、书、读者之间的借阅关系转换为一个关系:

借阅(职工号,借书证号,书号,借出日期,归还日期)。

所以最终得到的关系模型为:

管理员(职工号,姓名,性别,权限级别),

书(书号,书名,作者,出版社,分类号,入库时间,职工号),

读者(借书证号,姓名,性别,系别,职工号),

借阅(职工号,借书证号,书号,借出日期,归还日期)。

用英文命名的关系模式为:

Administrator(Ano,Aname,Asex,Aprivilege),

BOOK(Bno,Bname,Bauthor,Bpublisher,BTPno,Indate,Ano),

READER(Rno,Rname,Rsex,Rdept,Ano),

Borrow(Ano,Rno,Bno,Bdate,Rdata)。

四、系统设计与实现

1.系统体系结构及实现方法

图书馆管理系统采用B/S(浏览器/服务器)结构。

服务器主要任务是承担网络监听和实现客户端链接、数据库管理、数据存取和数据传输功能。

浏览器面向用户,承担着图书馆管理系统的管理和服务工作。

2.系统工作环境及支撑软件

(1)服务器端的工作环境要求及支撑软件

操作系统:

WindowsXP或与之兼容的系统

数据库管理系统:

SQLServer2000企业版

数据库应用系统开发软件:

MicrosoftVisualStudio2008

(2)客户机的工作环境要求及支撑软件

操作系统:

Windows98或更高与之兼容的系统

数据库应用系统开发软件:

MicrosoftVisualStudio2008

五、系统集成测试

1.登录界面

 

 

2.数据库后台关系图

 

六、附录

1.数据库创建代码

CREATEDATABASEBOOKmanage

useBOOKmanage

go

createtableAdministrator

Anochar(10)primarykey,

Anamenvarchar(30)notnull,

Asexchar

(2),

Aprivilegechar(20)

go

createtableBOOK

Bnochar(10)primarykey,

Bnamenvarchar(30)notnull,

Bauthornvarchar(30),

Bpublishernvarchar(50),

BTPnochar(10),

Indatadatetime,

Anochar(10)

go

createtableREADER

Rnochar(10)primarykey,

Rnamenvarchar(30)notnull,

Rsexchar

(2),

Rdeptchar(20),

Anochar(10)

go

createtableBorrow

Anochar(10),

Rnochar(10),

Bnochar(10),

Bdatedatetime,

Rtimedatetime,

PRIMARYKEY(Ano,Rno,Bno),

foreignkey(Ano)referencesAdministrator(Ano),

foreignkey(Rno)referencesREADER(Rno),

foreignkey(Bno)referencesBOOK(Bno)

Go

2.网站后台部分代码:

usingSystem;

usingSystem.Collections.Generic;

usingSystem.Linq;

usingSystem.Web;

usingSystem.Web.UI;

usingSystem.Web.UI.WebControls;

usingSystem.Text;

usingSystem.Collections;

usingSystem.Data;

usingSystem.Data.SqlClient;

usingSystem.Web.UI.HtmlControls;

usingSystem.Configuration;

publicpartialclassAdministrator:

System.Web.UI.Page

{

protectedvoidPage_Load(objectsender,EventArgse)

{

//gridviewdiv.Style.Add("display","none");

gridviewdiv.Disabled=true;

gridviewdiv.EnableViewState=false;

}

///

///查询读者个人信息

///

///

///

protectedvoidbtqueryREADERinfo_Click(objectsender,EventArgse)

{

if(tbRnumber.Text=="")

{

Response.Write("alert('请输入要查询的借书证号');");

return;

}

stringconn=MySql.ConnectionStringLocalTransaction;

stringRno=tbRnumber.Text.ToString();

stringcmdstr="selectRnoas借书证号,Rnameas姓名,Rsexas性别,Rdeptas系别fromREADERwhere

Rno=@number";

SqlParametersqlpara=newSqlParameter("@Rnumber",SqlDbType.Char);

sqlpara.Value=tbRno.Text.ToString();

SqlParameter[]cmdparas={sqlpara};

DataSetds=MySql.ExecuteDataSet(conn,CommandType.Text,cmdstr,cmdparas);

GridView1.DataSource=ds;

GridView1.DataBind();

gridviewdiv.Disabled=false;

gridviewdiv.Disabled=false;

gridviewdiv.EnableViewState=true;

}

///

///查询图书信息

///

///

///

protectedvoidbtquerybook_Click(objectsender,EventArgse)

{

if(tbBnumber.Text=="")

{

Response.Write("alert('请输入要查询的书号');");

return;

}

stringconn=MySql.ConnectionStringLocalTransaction;

stringBno=tbBnumber.Text.ToString();

stringcmdstr="selectBnoas书号,Bnameas书名,Bauthoras作者,Bpublisheras出版社BTPnoas分类

号,Indateas入库时间,Anoas职工号fromBOOKwhereBno=@Bnumber";

SqlParametersqlpara=newSqlParameter("@Bnumber",SqlDbType.Char);

sqlpara.Value=tbBnumber.Text.ToString();

SqlParameter[]cmdparas={sqlpara};

DataSetds=MySql.ExecuteDataSet(conn,CommandType.Text,cmdstr,cmdparas);

GridView1.DataSource=ds;

GridView1.DataBind();

gridviewdiv.Disabled=false;

gridviewdiv.EnableViewState=true;

}

///

///查询读者借阅情况

///

///

///

protectedvoidbtqueryBorrow_Click(objectsender,EventArgse)

{

if(tbRnoBorrow.Text=="")

{

Response.Write("alert('请输入要查询的读者借书证号');");

return;

}

stringconn=MySql.ConnectionStringLocalTransaction;

stringBnumber=tbRnoBorrow.Text.ToString();

stringcmdstr="selectRnoas学号,BOOK.Bnoas书号,Bnameas书名,Btimeas借出时间,Rtimeas归还时间

fromBorrow,BOOKwhereRno=@RnumberandBowwer.Bno=BOOK.Bno";

SqlParametersqlpara=newSqlParameter("@Rnumber",SqlDbType.Char);

sqlpara.Value=tbRnoBorrow.Text.ToString();

SqlParameter[]cmdparas={sqlpara};

DataSetds=MySql.ExecuteDataSet(conn,CommandType.Text,cmdstr,cmdparas);

GridView1.DataSource=ds;

GridView1.DataBind();

gridviewdiv.Disabled=false;

gridviewdiv.EnableViewState=true;

}

///

///修改读者个人信息或添加新读者

///

///

///

protectedvoidbtchangeREADERinfo_Click(objectsender,EventArgse)

{

Buttonbt=(Button)sender;

if(bt.ID=="bttuinfoedit")

{

if(tbRno.Text.ToString()!

="")

{

stringRnumber=tbRno.Text.ToString().TrimEnd();

stringurl="READERinfoedit.aspx?

Rno="+snumber;

Response.Redirect(url);

}

else

{

Response.Write("alert('请输入要修改的读者借书证号');");

return;

}

}

else

{

stringurl="READERinfoedit.aspx?

Rno=addnew";

Response.Redirect(url);

}

}

protectedvoidbtBOOKedit_Click(objectsender,EventArgse)

{

Buttonbt=senderasButton;

if(bt.Text=="修改图书信息")

{

if(tbBnumber.Text!

="")

{

stringBnumber=tbBnumber.Text;

stringurl="BOOK.aspx?

cno="+Bnumber+"&btxiugai=xg";

Response.Redirect(url);

}

else

{

Response.Write("alert('请输入要修改的书号');");

return;

}

}

else

{

stringurl="BOOK.aspx?

btxiugai=btadd";

Response.Redirect(url);

}

}

protectedvoidbtBorrowedit_Click(objectsender,EventArgse)

{

if(tbRnoBorrow.Text!

="")

{

stringRnumber=tbRnoBorrow.Text;

stringurl="Browwer.aspx?

Rno="+Rnumber+"&btxiugai=xg";

Response.Redirect(url);

}

else

{

Response.Write("alert('请输入要修改的读者借书证号');");

return;

}

}

protectedvoidbtqueryallREADER_Click(objectsender,EventArgse)

{

stringconn=MySql.ConnectionStringLocalTransaction;

stringRno=tbRno.Text.ToString();

stringcmdstr="selectRnoas学号,Rnameas姓名,Rsexas性别,Rdeptas系别,Anoas职工号fromREADER";

SqlParameter[]cmdparas={};

DataSetds=MySql.ExecuteDataSet(conn,CommandType.Text,cmdstr,cmdparas);

GridView1.DataSource=ds;

GridView1.DataBind();

gridviewdiv.Disabled=false;

gridviewdiv.Disabled=false;

gridviewdiv.EnableViewState=true;

}

protectedvoidbtqueryallbook_Click(objectsender,EventArgse)

{

stringconn=MySql.ConnectionStringLocalTransaction;

stringcnumber=tbBnunber.Text.ToString();

stringcmdstr="selectBnoas书号,Bnameas书名,Bpublisheras出版社,Bauthoras作者,BTPnoas分类号,Indateas入库时间,Anoas职工号fromBOOK";

SqlParameter[]cmdparas={};

DataSetds=MySql.ExecuteDataSet(conn,CommandType.Text,cmdstr,cmdparas);

GridView1.DataSource=ds;

GridView1.DataBind();

gridviewdiv.Disabled=false;

gridviewdiv.EnableViewState=true;

}

}

 

总结与致谢

通过本次课程设计,我对数据库的应用有了更深刻的体会。

网络系统都是离不开数据库的支持的。

数据库设计的是否合理,直接影响到系统的性能。

数据库理论对于实际应用有很大的指导意义。

此次图书管理系统的设计让我对数据库的了解更深入,可以把它同实际相结合,同时,又让我学会了一个新的应用软件。

在整个设计过程中,通过怎样对把各个管理信息连接起来的分析,锻炼了我们对事情的分析能力,通过怎样解决过程中出现的问题,提高了我们查找文献的能力、对网络资源的利用能力和和其他同学的交流沟通能力。

而且,经历这次的课程设计,我们也学会了自学和分工协作。

我觉得每一次的设计,都是让我们对原有的知识从了解表面到深入本质,从个体学习到整体把握的跳跃,对新知识的汲取,更是让我们把课本的知识应用到实际中,让我们了解了我们的学习有什么用,能够解决什么样的问题,增加我们的自信和学习的动力。

感谢杨老师和张老师的指导,让我此次课程设计有了突出的认识。

本次的图书管理系统,在功能上仅实现了图书,用户,图书类别和订单信息的管理,只是一些非常基础的功能,没有设计添加图书的功能。

此外,该系统原先计划设计的一些功能也没有实现。

系统完全实现的功能实现图书信息的删除、更改和查看等。

尽管还是有许多的不完善之处,但是总的说来收获颇多。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板 > 可爱清新

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1