




已阅读5页,还剩18页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
毕业论文毕业论文 题目名称 图书馆管理系统 专业班级 计算机应用 2 摘摘 要要 系统采用 visual foxpro6.0 进行开发,具体功能包括:图书信息查询、读 者信息查询、密码修改、读者信息管理、图书借阅管理等。 论文从需求分析、概念结构设计、逻辑结构设计、系统功能实现等方面对 系统的开发及实现过程进行了详细的阐述。 关键词:关键词:图书馆,图书馆管理系统,流程图 3 目目 录录 1 需求分析 4 visualfoxpro 简介4 1.2 系统要求.4 2 概念结构设计5 2.1 图书管理数据流图.5 2.2 由数据流图抽象出 e-r 图6 3 逻辑结构设计. 7 3.1 数据库的设计7 3.2 数据库表的设计.7 4 系统功能实现.10 4.1 密码修改模块.11 4.2 添加信息模块12 4.3 信息浏览模块13 4.4 信息查询模块14 4.5 信息删除模块.15 4.6 借书信息模块.17 4.7 还书信息模块.20 4.8 编写主程序20 总结.21 4 1 1 需求分析需求分析 1.11.1 visualfoxprovisualfoxpro 简介简介 visual foxpro 6.0(简称 vfp) 是由 microsoft 公司推出的。vfp 可以简 化数据管理,而且使应用程序的开发流程更为合理。它使组织数据、定义数据 库规则和建立应用程序等工作变得简单易行。利用可视化的设计工具和向导, 可以快速创建表单、查询和报表。在 vfp 中,可以使用数据库组织和建立表和 视图间的关系,在使用数据库时,你可以在表一级进行功能扩展,如创建字段 级规则、设置默认字段值和触发器等。vfp 提供了真正无模式操作,能够轻松 的进行对多个表单的自动协调,而且很容易的运行一个表单的多个实例。还有 提供的丰富有事件处理机制,给用户提供一个更丰富的交互环境。利用表单, 可以让用户在熟悉的环境下查看数据或将数据输入数据库。但表单提供的远不 止一个界面:它还提供丰富的对象集,这些对象能响应用户(或系统)事件, 这样就能使用户尽可能方便和直观的完成信息管理工作。v fp 提供了一个功能 强大的表单设计器,使得表单的设计变得又快又容易。表单和表单集是拥有自 己的属性、事件和方法程序的对象,在表单设计器中可以设置这些属性、事件 和方法程序。 1 1. .2 2 系系统统要要求求 本系统是采用visual foxpro 6.0 开发的,设计的是图书管理系统。系统满 足以下几点要求: (1)读者可以随时查询读者信息,修改登录密码。 (2)管理员可随时查询书籍借阅情况。包括借书人单位、姓名、借书证号、借 书日期和还书日期。 (3)管理员可以查阅修改读者信息及资料。 5 2 2 概念结构设计概念结构设计 2.12.1 图书管理数据流图图书管理数据流图 (1)第一层数据流图: 借阅信息 图书信息 读者信息 系统信息 管理员 图书管理数据库 (2)第二层数据流图: 借还书 查询结果信 息 查询信息 用户信 息 新图书 信息 新读者 信息 管理员 更新读者信息 更新图书信息 更新用户信息 读者信息表 图书信息表 修改密码 借阅信息表 查询 6 2.22.2 图书管理图书管理 e-re-r 图图 由数据流图抽象出图书管理系统的 e-r 图如下所示: 图书 e-r 读者 e-r 管理员 出版社 图书 编号 isbn 价格 作者 名称 分类 总数量 剩余数量 读者 姓名 性别 地址 身份证号 编号 电话 出生日期 备注 用户 序号 用户名类别 密码 7 3 3 逻辑结构设计逻辑结构设计 3.13.1 数据库的设计数据库的设计 数据库是一种工作环境,它存储了一个“表”的集合,在表之间可以建立 关系,对数据字段可以设置属性和触发规则,从而保证表之间数据的完整性。 本系统要实现图书资料和读者资料的管理 , 所以创建的图书管理数据库中 应包含操作员表(操作员表.dbf)、读者信息表(学生表.dbf)、图书信息表 (图书信息.dbf)、图书借阅记录表(借阅表.dbf)。 3.23.2 数据库表的设计数据库表的设计 本系统中要用到的表的字段的属性设置以及输入的数据分别如下: 操作员表.dbf 8 学生表.dbf 9 图书信息.dbf 借阅表.dbf 10 4 4 系统功能实现系统功能实现 系统功能结构图如下图所示:系统功能结构图如下图所示: 身份验证 查 询 修 改 密 码 图 书 信 息 读 者 借 阅 读 者 信 息 系 统 维 护 读者 信息 管理 图书管理系统 图 书 管 理 借阅 信息 管理 用 户 管 理 退 出 11 4.14.1 密码修改模块密码修改模块 上一条:command1 skip -1 if bof() go top endif thisform.refresh() 密码修改:command2 if mand2.caption=“修改密码“ mand2.caption=“保存“ else thisform.refresh mand2.caption=“修改密码“ endif 下一条: command3 skip if bof() go bottom endif thisform.refresh() 退出: command4 thisform.release 12 4.24.2 添加信息模块添加信息模块 添加: command1 go bottom append blank thisform.refresh 保存:command3 thisform.refresh 退出:command4 thisform.release 13 4.34.3 信息浏览模块信息浏览模块 首记录:command5 go top thisform.refresh() 上一条:command6 skip -1 if bof() go top endif thisform.refresh() 下一条:command7 skip if bof() go bottom endif 14 thisform.refresh() 尾记录: command8 go bottom thisform.refresh() 退出: command4 thisform.release 4.44.4 信息查询模块信息查询模块 查询:command1 cxkey=alltrim(thisform.text1.value) select *; from 学生表; where 编号=cxkey into cursor temp set filter to 编号=cxkey thisform.grid1.recordsource=“temp“ thisform.grid1.refresh 15 退出:command2 thisform.release 4.54.5 信息删除模块信息删除模块 首记录:command3 go top thisform.refresh() 上一条:command4 skip -1 if bof() go top endif thisform.refresh() 下一条:command5 skip if bof() go bottom 16 endif thisform.refresh() 尾记录: command6 go bottom thisform.refresh() 删除:command2 if messagebox(“你确定要删除该记录吗?“)=1 delete close tables all use 学生表 locate for deleted()=.t. pack thisform.refresh else thisform.refresh endif 退出:command1 thisform.release 17 4.64.6 借书信息模块借书信息模块 首记录:command2 go top thisform.refresh() 上一条:command5 skip -1 if bof() go top endif thisform.refresh() 下一条:command6 skip if bof() go bottom endif 18 thisform.refresh() 尾记录: command7 go bottom thisform.refresh() 添加:command4 append blank thisform.refresh 借阅:command1 for i=1 to 7 mm=“thisform.text“+allt(str(i)+“.value“ mm1=“thisform.text“+allt(str(i)+“.setfocus“ do case case i=1 cc=“请输入 isbn。“ tt=“编号不能为空!“ case i=2 cc=“请输入借期。“ tt=“不能为空!“ case i=3 cc=“请输入身份证号。“ tt=“不能为空!“ case i=4 cc=“请输入学生编号。“ tt=“不能为空!“ case i=5 cc=“请输入名字。“ tt=“不能为空!“ case i=6 cc=“请输入图书名称。“ 19 tt=“不能为空!“ case i=7 cc=“请输入还期。“ tt=“不能为空!“ endcase if empt(&mm) =messagebox(cc,16,tt) &mm1 return endif endfor sele 借阅表 sele 图书信息 update 图书信息 set 剩余数量=剩余数量-1 where 图书信息. isbn=thisform.text1.value 退出:command3 sele 借阅表 use sele 图书信息 use thisform.release 20 4.74.7 还书信息模块还书信息模块 还书:command1 sele 借阅表 dele from 借阅表 where isbn=alltr(thisform.text1.value) sele 图书信息 update 图书信息 set 剩余数量=剩余数量+1 where 图书信息. isbn=thisform.text1.value thisform.refresh() 退出:command2 thisform.release 4.84.8 系统连编系统连编 通过连编技术将各个模块关联起来,实现系统的整合,使做好的系统可以 脱离开发环境也能够运行。 连编必须进行以下四个步骤: (1)将所有的应用程序加入到项目管理器中。 (2)主程序的建立。 (3)程序的调试。 (4)应用程序的连编。 21 总结总结 通过几周的系统分析、设计、开发,系统编码的完成。在系统的开发过程 中,以前学习感到很抽象的课程,如数据库原理变得清晰起来,也学会了使用 vfp 简单的数据库软件建立较为简单的数据库。在本系统的开发过程中,由于 本人是初次开发软件,在知识、经验方面都存在着不足。另外,在整个开发的 过程中,时间也比较仓促。因此,该系统必然会存在一些缺陷和不足。因为对 就学生成绩管理的整个流程不够熟悉,在需求分析时未能做到完全满足用户的 需求。 由于是第一次做数据库开发,对一些代码不够熟悉,所以本管理系统存在 着很多不足,但它是我花了很多心思和时间做出来的,今后会学习更多的数据 库开发软件来完善它,使它能够有更全面的功能。通过开发这个系统,我掌握 了软件开发的基本过程,巩固了我对 vfp6.0 的学习,但在这次课程设计中的最 大收获并不是掌握了 vfp6.0 开发工具的应用,而是学会了设计系统的思维方法, 以及与同学们之间相互帮助的精神。 应收集的资料及主要参考文献 1 visual foxpro 案例精粹 150 例 2 visual foxpro9.0 项目开发案例教程 3 在百度上找一些质料 22 一、课程设计(论文)的内容 采用面向对象的设计思想,创建“图书馆管理系统”。整个系统由若干个 表、报表以及一个主菜单组成,由项目管理器统一管理全部程序和编写和调试, 用户在操作中可以通过主菜单调用系统的各项功能。在表单设计方面尽量考虑 方便用户使用,简化操作,大部分操作只需要单击鼠标即可完成。 二、毕业设计(论文)的要求与数据 设计的主要内容应包括:程序设计思路(功能图和流程图);详细设 计(功能说明);调试与测试:测试结果的分析与讨论源程序清单和执行 结果:清单中应有足够
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年教师资格考试资料查找试题及答案
- 失业保险协议书范本
- 投资分割协议书范本
- 在线电子签署协议书
- 药品区域销售协议书
- 家庭家具安置协议书
- 委托签字协议书模板
- 简单伤残协议书范本
- 协议书格式签字盖章
- 专利创意转让协议书
- 消防更换设备方案范本
- 2024年环境影响评估试题及答案
- 【初中历史】2024-2025学年部编版七年级下学期历史中考复习提纲
- 《电力建设工程施工安全管理导则》(nbt10096-2018)
- 全过程工程咨询投标方案(技术方案)
- 湖南省2025届高三九校联盟第二次联考历史试卷(含答案解析)
- 家具全屋定制的成本核算示例-成本实操
- 在线预订平台在旅行社人力资源管理中的应用研究-深度研究
- 晕针晕血的处理及预防
- 旅拍店合伙人协议书范本
- Seminar_带SPL的安全集成
评论
0/150
提交评论