小型图书资料管理系统Word文档下载推荐.docx
- 文档编号:17108421
- 上传时间:2022-11-28
- 格式:DOCX
- 页数:17
- 大小:764.65KB
小型图书资料管理系统Word文档下载推荐.docx
《小型图书资料管理系统Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《小型图书资料管理系统Word文档下载推荐.docx(17页珍藏版)》请在冰豆网上搜索。
(5)图书管理员把借书卡保存到写有该读者借书证号的口袋里。
2)现行管理系统存在问题分析和解决方案
该图书馆工作大部分还是进行着手工管理,工作起来效率很低,并且不能及时了解图书馆各类图书的存库,学生们比较需求的图书等等,不便于动态及时地调整图书结构,以便更好地适应当前学生的借阅需求。
手工管理还存在这许多弊端,由于不可避免的人为因素,经常造成数据的遗漏、误报。
计算机信息化管理有着储存信息量大、速度快等许多优点,提供给我们的处理信息及时快捷,同时也提高了我们工作人员的自身素质。
基于以上的对问题的分析,利用计算机给我们提供信息,及时地调整学校图书馆图书结构,并且对学生们的借阅过程形成一整套动态的管理就十分必要了。
图书馆信息系统的建立,需要进行用户的需求调查与分析,以确定系统目标,提出解决问题的详细方案,这是系统建设的重要环节。
学校图书馆规模相对于商业图书馆小,但要有着完善的图书信息,对每一册书要有详细的记录信息,功能上对系统的需求是全面的。
因此对用户的需求可分为四个方面:
一方面是图书馆工作人员通过计算机来管理各类图书,分类编号,调整图书结构,增加图书库存,适应学生的需求;
二方面是学生们能通过计算机来查询浏览图书馆中的图书,来确定自已需要的书籍,为借阅做好准备;
三方面是工作人员对学生们的借书证发放,登记能作好全面的掌握,及时得到每个借书证的当前状态和历史借阅记录;
四方面也是图书馆的核心工作,对图书的借阅管理。
得出图书馆的业务流程图如下:
3)系统技术和功能可行性分析
通过对该图书馆的各个方面进行了具体的了解之后,现对该单位开发图书管理系统的可行性进行分析。
技术上可行:
该系统所需硬件设备,市场上销售且价格较低,甚至可以使用原有的设备,软件上,操作系统采用Windows系列操作系统,数据库管理系统采用VisualBasic、access
管理上可行:
该学校的图书馆有很多的管理体制,每位借书人均有借书证,同时图书馆还为每位借书人建立了档案。
因此管理上可行。
另外,图书馆管理人员对开发该系统也是大力支持的,同时制定了培训计划,并进行了实施MIS的物质准备和工作准备。
二、管理信息系统设计
系统设计在整个开发过程中起着重要的作用。
它将系统分析阶段建立的功能模型转化为系统的结构模型,并做好编程前的一切准备。
系统分析是定义系统干什么的问题,而设计阶段是解决怎么干的问题。
它从系统的目标出发,建立系统的总体结构,规划系统的规模,建立各个基础部分,并说明它在整个系统中的作用及相互关系。
1)系统设计的任务和原则
系统分析阶段的主要任务包括:
数据库设计(即数据存储文件的设计)、系统结构设计、系统流程设计、系统功能模块设计等。
系统设计的总原则是:
保证系统设计目标的视线,并在此基础上是技术资源的运用达到最佳。
系统设计中,应遵循以下原则:
系统性原则、可靠性原则、管理可接受性原则
数据库设计的目标:
1数据存储合理,要符合数据库设计的3个范式。
即:
表中每一个值都是院子项,只显示一次;
表中每行都必须可以被唯一地区分;
表中不会又多余的已存在其他表中包含的非关键字信息。
2数据对象的关系清晰明了,符合业务逻辑。
3保证数据的完整性。
4数据库系统该换时,原有的系统设计要便于转移,减少代码重写。
5维护方便
图3-1总体E-R图
图3-2读者E-R图
图3-3图书E-R图
图3-4管理员E-R图
2)数据库设计
数据库采用了Microsoft推出的Access数据库,,这是微软集成到Office中的一个桌面数据库,能够快速方便的和Office的其他套件综合使用。
由于Access具有显著的简易性和有效性,大量的桌面数据库系统都采用Access作为后台数据库。
书籍信息E-R图
借阅信息E-R图
用户表E-R图
(1)本系统中涉及到的主要实体及其属性有:
tblbooK(图书管理)表:
{图书编号,,书名,作者,出版社,出版日期,价格,tblCard(借书证)表:
{借书证编号,,姓名,男女,}
tblLoan(借阅)表:
{借书证编号,图书编号,借书日期,还书日期,}
tblOperator(操作员)表:
{操作员编号,姓名,密码,}
TblOperator
操作员表,定义操作员的ID和密码,作为系统登录检查的依据,提供唯一的管理员ID。
TblLoan
借阅表,通过借书证ID和图书ID反映图书的借阅关系。
TblCard
借书证表,提供读者信息等,同时包括借书证是否可用,提供唯一的借书证ID。
TblBook
图书表,保存馆内所有图书的信息,提供唯一的图书ID
(2)本系统的实体----联系(E-R)图
3)登录界面设计
系统进行登录时,用户单击了菜单“登录”,此时系统开始显示登录窗口。
PrivateSubmnuSysLogin_Click()
frmLogin.ShowvbModal
IfCurrentUser.LoginSuccessThen
Me.Caption=App.Title&
"
("
&
CurrentUser.Name&
)"
Else
(未登录)"
EndIf
EndSub
程序首先显示frmLogin窗口,由于这个窗口是模态(vbModal)显示的,因此如果用户只能关闭这个窗口后才能进行其他的操作。
VB的窗口分成模块窗口和非模态窗口两种,普通情况下都是非模态窗口,但是多数对话框是模态窗口。
程序的后面使用了一个结构体,这个结构体在公共模块定义,程序的任何地方都可以访问这个结构体,同时程序初始化了一个全局变量CurrentUser。
该变量用来指示当前是否有用户登陆,用户的ID和名称是什么等信息。
TypeUsers
IDAsInteger
NameAsString
PasswordAsString
LoginSuccessAsBoolean
EndType
PublicCurrentUserAsUsers
登录窗口实现代码:
OptionExplicit
DimcntAsInteger'
记录确定次数
PrivateSubcmdCancle_Click()
UnloadMe
PrivateSubcmdOK_Click()
DimsqlAsString
Dimrs_loginAsNewADODB.Recordset
DimconnAsNewADODB.Connection
conn.Open"
provider=Microsoft.Jet.OLEDB.4.0;
datasource="
App.Path&
\database.mdb"
IfTrim(Text1.Text)="
"
Then
MsgBox"
用户名不能为空,请重新输入!
Text1.SetFocus
sql="
select*from用户表whereuser_ID='
Trim(Text1.Text)&
'
rs_login.Opensql,conn,adOpenKeyset,adLockPessimistic
Ifrs_login.EOF=TrueThen
没有这个用户,请重输入!
vbOKOnly+vbExclamation,"
Text1.Text="
username=Text1.Text
IfTrim(rs_login.Fields
(1))=Trim(Text2.Text)Then
图书馆理系统.Show
密码不正确,请重新输入!
Text2.SetFocus
Text2.Text="
cnt=cnt+1
Ifcnt=3Then
PrivateSubForm_Load()
cnt=0
“系统运行”实现代码:
PrivateSubCommand1_Click()
IfText2="
请输入姓名"
Else
select*fromborrowwhere读者姓名='
+Trim(Text2.Text)+"
ado.ConnectionString=constr'
连接字符串
ado.RecordSource=sql'
社顶记录员
ado.Refresh
grid.Refresh
EndIf
constr="
provider=microsoft.jet.oledb.4.0;
datasource="
\library1.mdb"
“图书归还”实现代码:
IfText1="
请输入读者姓名"
+Trim(Text1.Text)+"
三、系统执行情况
1)书籍出借/归还
usingSystem;
usingSystem.Collections.Generic;
usingSystem.ComponentModel;
usingSystem.Data;
usingSystem.Drawing;
usingSystem.Text;
usingSystem.Windows.Forms;
namespace借_还书籍登记
{
publicpartialclassForm1:
Form
{
publicForm1()
InitializeComponent();
}
privatevoidbutton4_Click(objectsender,EventArgse)
}
新书入库的程序段采用了更为完备的功能,它首先检测用户输入是否合法,然后整理用户的输入信息,通过Database的Execute方法将SQL语句写入到数据库中,由于写入过程有可能出错(数据库共享冲突、硬件故障等),所以代码段中使用了差错控制机制,VB的差错控制通过两个语句来完成
OnErrorGotoLine_Indentity
或者
OnErrorResumeNext
其中第一句表示如果发生错误时将转到Line_Indentity开始的地方进行处理,第二句表示如果发生错误时强制程序继续运行以后的语句。
str1="
LibID"
str2=Chr(34)&
Text1.Text&
Chr(34)
2)系统执行过程
#include<
stdio.h>
string.h>
conio.h>
stdlib.h>
ctype.h>
#defineSTACK_INIT_SIZE10
#defineOK1
#defineTRUE1
#defineFALSE0
#defineERROR0
findbook()
{
FILE*fp;
charbookname[10];
intture,i;
fp=fopen("
book.txt"
"
r"
);
printf("
请输入你要查找的书名\n"
scanf("
%s"
bookname);
for(i=0;
fread(&
book[i],sizeof(structbook),1,fp)!
=0;
i++)
if(strcmp(bookname,book[i].bookname)==0)
{
if(book[i].turefalse==1)
printf("
这本书的详细资料是:
%d%s%s此书现在无人借阅\n按任意键返回\n"
book[i].booknum,book[i].bookname,book[i].bookcreat);
}
else{printf("
这本书已经有人借出\n"
fclose(fp);
return0;
}
fclose(fp);
returnFALSE;
没有你要查询的书籍\n"
returnFALSE;
findbook1()
charbookcreat[10];
请输入你要查找的作者名\n"
bookcreat);
if(strcmp(bookcreat,book[i].bookcreat)==0)
lendcount()
inti,n=0;
record.txt"
student[i],sizeof(structstudent),1,fp)!
卡号:
%d借出的书籍:
%s\n"
student[i].carnum,student[i].lendbook);
n=n+1;
目前共有%d本书借出\n"
n);
按任意键\n"
getch();
returnn;
主要参考文献
1.《VisualBasic6.0中文版入门与提高》
作者:
张树兵,戴红,陈哲出版日期:
2011年5月出版社:
清华大学出版社
2.《VisualBasic6.0程序设计》
DianeZak译者:
张云鹏出版日期:
2007年6月
出版社:
电子工业出版社
3.《Access2007数据库开发全书》
王樵民出版日期:
2008年12月
出版社:
清华大学出版社
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 小型 图书资料 管理 系统