图书馆管理系统 2.docx

上传人:b****3 文档编号:4621558 上传时间:2023-05-07 格式:DOCX 页数:22 大小:844.27KB
下载 相关 举报
图书馆管理系统 2.docx_第1页
第1页 / 共22页
图书馆管理系统 2.docx_第2页
第2页 / 共22页
图书馆管理系统 2.docx_第3页
第3页 / 共22页
图书馆管理系统 2.docx_第4页
第4页 / 共22页
图书馆管理系统 2.docx_第5页
第5页 / 共22页
图书馆管理系统 2.docx_第6页
第6页 / 共22页
图书馆管理系统 2.docx_第7页
第7页 / 共22页
图书馆管理系统 2.docx_第8页
第8页 / 共22页
图书馆管理系统 2.docx_第9页
第9页 / 共22页
图书馆管理系统 2.docx_第10页
第10页 / 共22页
图书馆管理系统 2.docx_第11页
第11页 / 共22页
图书馆管理系统 2.docx_第12页
第12页 / 共22页
图书馆管理系统 2.docx_第13页
第13页 / 共22页
图书馆管理系统 2.docx_第14页
第14页 / 共22页
图书馆管理系统 2.docx_第15页
第15页 / 共22页
图书馆管理系统 2.docx_第16页
第16页 / 共22页
图书馆管理系统 2.docx_第17页
第17页 / 共22页
图书馆管理系统 2.docx_第18页
第18页 / 共22页
图书馆管理系统 2.docx_第19页
第19页 / 共22页
图书馆管理系统 2.docx_第20页
第20页 / 共22页
亲,该文档总共22页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

图书馆管理系统 2.docx

《图书馆管理系统 2.docx》由会员分享,可在线阅读,更多相关《图书馆管理系统 2.docx(22页珍藏版)》请在冰点文库上搜索。

图书馆管理系统 2.docx

图书馆管理系统2

数据库

课程设计报告

 

设计题目:

图书馆管理系统

学生姓名:

系别:

专业:

班级:

学号:

指导教师:

目录

1系统需求分析3

1.1用户对功能的需求3

1.2数据流图4

2、图书馆管理系统数据字典7

2.1数据结构描述8

2.2数据流的描述8

2.3主要数据存储的定义10

3、数据库设计11

3.1数据库概念结构设计11

3.2数据库逻辑结构设计13

4、图书管理系统使用说明15

4.1图书管理系统登录界面15

4.2图书管理系统图书管理界面17

4.3新书审核界面18

4.4查询界面19

4.5借阅者及还书界面21

5、总结22

1系统需求分析

1.1用户对功能的需求

图书馆工作人员对功能的需求细分如下:

1、管理员信息的输入,查询,修改;

 2、书籍信息的输入,查询,修改;

 3、借书信息的输入。

 4、还书信息的输入。

  5、读者信息的查询。

读者对功能的需求

1、图书信息检索:

范围可按书名,作者,出版社,类别等检索款目进行任意条件组合精确或模糊检索,最快时间查找目标书籍;

2、读者个人信息的输入、修改。

查询。

建立读者个人信息档案,获取当前读者的个人信息。

并根据学号查询当前读者当前的借书情况,历史借书情况等。

1.2数据流图

 

2、图书馆管理系统数据字典

数据字典通常包括数据项、数据结构、数据流、数据存储和处理过程五个部分。

其中数据项是数据的最小组成单位,若干个数据项可以组成一个数据结构,数据字典通过对数据项和数据结构的定义来描述数据流、数据存储的逻辑内容。

2.1数据结构描述

名称:

图书(library)

含义说明:

图书基本信息

组成结构:

条形码+编号+书名+分类+出版日期+价格+库存+借出+在库

名称:

借阅者(user)

含义说明:

办理借书证的人员

组成结构:

借阅号+姓名+性别+年龄+借阅数+已借数+欠还罚单+上次归还+最近借阅

名称:

购书(buybook)

含义说明:

所购书和购书单位的说明

组成结构:

图书编号+书名+购书单位+联系电话+入库时间+数量

2.2数据流的描述

数据流名称:

借书单简述:

借阅者

数据流来源:

借阅者

数据流去向:

借阅者

数据流组成:

图书编号+书名+借阅证号等

数据流名称:

不合格借书单简述:

经借书处理模块验证不合格的借书单

