delphi图书馆管理信息系统分析与设计_第1页
delphi图书馆管理信息系统分析与设计_第2页
delphi图书馆管理信息系统分析与设计_第3页
delphi图书馆管理信息系统分析与设计_第4页
delphi图书馆管理信息系统分析与设计_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

By 目 录 论文摘要 1 关键字 1 1 选题背景 3 1 1 课题背景 意义和来源以及系统工具介绍 3 1 1 1 课题背景及意义 3 1 1 2 课题的来源 3 1 1 3 系统工具介绍 3 1 2 国内外发展概况 4 1 3 研究内容及须解决的关键问题 4 1 3 1 研究内容 4 1 3 2 需要解决的关键问题 4 2 图书馆管理信息系统解决方案 5 2 1 方案内容 5 2 2 方案论证 5 2 2 1 方案的选择 5 2 2 2 方案的技术实现 6 3 系统总体设计 7 3 1 系统总体设计 7 3 2 系统总体功能图 8 3 3 数据库设计 8 3 3 1 数据库的选择 8 3 3 2 数据库设计 9 3 3 4 数据库关系图 10 4 图书馆管理信息系统的实现过程 11 4 1 系统结构 11 4 2 登录系统界面的设计 12 4 3 信息服务子系统的设计 12 4 4 管理和维护子系统的设计 15 5 开发过程遇到的问题及解决方法 20 6 结束语 21 参考文献 21 QQ 1 图书馆管理信息系统 陈清芽 论文摘要 这篇论文主要讲述关于图书馆管理信息系统的信息 特别是 讨论了关于设计该系统时的思想 方法和过程 以及在细节上分析函数和方法 的实现思想 在本论文中讲述的图书馆管理信息系统拥有一个交互式的界面 逻辑的数据库结构 并且在设计数据库时还考虑到了实体完整性约束 参照完 整性约束 及尽量减少数据的冗余 在数据库里有包括表 过程 函数 触发 器等 5 个数据库对象 许多涉及到图书 读者的信息的功能在本系统中都有实 现 例如 你可以将新书的信息插入到数据库的图书基本情况表里 还可以对 已经插入的关于图书的信息进行修改 更重要的是 读者可以从图书馆里借阅 书籍 经过多次的测试和运行 本系统能实现其在设计时的所有功能 关键字 图书 读者 管理系统 数据库 ODBC QQ 2 Library Management Information System Chen Qingya Abstract This dissertation mainly talk about information about the system of library particularly discusses the design thinking method and process of creating a library Management Information System and analyses the function and method of realization in detail This system which is implemented in our project talked about in this dissertation has a very interactive interface a very logical database architecture What has been taken into account most are entity integrity reference integrity and reduction of data redundancy There are 5 database objects in total including tables procedure trigger and so on Many kinds of functions related to book or reader closely have been implemented in our system For example you can insert the information of a new book into database you can also alter the information which has been inserted more important the reader can borrow book from the library After being tested many times the system can be run well Keywords Book Reader Management System Database ODBC QQ 3 1 选题背景 1 1 课题背景 意义和来源以及系统工具介绍 1 1 1 课题背景及意义 今天 随着信息技术的发展 在图书馆的管理中运用传统的手工操作方式 在现在这个数字化的时代已显得极不适应 因此 工作人员和读者对于运用计 算机来辅助协调和管理自身工作的需求正在逐步提高 随着我国现代化技术的 不断提高和普及 学校也在不断的提高它的各个部门的管理质量 而图书馆管 理就是对图书的编目 查询及读者信息的管理 重要的是图书的信息管理 包 括图书的采购 编目 下架 遗失等 因此 图书的管理是一个工作量比较大 而且较为繁杂的工作 至今还有很多学校仍然采用人工管理的方式 由两三个 工作人员管理图书档案 对于借书还书都是用手工来进行操作 而一旦借阅者 较多时就容易因忙碌导致错误的产生 这样的情况在今天这样一个科技高速发 展 工作节奏加快的年代真是感觉太原始了 自从管理信息系统这一新兴的管理方法引入我国 在我国企业管理中已有 20 多年的时间 现在 管理信息系统已经广泛应用于各行各业 因此在这样 的前提下 我选择了 图书馆管理信息系统 这样一个较为普遍 同时又较为 典型的课题 在当今这样一个科技高速发展的社会里 仅有理论知识是显然不 行的 所以 我希望通过开发这个系统 能更好地把理论与实际结合起来 充 分将自己所学的专业知识应用于实践之中 并在实践中不断充实自己 提高自 己的专业技能水平 以获取更多的教益 1 1 2 课题的来源 本课题由学院和辅导老师提出 基于 Delphi 7 0 及 SQL Server 2000 数 据库平台开发图书馆管理信息系统 用于解决图书在馆内的信息变更 查询 以及读者借阅图书等问题 1 1 3 系统工具介绍 本系统的开发工具是用面向对象的 Delphi 进行设计的 Delphi 是由美国 Borland 公司推出的功能强大 使用灵活的快速应用开发工具 是面向对象领 域的开发工具中的佼佼者 它具有运行速度快 易于学习和使用以及开发效率 高等特点 是可视化的应用编程开发环境 可重用性面向对象语言 快速编译 器和数据库的完美结合 它在各个方面都具有优越性 提供了一系列开发 测 QQ 4 试和调试的先进工具 包括大量可以重复使用的 VCL 组件库 各种 Form 模板 其应用程序主要是围绕着窗体和单元两个部分进行 窗体 Form 是与用户直 接可见的对象 Delphi 的应用程序由多个窗体 Form 组成 与之相对应的 是单元 每个单元对应一个 Form 程序区段 包含事件处理程序 过程和函数 1 2 国内外发展概况 目前 国际上大多数发达国家的图书馆基本上实现了电脑管理 尤其是那 些较大型的图书馆还采用了大型数据库开发的软件 部分大型图书馆也使用 Foxpro SQL Server 等 而基于 Access 数据库的多数是中小型图书馆 但在 大多数不发达国家 基于 SQL Server 数据库的图书馆管理信息系统应用得很 广泛 而在中国 许多中小型图书馆用的还是手工图书管理 大多数图书馆对 计算机管理信息还没有一定的认识 而 SQL Server 数据库具有使用方便 学 习简单 易学易用的特点 所以基于 SQL Server 数据库在非发达国家有着很 广阔的发展前景 1 3 研究内容及须解决的关键问题 1 3 1 研究内容 课题研究的内容是关于图书馆管理信息系统的流通部子系统 是图书馆运 用计算机管理和实际运用的具体体现 可以让大量的图书信息得到合理的安排 该系统使用的是 Delphi 7 0 以 SQL Server 2000 数据库平台进行开发 1 3 2 需要解决的关键问题 用户需求分析 系统整体规划方案及设定 功能模块的划分及设定 利用 SQL select 实现数据的连接 实现最终系统代码的设计 QQ 5 2 图书馆管理信息系统解决方案 2 1 方案内容 我们可以用两层体系结构作为图书馆管理信息系统软件解决方案的核心 它的基本思想是将读者操作的界面同工作人员的操作界面分离 把信息系统按 功能划分为管理和维护 信息服务和信息查询三大块 分别放置在相同或不同 的硬件平台上 之后从需求出发构造数据库表 然后再由数据库表结合需求划 分系统功能模块 这样 就把一个大的系统分解成了几个小系统 系统划分了 子系统后 下一步的工作是继续划分子系统的小模块 先考虑在进入子系统时 应该做什么 进入系统之后又应该做什么 提供哪些服务等 例如 对于图书 信息服务子系统 在工作人员进入时首先得调用相关数据库表 找出该工作人 员的基本信息 进入系统后 子系统得提供图书查询 图书借阅和还书的功能 2 2 方案论证 2 2 1 方案的选择 两层客户机 服务器技术在结构 开发环境 应用平台的开发方式上已经 非常成熟 请求另一计算机为之服务的计算机称为客户机 Client 而处理 数据库的计算机称为服务器 Server 客户机 服务器是将处理工作分散到工 作站和服务器上去处理 服务器不仅负责存取数据 还要对数据作一定的处理 工作 这样在数据发送给工作站之前即取得查询结果集 从而在大部分情况下 可大大减少网络传输的开销 因此 也减轻了工作处理负担 用户只需关心界 面的处理工作即可 客户机 服务器系统的成功与否在很大程度上依赖于服务 器 用户越多 服务器的处理负担越重 相应服务器硬件性能也要跟得上 否 则就会导致影响时间比本地型数据库还要差的结果 客户机运行数据请求程序 并将这些请求传送到服务器 由客户机执行的 计算称为前端处理 前端处理具有所有与提供 操作和显示数据相关的功能 C S 1 数据库应用程序中客户端的主要功能 从用户接收数据 处理应用逻辑 生成数据库请求 向服务器发送数据库请求 从服务器接收结果并显示结果 在服务器上执行的计算称为后端处理 后端处理设备是一台管理数据资源 QQ 6 并执行数据库引擎功能 如存储 操作和保护数据 的计算机 C S 数据库应 用程序中服务器端的主要功能 从客户机接收数据库请求 处理数据库请求 传送结果给客户机 执行完整性检查 提供并行访问控制 事务处理失败后 执行事务恢复 优化查询和更新处理 2 2 2 方案的技术实现 在设计图书馆管理信息系统时 我们采用了传统的基于两层的 C S 结构来 构建系统 根据需求的分析结果 在此 C S 结构中 客户端有两种的操作用 户 工作人员和读者 Delphi 客户机 服务器结构原理 这里前端应用程序发送命令给基于服务 器数据库引擎 再由后者负责从物理磁盘上读取数据并加以处理 最后返回给 前端应用程序 服务器负责数据库处理工作 而工作站负责用户界面处理工作 读者查询信息及工作人员对系统的操作和维护 Delphi 客户机 服务器的前端应用程序实际上不直接与数据库引擎打交道 每个客户服务器提供一个数据库通信接口 该数据库通信接口运行于前端 这 些接口也称为数据库通信 API 等 数据库通信接口的工作流程如下 图 2 1 工作流程图 服务器数据库 命令数据 工作站的前端应用程序 数据库接口 数据库通信接口 服务器端数据库引擎 命令数据 QQ 7 Delphi 中的 BDE 提供了丰富和强壮的特性支持客户机 服务器应用的开发 它提供了支持多种数据库如 Oracle SQL Server 以及任何 ODBC 数据源的统 一和一致的应用程序编程接口 开发者可以不用修改数据库应用程序就能直接 访问不同的数据库站点和数据格式 3 系统总体设计 3 1 系统总体设计 对于图书馆主要负责提供的功能是指从图书的购入开始直到该图书过期下 架的整个流通过程 这其中包括图书入库 借出 归还以及对参与此流通过程 的读者的信息管理 1 新图书信息入库 建立图书信息库 以便读者进行查询和借阅 2 修改图书信息 在建立信息库时可能因操作错误或其它情况而造成 数据库里图书信息的错误 需要修改这些错误 3 整理图书库 图书因使用过久或信息过时需做下架处理 或者在读 者借阅书籍时发生遗失的情况下需做遗失处理 这些都需要修改数 据库关于书籍的信息 4 读者信息管理 读者一般都是在校的学生和教师 教师的信息一般 在建立档案后一般不需要修改 或修改量较小 而对于学生则会 有新生入学和老生毕业等情况出现 这些都需要修改数据库关于读 者的信息 5 借书 图书馆主要的功能就是提供书籍供读者借阅 在借阅图书时 应按图书馆的规则进行借阅 例如不超过 5 本 如果已有超时借阅 的图书 则在归还前不允许再借阅等等 6 还书 对于图书遗失或超期归还的情况应根据图书馆的规则进行处 罚 7 规则管理 对于读者借阅书籍的权限 可借阅书籍数目 每人每本 书可持有天数等 应该能按其类型加以分类 若有图书遗失或超期 未还的情况发生 图书馆都应该规定处罚的条例 另外对于操作此 系统的前端工作人员的权限也应该有一定限制 这些都应该只能由 系统管理员来进行操作和修改 8 信息查询 一般读者在借阅书籍前都需查询图书馆关于所借书籍的 大概信息 该图书是否在馆 是否已借出 在馆中的书架号 除查 询书籍外读者还可查询关于自身的信息 是否有超期未还的图书 还可借阅书籍数目等 QQ 8 3 2 系统总体功能图 图 3 1 总体功能图 3 3 数据库设计 3 3 1 数据库的选择 图书馆管理信息系统是一个小型的数据库系统 在这里我们选择 SQL Server 数据库进行开发 Microsoft SQL Server 是一种关系型数据库管理系 统 关系模型是当前最受欢迎的数据存储和数据检索模型 所有的数据处理都 涉及存储和检索数据的操作 Microsoft SQL Server 是作为一个组织内部的 全部数据的中心存储器来设计的 组织中数据的关键特征强调了这一方法的重 要性 在客户机 服务器框架内 服务器数据库也要求与服务器的通信组件集 成 以便和客户系统连接 Microsoft SQL Server 的客户机 服务器使用 Windows NT 的内置网络组件 Microsoft SQL Server 还在其网络组件的顶部 添加了服务特有的中介组件 开放式数据库连接 Open Database Connectivity ODBC 能使不同客户机进行相互连接 而不要求变更服务器及 其他现存客户应用程序 图书馆图书信息管理系统 图书信息 服务子系统 图书借阅 图书归还 图书管理和 维护子系统 信息查询 子系统 系统初始化 新书入库 图书整理 修改图书信息 规则维护 读者管理 书刊目录查询 读者借阅信息查 询 信息发布 新书通报 QQ 9 3 3 2 数据库设计数据库设计 表名属性说明 表 Book BookID BookName BookWriter BookPublic BookBorrowed Bo okPosition TypeID Publicdate BookPrice BookIntime Note 表 Book 主要存储 关于书籍的信息 主键 BookID 外键 TypeID 引用表 BookType 表 Reader ReaderID ReaderName ReaderSex DepartmentID JobID ClassID ReaderSum 表 Reader 主要存储 关于读者的信息 主键 ReaderID 外键 DepartmentID 引用表 Department JobID 引用表 Job ClassID 引用表 Class 表 Class ClassID ClassName BorrowSum Deadline 表 Class 主要存储 关于读者等级的信息 主键 ClassID 表 BookRule RuleID RuleName RuleContent 表 BookRule 主要存储 关于图书馆管理规则的信息 主键 RuleID 表 BorrowRecorder BookID ReaderID BookDate D eadline BookReturn PastTime P enalty Note 表 BorrowRecorder 主要存 储关于书籍借阅的信息 主键 BookID ReaderID 外 键 BookID 引用表 Book ReaderID 引用表 Reader 表 Worker WorkerID WorkerName WorkerSex WorkerRight Worker Password 表 Worker 主要存储 关于工作人员的信息 主键 WorkerID 表 PastBook BookID BookName BookWriter BookPublic OutDate Note 表 PastBook 主要存储 关于过期图书的信息 主键 BookID 外键 BookID 引用表 Book QQ 10 图 3 1 数据库表对象 3 3 4 数据库关系图 图 3 3 数据库关系图 QQ 11 4 图书馆管理信息系统的实现过程 4 1 系统结构 我们用两层体系结构作为图书馆管理信息系统软件解决方案的核心 把信 息系统按功能划分为管理和维护 信息服务和信息查询三大块 分别放置在相 同或不同的硬件平台上 并将系统的操作人员划分为三类 读者 工作人员 系统管理员 图 4 1 操作界面示意图 工作人员系统管理员 系统自由界面 用户登录 启动系统 读者 图书信息服务子系统图书管理和维护子系统 加密界面 密码正确吗 退出系统退出系统 查询子系统 退出系统 是 否 QQ 12 4 2 登录系统界面的设计 1 从列表框里选择用户 此列表框内的用户直接与数据库里工作人员的 表相关联 2 输入密码 判断该密码与工作人员表中定义的密码是否相符 3 如果不正确 提示输入正确的信息 4 如果正确 用户登录 并根据工作人员表中的用户权限设定其可操作 界面 5 对于用户的权限规定 权限为 1 的用户 系统管理员 拥有全部的权限 权限为 2 的用户 除不能修改图书馆的规则管理以外 拥有其他的 全部管理权限 相当于底层的工作人员 系统初始化 新书的入库 图书整理 修改图书信息 规则维护 用 户信息管理 查询图书借阅 图书借出 图书归还 权限为 3 的用户为前台的工作人员 他只能负责前台的工作 图书 借出 图书归还 4 3 信息服务子系统的设计 信息服务子系统包括借书和还书两大功能模块 对于读者借书是应考虑的情况有 1 该图书是否在馆 2 该读者是否有借阅此图书的权限 3 该读者所借图书数目是否已满其可借图书数目或该读者是否有超期 未还的图书 对于读者归还图书时应考虑的情况有 该图书是否超期 若有则应根据规则予以处罚 信息服务子系统的数据流图 图书基本情况表 读者基本情况表 读取图书编号 输入数据 查询图书信息 图书编号 显 示 不 可 借 信 息 可借 不可借 读取读者编号 输入数据 查询读者信息 读者编号 显 示 不 可 借 信 息 不可借 借出书籍 可借 修改图书信息 修改读者信息 图书编号 读者编号 QQ 13 图 4 2 借书的数据流图 图书借阅情况表 读者基本情况表 读取图书编号 输入数据 查询图书借阅信息 图书编号 是否超期 是 归还书籍 否 修改图书信息 修改读者信息 图书编号 读者编号 规则管理表处罚 图书基本情况表 QQ 14 图 4 5 还书的数据流图 4 4 管理和维护子系统的设计 1 新书入库 首先根据图书名称自动产生图书编号 由数据库内的过 程产生 2 修改图书信息 根据输入的图书编号将已经插入的图书信息在界面 上显示出来 然后由工作人员修改图书信息 将修改后的图书信息 再重新插入数据库 此时的图书编号不发生改变 3 用户信息管理 对于已毕业的学生应删除其在数据库中的记录 新 入学的学生应根据其学籍档案在读者基本信息表里为其建立信息记 录 4 规则管理 根据图书馆的最新规定增加或修改已存在的管理规则 5 整理图书库 a 图书遗失 首先根据读者编号查询该遗失图书的基本信息 再根 据管理规则对遗失该图书的读者进行处罚 之后对该图书的信息进行 整理 在遗失图书基本情况表里为其建立一条记录 并将其在其它表 里的相关记录信息予以删除 b 图书下架 首先根据图书编号查询图书的基本信息 查看该书是 否已借出 若已借出是否要进行下架的操作处理 对于下架的图书 首先应在过期图书基本情况表里为其建立一条记录 并将其在其它表 里的相关记录信息予以删除 图书借阅情况表 过期图书基本情况表 读取图书编号 输入数据 查询图书借阅信息 图书编号 是否已借出 是 出库操作 否 删除图书记录 插入操作 图书编号 是否继 续操作 图书基本情况表 是 退出 否 QQ 15 图 4 6 图书下架的数据流图 对于图书下架表单 在进行图书下架处理时 首先需要根据图书编号查询 该图书的基本信息 所以在表单的代码处理中 应有检验图书编号的函数来检 验数据库里是否存在该图书的编号 代码如下 function TfrmBookclear CheckExistid Code string boolean begin try qrydel SQL Clear then Result False else Result True except Result False end end 只有当函数 CheckExistid 值为 True 时才能进行对此图书的下架处理 在 对图书进行下架处理时 要将数据库表中除过期图书基本情况表外所有的表中 QQ 16 关于该图书信息的记录全部删除 删除记录的函数代码如下 procedure TfrmBookclear delete var sbookno sborrow string begin if rbtndel Checked true then begin if CheckExistid edtbookno Text False then begin MessageDlg 此号不存在 请重新输入 mtWarning mbok 0 edtbookno SetFocus edtbookno SelectAll exit end if bookborrowed edtbookno Text true 图书已借出 then begin if MessageBox 0 PChar 此书已借出 确实要删除吗 警告 MB YESNO IDYES then begin try booknodel edtbookno Text MessageBox 0 删除完成 PChar 删除 edtbookno Text MB OK except MessageDlg 删除失败 mtWarning mbok 0 end end else begin edtbookno SetFocus edtbookno SelectAll exit end end else QQ 17 begin try booknodel edtbookno Text then begin sbookno tbbook FieldValues BookID sborrow tbbook FieldValues BookBorrowed if sborrow 是 图书已借出 then begin if MessageBox 0 PChar 此书已借出 确实要删除 吗 警告 MB YESNO IDYES then begin try booknodel sbookno MessageBox 0 删除完成 PChar 删除 sbookno MB OK except MessageDlg 删除失败 mtWarning mbok 0 end end end else 图书未借出 begin try booknodel sbookno MessageBox 0 删除完成 PChar 删除 sbookno MB OK except MessageDlg 删除失败 mtWarning mbok 0 end end tbbook Refresh dbgbook Refresh end end QQ 18 5 开发过程遇到的问题及解决方法 1 关于字段为 datetime 型时产生的问题 在修改图书信息时 其中关于书籍的入库时间在数据库里定义为 datetime 型 当对书籍的信息进行修改后 若图书的入库时间为空时 则在插入数据时将产生错误 解决方法 当此字段为空时 将该书的入库时间默认为当前时间 2 对于有外键约束的表 在界面端用 SQL 语句向表中插入记录时 该外键 属性值必不能为空 且必须将插入记录的所有属性都在语句中列出 如 在图书遗失情况下 首先应向 LostBook 表中添加该图书的记录 但此 处因有外键约束 BookID ReaderID 则不能用语句 insert into LostBook values sno sreaderid sname swriter spublic sprice slost date srepay 3 图书遗失的表单中 首先需根据其读者编号查询该读者和书籍的信息 因此表单中的 Query 的 SQL 查询语句是预先已经定义好的 只是在运行 时对其参数进行一次赋值 读者编号 操作 但在几次的操作之后发现 当打开该表单后只能查询一次读者的信息 即使对其参数赋不同的值 但显示的结果都是第一次所赋读者编号的所有信息 解决方法 在表单里对 Query 的 SQL 语句先清空 然后重新写 SQL 语句 4 关于图书整理表单的统计页的问题 在此我定义了统计所有未按时归还的图书总数 其代码是 qrydel SQL Add select count BookID from BorrowRecorder where PastTime stim

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论