图书馆管理系统详细设计3.docx
- 文档编号:3726422
- 上传时间:2022-11-24
- 格式:DOCX
- 页数:21
- 大小:481.09KB
图书馆管理系统详细设计3.docx
《图书馆管理系统详细设计3.docx》由会员分享,可在线阅读,更多相关《图书馆管理系统详细设计3.docx(21页珍藏版)》请在冰豆网上搜索。
图书馆管理系统详细设计3
实验报告
课程名称软件工程
实验项目名称图书管理系统——详细设计1
实验学生班级05计算机科学与技术(控制技术)
实验学生姓名鞠久勤
学生所属院部信息技术学院
同组学生姓名肖静、何南、候芬、陈青、朱纪超
实验时间2008年12月8日、2008年12月15日
实验地点B407
实验成绩评定
指导教师签字年月日
一、实验目的和要求
对系统进行详细的设计,严格按照规格说明书的要求,完成图书管理系统的登录图书管理系统、图书管理、系统管理三个部分,其中图书管理又分为图书类别管理、图书信息管理,可对图书的类别和图书的信息进行添加、修改、删除、查询操作。
二、实验主要仪器和设备
PC机,MicrosoftVisualBasic6.0
三、实验原理
在本次的系统开发中主要完成以下三个部分的详细设计,其主要内容如下:
1、登录图书管理系统
由管理员或读者用自己的用户名和密码登录系统。
2、图书管理
(1)、图书类别管理
单击“图书管理”菜单下的“图书类别管理”,进入图书类别管理,再单击子菜单可以添加、修改、删除“图书类别”。
(2)、图书信息管理
单击“图书管理”菜单下的“图书信息管理”,进入图书信息管理,再单击子菜单可以添加、修改、删除、查询“图书信息”。
3、系统管理
(1)、添加管理员
单击“系统管理”菜单下的子菜单“添加管理员”添加系统管理员
(2)、修改密码
单击“系统管理”菜单下的子菜单“修改密码”即可修改密码。
(3)、退出系统
单击“系统管理”菜单下的“退出系统”,即可成功退出系统。
四、实验方法与步骤
1、登录系统
用户通过自己的用户名和密码登录系统。
登录界面如图1。
图1
系统默认的用户名和密码如图2所示:
图2
登录窗体中的确定按键其主要程序如下:
DimsqlAsString
Dimrs_loginAsNewADODB.Recordset
IfTrim(txtuser.Text)=""Then'判断输入的用户名是否为空
MsgBox"没有这个用户",vbOKOnly+vbExclamation,""
txtuser.SetFocus
Else
sql="select*from系统管理where用户名='"&txtuser.Text&"'"
rs_login.Opensql,conn,adOpenKeyset,adLockPessimistic
Ifrs_login.EOF=TrueThen
MsgBox"没有这个用户",vbOKOnly+vbExclamation,""
txtuser.SetFocus
Else'检验密码是否正确
IfTrim(rs_login.Fields
(1))=Trim(txtpwd.Text)Then
userID=txtuser.Text
userpow=rs_login.Fields
(2)
rs_login.Close
UnloadMe
Form1.Show
Else
MsgBox"密码不正确",vbOKOnly+vbExclamation,""
txtpwd.SetFocus
EndIf
EndIf
EndIf
cnt=cnt+1
Ifcnt=3Then
UnloadMe
EndIf
ExitSub
系统功能说明:
用于验证用户是否为管理员或本图书馆读者,以防资料外泄,如果是的则进入系统,否则提示错误。
2.图书管理
(1)、图书类别管理
◆添加图书类别
单击“图书类别管理”菜单,进入“添加图书类别”菜单如图3
图3
系统操作员可以根据实际情况填写“图书类别”、“图书编号”,然后点击“确定”按钮即可。
已经存在的图书类别如图4所示:
图4
图书类别窗体中的确定按键其主要程序如下:
Dimrs_bookstyleAsNewADODB.Recordset
DimsqlAsString
IfTrim(Text1.Text)=""Then
MsgBox"图书种类不能为空",vbOKOnly+vbExclamation,""
Text1.SetFocus
ExitSub
EndIf
IfTrim(Text2.Text)=""Then
MsgBox"种类编号不能为空",vbOKOnly+vbExclamation,""
Text2.SetFocus
ExitSub
EndIf
sql="select*from图书类别where类别名称='"&Text1.Text&"'"
rs_bookstyle.Opensql,conn,adOpenKeyset,adLockPessimistic
Ifrs_bookstyle.EOFThen
rs_bookstyle.AddNew
rs_bookstyle.Fields(0)=Trim(Text1.Text)
rs_bookstyle.Fields
(1)=Trim(Text2.Text)
rs_bookstyle.Update
MsgBox"添加图书类别成功!
",vbOKOnly,""
rs_bookstyle.Close
Else
MsgBox"读者类别重复!
",vbOKOnly+vbExclamation,""
Text1.SetFocus
Text1.Text=""
rs_bookstyle.Close
ExitSub
EndIf
系统功能说明:
当图书馆有新类别图书进馆时,由管理员通过此系统进入图4界面,添加新的图书类别,以便将新书添加到此类别中。
◆修改图书类别
单击“图书类别管理”菜单,进入“修改图书类别”子菜单进入图5界面:
图5
修改图书类别窗体中的修改类别按键其主要程序如下:
DimanswerAsString
OnErrorGoTocmdmodify
cmddel.Enabled=False
cmdmodify.Enabled=False
cmdupdate.Enabled=True
cmdcancel.Enabled=True
DataGrid1.AllowUpdate=True
cmdmodify:
IfErr.Number<>0Then
MsgBoxErr.Description
EndIf
系统功能说明:
当图书类别有错时,由管理员进入图5界面,单击修改类别按钮进入修改类别界面,修改原图书类别即可。
◆删除图书类别
单击“图书类别管理”菜单,进入“删除图书类别”子菜单进入图6界面,在删除类别按键中的程序如下:
DimanswerAsString
OnErrorGoTodelerror
answer=MsgBox("确定要删除吗?
",vbYesNo,"")
Ifanswer=vbYesThen
DataGrid1.AllowDelete=True
rs_reader.Delete
rs_reader.Update
DataGrid1.Refresh
MsgBox"成功删除!
",vbOKOnly+vbExclamation,""
DataGrid1.AllowDelete=False
Else
ExitSub
EndIf
delerror:
IfErr.Number<>0Then
MsgBoxErr.Description
EndIf
系统功能说明:
当图书馆中无此类图书时,则需删除此类别,管理员进入图五界面,单击删除类别进入删除类别界面,清除所需删除类别即可。
(2)图书信息管理
◆添加图书信息
单击“图书信息管理”菜单进入“添加图书信息”子菜单进入图6界面:
图6
系统操作员可以根据实际情况填写相应内容后点击“确定”即可,在确定按键中实现的主要程序如下:
sql="select*from书籍信息where书籍编号='"&Text1.Text&"'"
rs_addbook.Opensql,conn,adOpenKeyset,adLockPessimistic
Ifrs_addbook.EOFThen
rs_addbook.AddNew
rs_addbook.Fields(0)=Trim(Text1.Text)
rs_addbook.Fields
(1)=Trim(Text2.Text)
rs_addbook.Fields
(2)=Trim(Combo1.Text)
rs_addbook.Fields(3)=Trim(Text3.Text)
rs_addbook.Fields(4)=Trim(Text4.Text)
rs_addbook.Fields(5)=Trim(Text5.Text)
rs_addbook.Fields(6)=Trim(Text6.Text)
rs_addbook.Fields(7)="否"
rs_addbook.Update
MsgBox"添加书籍信息成功!
",vbOKOnly,""
rs_addbook.Close
Else
MsgBox"图书编号重复!
",vbOKOnly+vbExclamation,""
Text1.SetFocus
Text1.Text=""
rs_addbook.Close
ExitSub
EndIf
系统功能说明:
为新进馆的图书登记,以便查找和借阅。
◆修改图书信息
单击“图书信息管理”菜单进入“修改图书信息”子菜单进入图7界面:
图7
系统操作员可以“修改图书信息”,在修改信息按键中实现的主要程序如下:
DimanswerAsString
OnErrorGoTocmdmodify
cmddel.Enabled=False
cmdmodify.Enabled=False
cmdupdate.Enabled=True
cmdcancel.Enabled=True
DataGrid1.AllowUpdate=True
cmdmodify:
IfErr.Number<>0Then
MsgBoxErr.Description
EndIf
系统功能说明:
当图书信息有误时,进入此系统界面7,单击修改信息按钮,进入修改信息界面,修改信息即可。
◆删除图书信息
单击“图书信息管理”菜单进入“删除图书信息”子菜单进入图8界面,在删除信息按键中实现的主要程序如下:
DimanswerAsString
OnErrorGoTodelerror
answer=MsgBox("确定要删除吗?
",vbYesNo,"")
Ifanswer=vbYesThen
DataGrid1.AllowDelete=True
rs_book.Delete
rs_book.Update
DataGrid1.Refresh
MsgBox"成功删除!
",vbOKOnly+vbExclamation,""
DataGrid1.AllowDelete=False
Else
ExitSub
EndIf
delerror:
IfErr.Number<>0Then
MsgBoxErr.Description
EndIf
系统功能说明:
当某图书已不在图书馆时,需删除此图书信息,进入此系统界面7,单击删除信息按钮,进入删除信息界面,删除信息即可。
◆查询图书信息
单击“图书信息管理”菜单进入“查询图书信息”子菜单进入图8界面:
图8
系统操作员可以输入想要查询的书的相关信息,然后单击“确定”,即可在下框中出现相关书籍的信息,在确定中主要实现的程序如下:
Dimrs_findbookAsNewADODB.Recordset
DimsqlAsString
IfCheck1.Value=vbCheckedThen
sql="书名='"&Trim(Text1.Text&"")&"'"
EndIf
IfCheck2.Value=vbCheckedThen
IfTrim(sql)=""Then
sql="类别='"&Trim(Combo1.Text&"")&"'"
Else
sql=sql&"and书名='"&Trim(Combo1.Text&"")&"'"
EndIf
EndIf
IfCheck3.Value=vbCheckedThen
IfTrim(sql)=""Then
sql="作者='"&Trim(Text2.Text&"")&"'"
Else
sql=sql&"and作者='"&Trim(Text2.Text&"")&"'"
EndIf
EndIf
IfCheck4.Value=vbCheckedThen
IfTrim(sql)=""Then
sql="出版社='"&Trim(Text3.Text&"")&"'"
Else
sql=sql&"and出版社='"&Trim(Text3.Text&"")&"'"
EndIf
EndIf
IfCheck5.Value=vbCheckedThen
IfTrim(sql)=""Then
sql="书籍编号='"&Trim(Text4.Text&"")&"'"
Else
sql=sql&"and书籍编号='"&Trim(Text4.Text&"")&"'"
EndIf
EndIf
IfTrim(sql)=""Then
MsgBox"请选择查询方式!
",vbOKOnly+vbExclamation
ExitSub
EndIf
sql="select*from书籍信息where"&sql
rs_findbook.CursorLocation=adUseClient
rs_findbook.Opensql,conn,adOpenKeyset,adLockPessimistic
DataGrid1.AllowAddNew=False
DataGrid1.AllowDelete=False
DataGrid1.AllowUpdate=False
SetDataGrid1.DataSource=rs_findbook
rs_findbook.Close
若想要借阅这本书,则“选中”这本书后点击“借这本书”,出现该书的相关信息,如图9所示:
图9
然后选择“读者编号”及“读者姓名”,点击“确定”即可,在确定按键中主要实现的程序如下:
Dimrs_borrowbookAsNewADODB.Recordset
DimsqlAsString
sql="select*from读者信息where读者编号='"&Combo1.Text&"'"
rs_borrowbook.Opensql,conn,adOpenKeyset,adLockPessimistic
leibie=rs_borrowbook.Fields(3)
shumu=rs_borrowbook.Fields(8)
rs_borrowbook.Close
sql="select*from读者类别where种类名称='"&leibie&"'"
rs_borrowbook.Opensql,conn,adOpenKeyset,adLockPessimistic
qixian=rs_borrowbook.Fields
(2)
maxnum=rs_borrowbook.Fields
(1)
rs_borrowbook.Close
Ifshumu>=maxnumThen
MsgBox"该读者借书数额已满!
",vbOKOnly+vbExclamation
ExitSub
EndIf
sql="select*from借阅信息"
rs_borrowbook.Opensql,conn,adOpenKeyset,adLockPessimistic
rs_borrowbook.AddNew
rs_borrowbook.Fields
(1)=Combo1.Text
rs_borrowbook.Fields
(2)=Combo2.Text
rs_borrowbook.Fields(3)=Label8.Caption
rs_borrowbook.Fields(4)=Label9.Caption
rs_borrowbook.Fields(5)=Date
rs_borrowbook.Fields(6)=DateAdd("Ww",qixian,Date)
rs_borrowbook.Update
rs_borrowbook.Close
sql="select*from书籍信息where书籍编号='"&book_num&"'"
rs_borrowbook.Opensql,conn,adOpenKeyset,adLockPessimistic
rs_borrowbook.Fields(7)="是"
rs_borrowbook.Update
rs_borrowbook.Close
sql="select*from读者信息where读者编号='"&Combo1.Text&"'"
rs_borrowbook.Opensql,conn,adOpenKeyset,adLockPessimistic
rs_borrowbook.Fields(8)=rs_borrowbook.Fields(8)+1
rs_borrowbook.Update
rs_borrowbook.Close
MsgBox"本书借阅成功!
",vbOKOnly+vbExclamation
UnloadMe
系统功能说明:
用于管理员和读者查阅图书,只需进入界面8,输入查询图书名称等信息,单击查询即可在下方显示图书信息,若读者想借阅此书,则点击借这本书按钮,即可进入借阅界面9,输入读者信息即可。
3、系统管理
◆添加管理员
进入“系统管理”菜单后,单击“添加管理员”子菜单进入图10界面:
图10
输入确定的信息后即可增加一个新的用户。
在确定按键中主要程序如下:
DimsqlAsString
Dimrs_addAsNewADODB.Recordset
IfTrim(Text1.Text)=""Then
MsgBox"用户名不能为空",vbOKOnly+vbExclamation,""
ExitSub
Text1.SetFocus
Else
sql="select*from系统管理"
rs_add.Opensql,conn,adOpenKeyset,adLockPessimistic
While(rs_add.EOF=False)
IfTrim(rs_add.Fields(0))=Trim(Text1.Text)Then
MsgBox"已有这个用户",vbOKOnly+vbExclamation,""
Text1.SetFocus
Text1.Text=""
Text2.Text=""
Text3.Text=""
Combo1.Text=""
ExitSub
Else
rs_add.MoveNext
EndIf
Wend
IfTrim(Text2.Text)<>Trim(Text3.Text)Then
MsgBox"两次密码不一致",vbOKOnly+vbExclamation,""
Text2.SetFocus
Text2.Text=""
Text3.Text=""
ExitSub
ElseIfTrim(Combo1.Text)<>"system"AndTrim(Combo1.Text)<>"guest"Then
MsgBox"请选择正确的用户权限",vbOKOnly+vbExclamation,""
Combo1.SetFocus
Combo1.Text=""
ExitSub
Else
rs_add.AddNew
rs_add.Fields(0)=Text1.Text
rs_add.Fields
(1)=Text2.Text
rs_add.Fields
(2)=Combo1.Text
rs_add.Update
rs_add.Close
MsgBox"添加用户成功",vbOKOnly+vbExclamation,""
UnloadMe
EndIf
EndIf
系统功能说明:
为新来的管理员,设置信息,以便其能访问此系统。
◆修改密码
进入“系统管理”菜单后,单击“修改密码”子菜单进入图11界面:
图11
用户可在该界面中更改密码,在确定按键中主要程序如下:
Dimrs_changAsNewADODB.Recordset
DimsqlAsString
IfTrim(Text1.Text)<>Trim(Text2.Text)Then
MsgBox"密码不一致!
",vbOKOnly+vbExclamation,""
Text1.SetFocus
Text1.Text=""
Text2.Text=""
Else
sql="select*from系统管理where用户名='"&userID&"'"
rs_chang.Opensql,conn,adOpenKeyset,adLockPessimistic
rs_chang.Fields
(1)=Text1.Text
rs_chang.Update
rs_chang.Close
MsgBox"密码修改成功",vbOKOnly+vbExclamation,""
UnloadMe
EndIf
系统功能说明:
为管理员修改密码。
◆退出系统
进入“系统管理”菜单后,单击“退出系统”子菜单即可退出系统,其主要程序如下:
End
系统功能说明:
退出系统管理系统,回到主界面。
五、实验原始记录
导教师签字:
六、实验记录处理(计算过程与结果、数据曲线、图表等)
七、实验结果分析
在规格说明书的要求下,我所做的三部分都能够按要求完成实现具体
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 图书馆 管理 系统 详细 设计