数据流来源:

借书处理模块

数据流去向:

借阅者

数据流组成:

图书编号+书名+借阅证号等

数据流名称:

借书清单简述:

经借书处理模块处理后的借书情况数据单

数据流来源:

借书处理模块

数据流去向:

图书库存情况存档

数据流组成:

图书编号+图书名+借阅日期+借阅证号+管理员编号等

数据流名称:

图书简述:

借阅者从图书馆所借的图书

数据流来源:

借书处理模块

数据流去向:

借阅者

数据流组成:

图书编号+图书名+出版日期+入库日期+作者+单价等

数据流名称:

图书简述:

借阅者要准备归还给图书馆的图书

数据流来源:

借阅者

数据流去向:

还书处理模块

数据流组成:

图书编号+图书名+出版日期+入库日期+作者+单价等

数据流名称:

还书清单简述:

还书信息清单

数据流来源:

还书处理模块

数据流去向:

图书库存情况存档

数据流组成:

图书编号+图书名+借阅证号+还书日期等

数据流名称:

订书单简述:

订购新书的信息单

数据流来源:

采购员

数据流去向:

购书处理模块

数据流组成:

图书名+图书数量+价格+采购单位名称+图书出版社+出版日期等

数据流名称:

购书清单简述:

购买图书后的信息单

数据流来源:

购书处理模块

数据流去向:

管理员

数据流组成:

图书名+图书数量+价格+采购单位+联系电话等

数据流名称:

入库新书清单简述:

准备入库图书信息单

数据流来源:

管理员

数据流去向:

新书入库处理模块

数据流组成:

图书编号+图书名+数量+入库日期等

数据流名称:

入库清单简述:

刚新入库图书的信息单

数据流来源:

新书入库处理模块

数据流去向:

图书库存情况存档

数据流组成:

图书编号+图书名+数量+入库日期等

数据流名称:

销书计划简述:

准备从书库中撤除一部分图书的计划

数据流来源:

管理员

数据流去向:

销书处理模块

数据流组成:

图书编号+图书名称+入库日期+管理员编号+日期+数量等

数据流名称:

销书清单简述:

通过销书处理刚从书库中撤除的图书信息单

数据流来源:

销书处理模块

数据流去向:

图书库存情况存档

数据流组成:

图书编号+图书名称+入库日期+管理员编号+出库日期+数量+总价等

2.3主要数据存储的定义

(1)存储名称:

图书记录

输入:

流水号

输出:

图书所有信息及是否借出

数据结构:

流水号+分类号+索取号+书名+作者+价格+出版社+出版日期+是否借出

(2)存储名称:

读者记录

输入:

学号

输出:

读者信息及借书记录(所借书的流水号)

   数据结构:

学号+姓名+流水号+书名+应还日期

(3)存储名称:

借阅记录

输入:

书号+读者编号+职工编号

输出:

图书的借阅记录信息

数据结构:

流水号+学号+职工编号+书名+借书日期+应还日期+归还标记

(4)存储名称:

归还记录

输入:

书号

输出:

图书的归还记录信息

数据结构:

流水号+学号+书名+还书日期

(5)存储名称:

输入:

职工编号

输出:

职工信息

数据结构:

职工编号+密码+姓名+性别+联系电话+所属部门

3、数据库设计

3.1数据库概念结构设计

1.数据库需要表述的信息有以下几种:

(1)图书信息

(2)借阅者信息

(3)购书信息

通过分析整理可得图书管理系统E-R图为:

由系统E-R图可得其主要数据流和主要处理过程:

1.主要数据流定义

(1)数据流名称:

图书信息

定义:

编号+书名+作者+分类+出版日期+价格+库存+借出+在库

(2)数据流名称:

借阅者信息

定义:

借阅号+姓名+性别+年龄+借阅数+已借数+欠还罚单+上次归还+最近借阅

(3)数据流名称:

购书信息

定义:

图书编号+书名+购书单位+联系电话+入库时间+数量

3.2数据库逻辑结构设计

通过E/R模型到关系模型的转化,可以得到如下关系模式:

图书(条形码,编号,书名,分类,出版日期,价格,库存,借出+在库)。

借阅者(借阅号,姓名,性别,年龄,借阅数,已借数,欠还罚单,上次归还,最近借阅)。

购书(图书编号,书名,购书单位,联系电话,入库时间+数量)。

