VB图书管理系统.docx
《VB图书管理系统.docx》由会员分享,可在线阅读,更多相关《VB图书管理系统.docx(9页珍藏版)》请在冰豆网上搜索。
VB图书管理系统
1、概述
为适应教育现代化的迫切要求,提高高校图书馆的现代化管理水平,提高图书馆使用效率,更好的配置图书资源,降低工作人员劳动强度;结合本人实际兴趣及知识,开发了此软件。
2、详细设计
2.1.系统功能模块图
2.2.数据流图:
3.数据库设计
数据库概念结构设计:
数据库逻辑结构的设计
包括有系统用户表yonghu、读者表duzhe、图书表tushu、借阅表jieshu、设置表shez。
图书表tushu
字段名称
类型
说明
图书编号
文本
?
书名
文本
?
作者
文本
?
出版社
文本
?
单价
文本
?
本数
文本
?
已借出数
文本
?
借出次数
文本
?
读者表duzhe
字段名称
类型
说明
读者编号
文本
?
姓名
文本
?
班级
文本
?
电话号码
文本
?
借阅次数
文本
?
已借本数
文本
?
已交罚款
文本
?
借阅表jieshu
字段名称
类型
说明
读者编号
文本
?
图书编号
文本
?
借书日期
日期/时间
?
还书日期
日期/时间
?
应还日期
日期/时间
?
续借
文本
?
设置表shez
字段名称
类型
说明
还书期限
整型
?
续借期限
整型
?
最大借书数
整型
?
4、主要功能模块设计
.系统登陆界面设计
功能介绍:
用户选择用户名并输入密码,系统按用户名查看yonghu表,若密码正确,则按权限进入图书管理系统的主界面;若用户密码输入不正确,则系统提示出错,要求重新输入密码否则不得进入本系统。
(注:
还定义了一个模块名为,pubyh和quanxian都是全局变量,一个保存用户名,一个保存权限、还有hsqx、xjqx、zdjss用于保存还书期限、续借期限、最大借书数。
)
代码实现:
PrivateSubCommand1_Click()
="select*fromyonghuwhere用户名='"&&"'and密码='"&&"'"
If=FalseThen
pubyh=
quanxian="权限")
Else
MsgBox"密码错误,请重新输入!
",vbOKOnly+vbExclamation,"图书馆"
=""
CallForm_Load
EndIf
EndSub
PrivateSubForm_Load()
="Provider=."&"Source="&&";PersistSecurityInfo=False" '数据库的连接,使用相对路径
="select*fromyonghu"
="日期:
"&Date
EndSub
图书管理系统的主界面设计
(a)界面设计:
(b)功能介绍:
主界面的功能有系统管理模块:
系统设置、用户管理、注销、退出。
数据管理模块:
借书管理、续借管理、还书管理、图书管理、读者管理。
数据查询模块:
借阅查询、图书查询、读者查询。
统计排行模块:
读者统计排行、图书统计排行。
今日盘点模块:
今日借出图书、今日归还图书、今日到期图书。
使用了菜单、工具栏和状态栏。
(c)代码实现:
PrivateSubMDIForm_Activate()
Unloadfrmlogin
="Provider=."&"Source="&&";PersistSecurityInfo=False"
="select*fromshez"
hsqx="还书期限")
xjqx="续借期限")
zdjss="最大借书数")
string1="当前还书期限:
"&hsqx&"个月 续借期限:
"&xjqx&"个月 最大借书数:
"&zdjss&"本"
SelectCasequanxian '根据权限分配功能的使用
Case"1":
beizu="系统管理员:
"
=True
……
Case"2":
beizu="操作员:
" '权限为2的是一般操作人员
=False
……
=True
……
Case"3":
beizu="读者:
" '权限为3的是读者
……
EndSelect
(1).Text=beizu+pubyh
(2).Text=string1
EndSub
借书管理模块
(a)界面设计
b)功能介绍
该部分完成对读者的借书管理并将借书信息写入jieshu表中,并修改duzhe表中借阅次数、已借本数两字段和tushu表中借出次数、已借本数两字段,读者借书数超过系统参数设定的最多本数的不能再借。
(c)代码实现
PrivateSubCommand1_Click()
b=CInt ‘读者已借图书数
e=CInt ‘读者的借阅次数
c=CInt ‘图书的本数
d=CInt ‘图书已借出数
f=CInt ‘图书的借出次数
Ifzdjss-b<=0Then
MsgBox"你已借满图书了",借书
ExitSub
EndIf
Ifc-d<=0Then
MsgBox"你要的图书已全部借出",借书
ExitSub
EndIf
"已借本数",Str(b+1)
"借阅次数",Str(e+1)
="已借本数")
="借阅次数")
"已借出本数",Str(d+1)
"借出次数",Str(f+1)
="已借出本数")
="借出次数")
"读者编号")=
"图书编号")=
"借书日期")=
"应还日期")=
"续借")="0"
EndSub
PrivateSubForm_Load()
="Provider=."&"Source="&&";PersistSecurityInfo=False"
="select*fromduzhe"
……
=Date
=DateAdd("m",hsqx,DTPicker1) ‘hsqx是还书期限
EndSub
PrivateSubText1_KeyDown(KeyCodeAsInteger,ShiftAsInteger)
IfKeyCode=13Then
"读者编号='"&&"'"
If=TrueThen
MsgBox"无此读者编号",借书
=""
……
ExitSub
EndIf
="姓名")
……
EndIf
EndSub
PrivateSubText16_KeyDown(KeyCodeAsInteger,ShiftAsInteger)
IfKeyCode=13Then
"图书编号='"&&"'"
If=TrueThen
MsgBox"无此图书编号",借书
=""
……
ExitSub
EndIf
="书名")
……
EndIf
EndSub
图书查询
(a)界面设计:
(b)功能介绍:
对图书可根据不同的条件进行查询(图书编号、书名、作者、出版社)。
(c)代码实现:
PrivateSubCommand1_Click()
SelectCase
Case0
"图书编号='"&&"'"
IfThen
"图书编号='"&&"'"
EndIf
Case1 '书名采用模糊查询
"书名like'*"&&"*'"
IfThen
"书名like'*"&&"*'"
EndIf
……
EndSelect
EndSub
5.结束语
本程序严格按照软件工程的设计流程,使用编程简洁、面向对象的可视化编程语言VisualBasic,并结合MSACCESS实现数据库的操作。
整个系统实现了一般图书馆系统中的功能。