图书管理系统项目报告.docx
《图书管理系统项目报告.docx》由会员分享,可在线阅读,更多相关《图书管理系统项目报告.docx(30页珍藏版)》请在冰豆网上搜索。
图书管理系统项目报告
摘要................................................................................2
一、系统分析.........................................................................3
(一)需求分析.....................................................................3
(二)可行性分析...................................................................3
二、开发的工具......................................................................4
三、开发的环境......................................................................5
四、系统设计.........................................................................6
(一)系统功能模块图...............................................................6
五、数据库设计......................................................................7
(一)表信息.......................................................................7
六、详细设计.........................................................................9
(一)公用模块的创建...............................................................9
(二)用户管理模块的创建...........................................................10
(1)用户登录窗体的创建.......................................................10
(2)主窗体的创建...........................................................11
(三)数据录入修改模块的创建.......................................................13
(1)图书信息管理(添加图书信息)..............................................13
(2)图书信息管理(修改、删除图书信息)...........................................15
(3)读者类别管理(添加读者类别)................................................17
(4)读者信息管理(添加读者信息)................................................19
(5)系统管理(设置用户权限)...................................................21
(6)系统管理(修改用户密码)...................................................24
(四)数据查询模块的创建............................................................25
(1)图书信息管理(查询图书信息)................................................25
(2)读者信息管理(查询读者信息).............................................27
七、结束语...........................................................................30
(一)总结.........................................................................30
(二)致谢.........................................................................30
附录一、参考文献.....................................................................35
图书管理系统
摘要:
本篇将进一步讲解VisualBasic的进阶知识,通过一个具体的系统实例引导学生如何制作完成一个完整的系统,该篇采用功能模块形式,每个项目即为一个可独立运行的功能模块。
关键词:
图书馆是一个专门搜集、整理、收藏图书文献资料供人阅览、参考的机构,是人们获取知识的主要途径之一。
在信息技术迅速普及的今天,越来越多的读者希望能通过++网络更方便、更快捷地进行图书的查阅、借阅、获取自己所需的资料,因此图书馆的信息化建设尤为重要。
一、系统分析
(一)需求分析
日常处理图书的手续繁琐复杂、效率较低,给管理人员带来了诸多的不便,针对这一现象,为了方便图书管理人员对图书馆书籍、读者资料、借还书记录等进行高效的管理,有必要开发图书管理系统。
建立图书管理系统,要将图书馆和图书管理、读者管理、图书借阅管理等日常工作实行计算机统一管理,以提高工作效率。
(二)可行性分析
图书管理系统正是基于这一需求而产生的,系统中包**括图书类型、图书信息,读者类型、读者信息及借书、还书等信息。
它实现了图书管理的电子化,既方便图书管理人员有效地处理这些信息,同时还有利于读者查阅书籍等相关信息。
二、开发的工具
采用:
VisualBasic语言程序设计
VisualBasic是一种可视化的、面向对象和采用事件驱动方式的结构化高级程序设计语言,可用于开发Windows环境下的各类应用程序。
它简单易学、效率高,且功能强大,可以与Windows的专业开发工具SDK相媲美。
在VisualBasic环境下,利用事件驱动的编程机制、新颖易用的可视化设计工具,使用Windows内部的应用程序接口函数,以及动态链接库、动态数据交换、对象的链接与嵌入、开放式数据连接等技术,可以高效快速地开发出Windows环境下功能强大、图形界面丰富的应用软件系统。
三、开发的环境
在日常生活中,很多地方可以看到数据库的应用,如超市管理系统,我们买完商品付账的时候,收银员就会使用超市管理系统,这个系统的数据库中存储了每一件商品的信息(包括商品价格、产地、厂家等)
数据库是数据库系统的核心和管理对象,它是一种用于收集和组织信息的工具,各种管理系统软件的主要工作就是处理数据库中的数据。
如图书管理系统,在后台数据中存放了每本书籍的详细信息(包括书名、作者、出版社等)还有读者的各种信息等
本系统数据库Access简介:
数据库中的数据由数据库管理系统来处理,Access就是Office系列软件中专门用来管理数据库的应用软件,它可以运行于Windows各种环境中。
由于Access继承了Windows的特性,不仅易于使用,而且界面友好,因此被用户广泛使用。
四、系统设计
(一)系统功能模块图
五、数据库设计
表1:
图书类别表
字段名称
数据类型
字段大小
必填字段
类别名称
文本
50
是
类别编号
文本
50
是
表2:
读者类别表
字段名称
数据类型
字段大小
必填字段
读者类别
文本
50
是
借书数量
数字
长整型
否
借书期限
数字
长整型
否
罚款额度
数字
单精度(小数2位)
否
表3:
图书信息表
字段名称
数据类型
字段大小
必填字段
书籍编号
文本
50
是
书名
文本
50
否
别名
文本
50
否
类别
文本
50
否
作者
文本
50
否
出版社
文本
50
否
出版日期
日期
-
否
登记日期
日期
-
否
是否被借出
文本
50
否
表4:
读者信息表
字段名称
数据类型
字段大小
必填字段
读者编号
文本
50
是
读者姓名
文本
50
否
性别
文本
50
否
读者类别
文本
50
否
工作部门
文本
50
否
家庭地址
文本
50
否
电话号码
文本
50
否
登记日期
日期
-
否
已借书数量
数字
长整型
否
表5:
借阅信息表
字段名称
数据类型
字段大小
必填字段
借阅编号
自动编号
长整型(递增)
否
读者编号
文本
50
否
读者姓名
文本
50
否
书籍编号
文本
50
否
书籍名称
文本
50
否
出借日期
日期
-
否
还书日期
日期
-
否
续借日期
日期
-
否
逾期罚款
货币
货币(小数点1位)
否
状态
文本
255
否
表6:
系统管理表
字段名称
数据类型
字段大小
必填字段
用户名
文本
50
是
密码
文本
50
是
权限
文本
50
否
六、详细设计
(一)公用模块的创建
PublicFunctionexerecordset(ByValsqlAsString)AsADODB.Recordset
DimconnAsADODB.Connection
DimrecAsADODB.Recordset
OnErrorGoToexesqlerr
Setconn=NewADODB.Connection
conn.Open"provider=microsoft.jet.oledb.4.0;datasource=book.mdb"
Setrec=NewADODB.Recordset
rec.CursorLocation=adUseClient
rec.OpenTrim(sql),conn,adOpenKeyset,adLockPessimistic
Setexerecordset=rec
msg="查询到"&rec.RecordCount&"条记录"
exesqlexit:
Setrec=Nothing
Setconn=Nothing
ExitFunction
exesqlerr:
msg="查询有误:
"&Err.Description
Resumeexesqlexit
EndFunction
PublicSubexenonquery(ByValsqlAsString,msg)
DimconnAsADODB.Connection
OnErrorGoToexesqlerr
Setconn=NewADODB.Connection
conn.Open"provider=microsoft.jet.oledb.4.0;datasource=book.mdb"
conn.Executesql
msg="执行SQL操作成功"
exesqlexit:
Setconn=Nothing
ExitSub
exesqlerr:
msg="SQL执行有误"&Err.Description
Resumeexesqlexit
EndSub
(二)用户管理模块的创建
1.用户登录窗体的创建
新建一个工程,将当前窗体更名为“login.frm”运行界面如图所示
代码如下:
DimcntAsInteger
PrivateSubCommand1_Click()
DimsqlAsString
DimmsgAsString
DimrecAsNewADODB.Recordset
IfTrim(Text1.Text)=""Then
MsgBox"请输入用户名",vbOKOnly+vbExclamation,""
Text1.SetFocus
Else
sql="select*from系统管理表where用户名='"&Text1.Text&"'"
Setrec=exerecordset(sql)
Ifrec.EOF=TrueThen
MsgBox"没有这个用户",vbOKOnly+vbExclamation,""
Else
IfTrim(rec.Fields
(1))=Trim(Text2.Text)Then
userid=Text2.Text
userpow=rec.Fields
(2)
rec.Close
UnloadMe
Form1.Show
Else
MsgBox"密码不正确",vbOKOnly+vbExclamation,""
Text2.SetFocus
EndIf
EndIf
EndIf
cnt=cnt+1
Ifcnt=3Then
UnloadMe
EndIf
ExitSub
EndSub
PrivateSubForm_Load()
cnt=0
EndSub
PrivateSubTimer1_Timer()
Label1.Left=Label1.Left-100
IfLabel1.Left+Label1.Width<0Then
Label1.Left=Form1.Width
EndIf
EndSub
(2)主窗体的创建
新建一个工程,更名为“图书管理系统”,添加MDI主窗体,更名为form1,运行界面如图所示
代码如下:
PrivateSubchaxu_Click()
xinxichaxu.Show
EndSub
PrivateSubchaxu2_Click()
duzhexinxiguanli.Show
EndSub
PrivateSubchongshemima_Click()
chongshemima.Show
EndSub
PrivateSubquanxianshezhi_Click()
shezhiquanxian.Show
EndSub
PrivateSubshanchu_Click()
leibeiguanli.Show
EndSub
PrivateSubshanchu2_Click()
xinxixiugai.Show
EndSub
PrivateSubshanchu3_Click()
duzheleibeiguanli.Show
EndSub
PrivateSubshanchu4_Click()
duzhexinxiguanli.Show
EndSub
PrivateSubtianjia_Click()
leibietianjia.Show
EndSub
PrivateSubtianjia1_Click()
xinxitianjia.Show
EndSub
PrivateSubtianjia3_Click()
tianjiaduzheleibie.Show
EndSub
PrivateSubtianjia4_Click()
tianjiaduzhexinxi.Show
EndSub
PrivateSubxiugai_Click()
leibeiguanli.Show
EndSub
PrivateSubxiugai2_Click()
xinxixiugai.Show
EndSub
PrivateSubxiugai3_Click()
duzheleibeiguanli.Show
EndSub
PrivateSubxiugai4_Click()
duzhexinxiguanli.Show
EndSub
(三)数据录入修改模块的创建
(1)图书信息管理(添加图书信息)
新建一个工程,在工程内添加一个窗体名为”frmaddbookinfo.frm”,运行界面如图所示。
在相应的文本框内添加图书信息后,单击“确定”按钮,弹出提示添加书箱信息成功信息框。
代码如下:
DimconnAsADODB.Connection
DimrecAsADODB.Recordset
DimtxtAsTextBox
DimsqlAsString
PrivateSubCalendar1_Click()
txt.Text=Calendar1.Value
Calendar1.Visible=False
EndSub
PrivateSubCommand1_Click()
Calendar1.Left=Text3.Left
Calendar1.Top=Text3.Top+Text3.Height
Settxt=Text3
Calendar1.Visible=True
EndSub
PrivateSubCommand2_Click()
Calendar1.Left=Text5.Left
Calendar1.Top=Text5.Top+Text5.Height
Settxt=Text5
Calendar1.Visible=True
EndSub
PrivateSubCommand3_Click()
sql="select*from图书信息表where书籍编号='"&Text1.Text&"'"
conn.Executesql
Ifrec.EOFThen
sql="insertinto图书信息表(书籍编号,书名,类别,出版日期,作者,登记日期,出版社)values('"&Text1.Text&"','"&Text2.Text&"','"&Combo1.Text&"','"&Text3.Text&"','"&Text4.Text&"','"&Text5.Text&"','"&Text6.Text&"')"
conn.Executesql
MsgBox"执行SQL操作成功!
"
EndIf
EndSub
PrivateSubCommand4_Click()
Text1.Text=""
Text2.Text=""
Text3.Text=""
Text4.Text=""
Text5.Text=""
Text6.Text=""
Combo1.Text=""
EndSub
PrivateSubCommand5_Click()
End
EndSub
PrivateSubForm_Load()
Setconn=NewADODB.Connection
conn.Open"provider=microsoft.jet.oledb.4.0;datasource=book.mdb"
Setrec=NewADODB.Recordset
rec.CursorLocation=adUseClient
rec.Open"select*from图书信息表",conn,adOpenKeyset,adLockPessimistic
DoWhileNotrec.EOF
rec.MoveNext
Loop
EndSub
(2)图书信息管理(修改、删除图书信息)
新建一个工程,在工程内添加一个窗体名为”frmmodifybookinfo.frm”,运行界面如图所示。
激活“打开修改删除功能”进行修改,并保存后,如图所示。
代码如下:
DimconnAsADODB.Connection
DimrecAsADODB.Recordset
PrivateSubCommand1_Click()
DataGrid1.AllowUpdate=NotDataGrid1.AllowUpdate
DataGrid1.AllowAddNew=NotDataGrid1.AllowAddNew
DataGrid1.AllowArrows=NotDataGrid1.AllowArrows
DataGrid1.AllowDelete=NotDataGrid1.AllowDelete
Command2.Enabled=NotCommand2.Enabled
Command3.Enabled=NotCommand3.Enabled
IfCommand1.Caption="打开功能"ThenCommand1.Caption="关闭功能"ElseCommand1.Caption="打开功能"
EndSub
PrivateSubCommand2_Click()
rec.Update
MsgBox"保存成功"
EndSub
PrivateSubCommand3_Click()
IfMsgBox("确定删除?
",vbYesNo)=vbYesThen
rec.Delete
rec.Update
DataGrid1.Refresh
DataGrid1.Caption="图书信息表(共查询到"&rec.RecordCount&"条记录)"
Else
ExitSub
EndIf
EndSub
PrivateSubCommand4_Click()
End
EndSub
PrivateSubForm_Load()
Setconn=NewADODB.Connection
conn.Open"provider=microsoft.jet.oledb.4.0;datasource=book.mdb"
Setrec=NewADODB.Recordset
rec.CursorLocation=adUseClient
rec.Open"select*from图书信息表",conn,adOpenKeyset,adLock