数据项名

别名

数据类型

长度

图书编号

bkno

varchar

20

书名

bkn

varchar

8

作者

bkauthor

varchar

6

分类

bkkind

varchar

20

出版日期

bktime

varchar

4

单价

blcase

float

8

库存

Kucunshu

int

4

借出

bkborrow

int

4

在库

bklive

int

4

表2-2采购信息

数据项名

别名

数据类型

长度

图书编号

bkno

varchar

10

书名

bkn

varchar

20

购书单位

bka

varchar

50

联系电话

bktp

varchar

11

入库时间

bksyre

varchar

10

数量

bknum

int

4

表2-4借阅者信息

数据项名

别名

数据类型

长度

借阅号

bno

varchar

10

姓名

bn

varchar

20

性别

sex

varchar

2

年龄

bage

int

4

借阅数

bbw

int

4

已借阅

bbw

int

4

欠还罚单

bpunish

float

8

上次归还

brecord

varchar

10

最近借阅

brend

char

10

每个关系模式的主键码都用下划线标出。

(1)流水号是图书的键码,每本书有唯一的流水号。

一个读者可以同时借阅多本书,

(2)同一本书可以借给不同的同学,同一个读者可以再次借同一本书。

于是借书关系的键码为流水号,学号和借书日期的组合。

(3)要知道图书当前的状态,是在图书馆存放还是被借阅。

需要在图书的模式中增加对应项用以表示图书当前的状态,现在增加‘库存’项。

3.3.2数据库前台的设计

根据数据库的设计,该图书管理系统可以分成三个子模块:

1、图书管理系统管理模块

2、图书管理系统购书模块

3、图书管理模块查询模块

根据四个模块的不同功能,可以分别设计不同的操作界面,以实现其功能。

根据不同模块的权限不同,设计登录界面,根据不同的权限访问不同的子系统。

4、图书管理系统使用说明

4.1图书管理系统登录界面

  

(1)界面

界面核心代码:

LRESULTCALLBACKWndProc(HWNDhwnd,UINTmsg,WPARAMwparam,LPARAMlparam)

