Access图书馆管理系统
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
课程设计报告(数据库技术及应用)
题目:图书馆管理系统
院别:通信与信息工程学院
专业:通信与信息类
姓名:王宗义叶祥吉
学号:********** ********** 指导教师:***
重庆邮电大学
2012年12月02日
一、课程设计题目
图书馆管理系统
二、功能描述
根据图书管理员在图书借阅管理过程中遇到的实际情况,图书馆管理系统应具有以下功能:
(1)系统应允许管理员对管理员信息、图书信息及类型信息、读者信息及其类型信息进行添加、修改和删除操作;
(2)系统应允许管理员对图书信息和读者信息进行查询操作;
(3)图书借出或归还时,管理员可对借书信息和还书信息进行添加、修改、删除和查询操作;
(4)系统能为管理员提供读者信息报表和借书信息报表。
三、概要设计
根据系统功能的描述,图书馆管理系统主要有系统设置、信息管理、运行管理、信息查询、报表显示五大功能模块,每个模块中又包含几个子模块完成其相应的功能,系统所有功能模块如图一所示。
(1)图书类型设置模块
图书类型设置模块可以实现对图书类型的管理,可进行图书类型信息的添加、修改和删除操作;
(2)读者类型设置模块
读者类型设置模块可以实现对读者类型的管理,可进行读者类型信息的添加、修改和删除操作;
(3)图书信息管理模块
图书信息管理模块可以实现对图书的管理,可进行图书信息的添加、修改和删除操作;
(4)读者信息管理模块
读者信息管理模块可以实现对读者的管理,可进行读者信息的添加、修改和删除操作;
(5)图书借阅管理模块
图书借阅管理模块可以实现对借书信息的管理,可进行借书信息的添加、修改和删除操作;
(6)图书归还管理模块
图书归还管理模块可以实现对还书信息的管理,可进行还书信息的添加、修改和删除操作;
(7)图书信息查询模块
图书信息查询模块可根据书籍名称对书籍信息进行查询;
(8)读者信息查询模块
读者信息查询模块可根据读者编号对读者信息进行查询;
(9)按照读者编号查询借书信息模块
按照读者编号查询借书信息模块可以根据读者编号对读者的借书情况进行查询;
(10)按照读者编号查询还书信息模块
按照读者编号查询还书信息模块可以根据读者编号对读者的还书情况进行查询;
(11)按照书籍名称查询借书信息模块
按照书籍名称查询借书信息模块可以根据书籍名称对书籍的借阅情况进行查询;
(12)照书籍名称查询还书信息模块
按照书籍名称查询还书信息模块可以根据书籍名称对书籍的归还情况进行查询;
(13)读者信息报表显示模块
读者信息报表显示模块可以对读者信息进行进行查询,最后生成相应的报表;
(14)书籍报表显示模块
借书报表显示模块可以根据读者编号对读者的借书情况进行查询,最后生成相应的报表。
四、详细设计
1、数据库所需基本表:
(1)图书类别:类别编码、类别名称、关键词、备注4个字段;
(2)读者类型:类型编号、类型名称、可借天数、可借数量、有效期限、备注6个字段;
(3)图书信息:图书编号、图书名称、图书类别、作者、出版社、出版日期、书籍页数、关键词、登记日期、备注10个字段;
(4)读者信息:读者编号、读者姓名、读者类型编号、性别、工作单位、家庭住址、电话号码、电子邮件地址、办证日期、备注10个字段;
(5)借书信息:借阅信息编号、读者编号、读者姓名、图书编号、图书名称、借书日期、应还日期、备注8个字段;
(6)还书信息:还书编号、读者编号、读者姓名、图书编号、图书名称、借书日期、还书日期、备注8个字段。
2、数据库逻辑结构设计
图6.1 系统功能模块图
图一图书管理系统的功能模块图
表六还书信息表
字段名称数据类型字段大小主键
还书编号自动编号10 是
读者编号文本10 否
读者姓名文本10 否
图书编号文本10 否
图书名称文本20 否
借书日期日期/时间短日期否
还书日期日期/时间短日期否备注备注否
据各表的结构,在Access2003中可以完成“图书馆管理系统”数据库及表的创建工作。
3、创建表间关系
表之间的具体关系如图二所示。
图二表间关系图
4、创建查询
根据窗体的需要一共创建了6个查询,分别为:
(1)读者信息查询:根据读者编号查询读者信息;
(2)书籍信息查询:根据书籍的名称查询书籍信息;
(3)按照读者编号查询借书信息:根据读者编号查询该读者的借书信息;(4)按照读者编号查询还书信息:根据读者编号查询该读者的还书信息;(5)按照书籍名称查询借书信息:根据书籍名称查询该书的借阅信息;
(6)按照书籍名称查询还书信息:根据书籍名称查询该书的归还信息。
查询创建的方法采用设计视图创建查询,以“读者信息”查询为例,具体方法见图三。
其他查询效果图见第五效果部分。
5、窗体设计
各窗体的设计方法基本一样,以下仅以“管理员登陆”窗体为例进行设计,其他窗体见第五效果部分。
利用“用户登陆”窗体可以进入图书馆管理系统的主界面,其窗体效果如图四所示。
图三读者阅读情况查询
“用户登陆”窗体的创建步骤如下:
(1)在数据库窗口中选择窗体对象,然后双击按钮;
(2)弹出如图的窗体
图四:窗体
(3)选择“主菜单”→插入→图片命令;在窗体的“工具箱”中选择三个指
令和一个指令,然后分别在三个label指令窗口中输入“Microsoft Access
2003”、“欢迎使用”、“图书管理系统”,在Command指令窗口输入“用户登陆”,然后设置字体与大小;(4)利用“文本框”控件,在窗体主体区创建两个文本框text0和text3,并把标签标题分别改为“管理员账号”和“密码”;
(4)单击右键,选择,会弹出如图的选择发生器
图五
然后选择“代码生成器”,单击“”,会弹出VB代码编译窗口,然后
输入如下代码:
Option Compare Database
Private Sub Command4_Click()
On Error GoTo Err_Command4_Click
Screen.PreviousControl.SetFocus
DoCmd.FindNext
Exit_Command4_Click:
Exit Sub
Err_Command4_Click:
MsgBox Err.Description
Resume Exit_Command4_Click
End Sub
Private Sub Command7_Click()
DoCmd.OpenForm "登录窗体"
DoCmd.Maximize
End Sub
Private Sub Command8_Click()
Dim intx As Integer
Dim intCount As Integer
intCount = Forms.Count - 1
For intx = intCount To 0 Step -1
DoCmd.Close acForm, Forms(intx).Name
Next
End Sub
Private Sub Form_Timer()
If Label3.FontSize < 36 Then
Label3.FontSize = Label3.FontSize + 2
Else
Me.TimerInterval = 0
End If
End Sub
Private Sub Command9_Click()
On Error GoTo Err_Command9_Click
Dim stDocName As String
Dim stLinkCriteria As String
stDocName = ChrW(27426) & ChrW(-28722) & ChrW(30028) & ChrW(-26782)
DoCmd.OpenForm stDocName, , , stLinkCriteria
Exit_Command9_Click:
Exit Sub
Err_Command9_Click:
MsgBox Err.Description
Resume Exit_Command9_Click
End Sub
Private Sub Command10_Click()
On Error GoTo Err_Command10_Click
Dim stDocName As String
Dim stLinkCriteria As String
stDocName = ChrW(32467) & ChrW(26463) & ChrW(31383) & ChrW(20307) DoCmd.OpenForm stDocName, , , stLinkCriteria
Exit_Command10_Click:
Exit Sub
Err_Command10_Click:
MsgBox Err.Description
Resume Exit_Command10_Click
End Sub
Private Sub Command13_Click()
On Error GoTo Err_Command13_Click
Screen.PreviousControl.SetFocus
DoCmd.FindNext
Exit_Command13_Click:
Exit Sub
Err_Command13_Click:
MsgBox Err.Description
Resume Exit_Command13_Click
End Sub
Private Sub Image1_Click()
End Sub
(5)最终得到的窗体如图:
(6)、“用户登陆”的窗体与代码
图六“用户登陆”窗体
Private Sub Form_Load()
Dim Username As String, Password As String
Dim i,j
i = j
Do '用i记录循环次数,输入错误三次自动退出' Username = InputBox("请输入用户名")
If Username <> "admin" Then '验证用户名是否正确'
i = i + 1
msgBox("用户名不正确,请重新输入")
Else: Exit Do
End If
Loop while(i <= 3)
If i <= 3 Then '用户名正确'
j = 1
Do '用i记录循环次数,输入错误三次自动退出' Password = inputBox("请输入密码")
If Password <> "admin" Then '验证密码是否正确'
j = j + 1
MsgBox("密码不正确,请重新输入")
Else: Exit Do
End If
Loop while(j <= 3)
End If
If i > 3 or j > 3 Then
Dim intx As Integer
Dim intCount As Integer
intCount = Forms.Count - 1
For intx = intCount To 0 Step -1
DoCmd.Close acForm,Forms(intx).Name
Next
End If
End Sub
(7)在“用户登陆”窗体中正确输入用户名和密码,就可以进入了“欢迎使用”界面,该界面的设置与上一界面的设置基本相似,在此就不再赘述。
整个界面如下图:
6、报表设计
各报表的设计方法基本一样,以下仅以“读者信息”报表为例进行设计,另一报表见第五效果部分。
“读者借书信息”报表的设计步骤如下:
(1)在“图书馆管理系统”中选定报表对象,单击“新建——设计视图”,在“数据的来源表和查询”中选择“按照读者编号查询借书信息”;
(2)在设计视图中选择“读者编号”“读者姓名”“图书编号”“图书名称”“借书日期”“应还日期”字段;
(3)点击“排序与分组”进行如下操作,添加“读者编号”页眉,如图七所示;
图七排序与分组
(4)如图八调整布局:
图八“书籍信息”报表的设计视图
(5)查看“视图——打印预览”,另存为“书籍信息”报表。
7、“图书馆管理系统”主界面设计
“图书馆管理系统”窗体界面的设计方法如下:
(1)在该窗体中有3个标签和2个命令按钮,设计视图如九所示。
(2)窗体中的2个命令按钮都是通过“命令按钮向导”创建的。
其中,“退出系统”命令按钮执行的是“退出应用程序”操作;“读者信息报表显示”“借书报表显示”执行的是“报表操作——报表预览”操作;其他命令按钮都是执行的“打开窗体”操作;
8、系统的启动
点击“工具——启动”,将标题改为“图书馆管理系统”,显示窗体改为“登陆界面”,并清除对话框中所有默认选中的复选框,如图十,最后单击“确定按钮”。
图九“启动”对话框
五、效果及存在的问题
1、效果
(1)登陆界面与主页面的进入
单击“进入”,跳出如下界面:
单击“图书入库”,进入如下界面:单击“借还书登记”进入如下界面:
单击你“书籍信息查询”,进入如下界面:单击“读者信息查询”,进入如下界面:
(6)“报表查看”模块
点击“读者信息”,进入如下界面:
点击“书籍信息”,进入如下界面:
(7)退出系统
点击“退出系统”按钮,即可退出系统。
(8)之后“谢谢使用”界面:
然后关闭改程序
注:普通用户登录进入“图书馆”窗体界面,其中操作效果与(5)“信息查询”模块操作内容相同。
2、存在的问题
(1)虽完成了设计,但设计依然过于简单;
(2)功能虽基本满足,但还有需要改善的地方。
六、心得体会
这学期是我第一次接触到数据库系统,在早期只是听说过,并不知道它有什么作用,经过这一学期的学习和这一周自己动手操作,才发现数据库用途还是比较广泛的。
在做这个数据库系统时我发现要实现一种操作可以有很多途径,就比如说在创建主切换面板的时候可以直接在工具的“切换面板管理器”中实现,也可以实现“宏”的操作。
在这个过程中经历了无数次的删除和创建,再经老师的指点和查找书本资料后,终于完成了这个商品购销存管理系统。
总的来说这个数据库还是比较粗糙,大师因为是首次成果还是比较的高兴。
一周的时间使我们的动手动脑能力得到了很大的提高,相信这在我们日后的学习中会起到很重要的作用。
虽然只有一周的时间,所以系统会有许多的漏洞和不足之处,但是我觉得这是我第一次觉得短时间学的东西是有用的,等我真正熟悉如何用Access实现数据库的时候,我可以把它运用到更多的地方,像选课系统、企业的管理系统、营
销等许许多多的方面。
同时我也体会到了自学的乐趣,相信自学能力的培养对以后的学习都是很有帮助的,至少培养了我们的自觉能力。
七、参考文献
《Access2003应用实例教程》
余芳苏庆主编冶金工业出版社出版。