{

PAINTSTRUCTps;

switch(msg)

{

caseWM_SIZE:

cxClient=LOWORD(lparam);

cyClient=HIWORD(lparam);

break;

caseWM_PAINT:

hdc=BeginPaint(hwnd,&ps);

ShowWindow(hwnd,SW_SHOWMAXIMIZED);

hmendc=CreateCompatibleDC(hdc);

hbitmap=CreateCompatibleBitmap(hdc,cxClient,cyClient);

SelectObject(hmendc,hbitmap);

for(i=0;i<6;i++)

{

hbtm=LoadBitmap(hInst,MAKEINTRESOURCE(bit[i]));

SelectObject(hmendc,hbtm);

GetObject(hbtm,sizeof(BITMAP),&bitmap);

StretchBlt(hdc,0,0,cxClient,cyClient,hmendc,0,0,bitmap.bmWidth,bitmap.bmHeight,SRCCOPY);

Sleep(1000);

}

EndPaint(hwnd,&ps);

break;

4.2图书管理系统图书管理界面

(2)图书管理界面

图书管理模块核心代码:

voidCMyView:

:

Onxiugai()

{

UpdateData(TRUE);

m_pSet->Edit();

m_pSet->m_bkno=m_bkno2;

m_pSet->m_bkn=m_bkn2;

m_pSet->m_bkauthor=m_bkauthor2;

m_pSet->m_bkkind=m_bkkind2;

m_pSet->m_bktime=m_bktime2;

m_pSet->m_bkcost=m_bkcost2;

m_pSet->m_bksave=m_bksave2;

m_pSet->m_bkborrow=m_bkborrow2;

m_pSet->m_bklive=m_bklive2;

m_pSet->Update();

m_pSet->Requery();

MessageBox("记录修改成功");

UpdateData(FALSE);

}

4.3新书审核界面

(3)新书审核界面

购书模块核心代码:

voidCMyView:

:

Ontongji()

{

UpdateData(TRUE);

CStringstr="";

while(m_list.GetCount()>0)

m_list.DeleteString(0);

m_pSet->MoveFirst();

while(m_pSet->IsEOF()!

=1)

{

str.Format("%s%30s%16s%16s%16s%8d",m_pSet->m_bkno,m_pSet->m_bkn,m_pSet->m_bka,

m_pSet->m_bktp,m_pSet->m_bksave,m_pSet->m_bknum);

m_list.AddString(str);

m_pSet->MoveNext();

UpdateData(FALSE);

}

}

4.4查询界面

(4)查询界面

图书查询模块核心代码:

oidCMyView:

:

OnButton2()

{

UpdateData(TRUE);

CStringstr="";

while(m_list.GetCount()>0)

m_list.DeleteString(0);

m_pSet->MoveFirst();

while(m_pSet->IsEOF()!

=1)

{

if(strcmp(m_pSet->m_bkn,m_bkn)==0||strcmp(m_bkno,m_pSet->m_bkno)==0||m_pSet->m_bksave==m_bksave||strcmp(m_pSet->m_bktime,m_bktime)==0

||m_pSet->m_bklive==m_bklive||strcmp(m_pSet->m_bkkind,m_bkkind)==0||m_pSet->m_bkcost==m_bkcost

||m_pSet->m_bkborrow==m_bkborrow||strcmp(m_pSet->m_bkauthor,m_bkauthor)==0)

{str.Format("%8s%8s%8s%8s%8s%12f%8d%8d%8d",m_pSet->m_bkno,m_pSet->m_bkn,m_pSet->m_bkauthor,m_pSet->m_bkkind,m_pSet->m_bktime,

m_pSet->m_bkcost,m_pSet->m_bksave,m_pSet->m_bkborrow,m_pSet->m_bklive);

m_list.AddString(str);

m_pSet->MoveNext();

UpdateData(FALSE);

}

else

{

m_pSet->MoveNext();

}

}

}

4.5借阅者及还书界面

(5)借阅者及借书还书界面

借阅者模块核心代码:

voidCMy2View:

:

Ontianjia()

{

m_pSet->AddNew();

UpdateData(TRUE);

m_pSet->Update();

m_pSet->MoveLast();

m_pSet->Requery();

MessageBox("添加成功!

");

UpdateData(FALSE);

}

voidCMy2View:

:

Onshanchu()

{

m_pSet->Delete();

m_pSet->Requery();

MessageBox("已经删除当前记录");

UpdateData(FALSE);

}

voidCMy2View:

:

Onxiugai()

{

m_pSet->Edit();

UpdateData(TRUE);

m_pSet->Update();

m_pSet->Requery();

MessageBox("修改成功!

");

UpdateData(FALSE);

}

5、总结

  本设计使用MicrosoftSQLServer2000创建后台数据库,使用MFC作为前台操作界面实现对图书管理系统的功能操作。

本图书管理系统实现了图书管理的基本功能,经过调试运行,表明该系统具有可行性和可扩充性。

但数据库还有待进一步的完善与规划,操作系统还有待于进一步的改善,使系统更加高效,更加人性化。

  通过几周的设计练习,从系统的需求分析开始,到概念设计,逻辑设计,再到最后的系统实施与维护,一步步走下来虽然感觉有点累,但每一步都获益匪浅。

认认真真完成每一步,直到完成整个系统之后,忽然有一种破茧而出的感觉。

从这个设计中,不仅仅从实践中巩固提高了数据库的相关知识,体会了设计一个系统的过程,更学到了一种设计分析的思想,一种能力。

 我们这组三人分工合作的很好,一个写代码,一个写需求分析,一个维护和测试。

不过有时候,一个人负责一个模块也很难应付过来,很多时候,三个人在一起讨论,一起发现问题,解决问题,从中找出最优解,就这样坚持下来了这两周,终于小有成就,数据库课程设计总算按时完成了,呵呵。

在这期间,无形中锻炼了我分析问题,解决问题的能里,锻炼了我自主学习的能力。

  在课程设计期间,我体会到了学习的乐趣,体会到了付出之后获得回报的喜悦,与欣慰。

感谢老师的大力帮助和支持,感谢我的同学与朋友,在我遇到各种各样复杂问题的时候,给与我鼓励和帮助。

参考文献

[1]钱雪忠,黄建华.数据库原理及应用.北京邮电大学出版社2009

[2]CharlesPetzold.Windows程序设计.北京大学出版社2009

[3]杨章伟.21天学通VisualC++.电子工业出版社2009

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

当前位置:首页 > 法律文书 > 调解书

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2