图书馆借阅系统数据库设计
- 格式:doc
- 大小:132.50 KB
- 文档页数:11
《SQL Server数据库课程设计》题目:图书借阅管理系统的设计与实现院、系:计算机信息与技术系学科专业:软件工程学号: B10060XXX ___学生姓名: XXXX指导教师:XX2012年06月目录引言1第一章需求分析1一、功能需求1二、数据需求2第二章概要设计2一、系统设计目标2二、系统功能设计2三、开发工具的选择3第三章详细设计5一。
实体E—R图5二. 表的设计6三.界面设计7第四章软件实现21一、登录实现21二、图书管理21三、图书借阅21四、图书查询21五、图书增加21第五章软件测试21一、测试方案21二、测试项目21三、测试项目及测试内容21四、测试用例21五、评价22第六章课程设计总结24参考文献25引言随着社会的发展,人们对知识的需求也不断地增长。
在这种形势下,书籍就渐渐地成为人们获取并增长知识的主要途径,而图书馆就自然而然地在人们的生活中占据了一定的位置,如何科学地管理图书馆不但关系到读者求知的方便程度,也关系到图书馆的发展,因此,开发一套完善的图书馆管理系统就势在必行.图书馆在正常运营中总是面对大量的读者信息、书籍信息以及两者相互作用产生的借书信息、还书信息。
本软件针对图书馆的业务范围及工作特点,设计了图书查询、新增图书、图书借阅书以及图书归还等5个子系统,这5个子系统包括了图书馆的主要业务,可以全面实现对图书馆采购、编目、检索、统计和流通等业务的计算机管理,使图书馆管理水平和业务水平跃上一个新的台阶。
应用本系统可以在计算机上灵活、方便地管理图书,从而大大的提高了处理速率,使管理更加现代化。
本系统是根据实际情况和具体内容,按照一定的要求,科学、合理的进行系统分析、设计,具体包括画面设计、数据输入、查询、新增、删除等设计。
从而使本系统完全能满足经济性、灵活性、系统性及可靠性的要求。
本系统的实现的主要功能有:图书馆图书的查询、新书的入库、图书的借阅和归还等等功能,是一个基本可以满足借阅者和图书馆管理人员的需要的数据库。
1 需求分析1.1系统目标大学图书馆管理信息系统为广大大学师生提供了便利的图书借阅服务。
本系统面向全体教职职工与学生,该系统根据不同的操作者,提供不同的服务,以实现图书管理系统的科学化、系统化、自动化,最大限度地为老师和学生提供方便和提供管理效率。
1.2功能分析图书馆管理信息系统的功能模块如图1.1所示。
图1.1 图书馆管理信息系统功能模块(1)读者管理1)新增读者。
新增读者时要求填写其基本的信息,包括读者号、密码、读者姓名、性别、读者类型、单位、电子邮箱等。
2)读者信息维护。
读者可以对自己的信息进行修改,图书管理员有权限对已有读者的信息进行修改和删除。
3)借阅历史查看。
注册的读者可以在网上查询自己的图书借阅情况,一般读者只可以查阅到自己的借阅情况和图书的信息,而图书管理员可以查看任何读者的信息、借阅情况、任何图书的信息和借阅情况。
(2)书籍管理1)新增书籍。
图书管理员对新增的入库文献资料按规定进行编目、编录、加工、建库。
对每本图书、杂志要登记其基本信息,包括图书名称、图书作者、ISBN号、出版地、出版社、出版时间、字数、单价、内容简介、所属分类号,馆藏地、入库时间等。
2)书籍信息维护。
图书管理员可以对入库的书籍信息进行修改,或是删除该书籍信息,如采购书籍册数。
3)书籍类别管理。
新增书籍按照中图法分类规则进行分类。
(3)借阅管理1)书籍借阅管理。
图书管理员根据不同类型读者的借阅情况,对书籍进行管理。
(4)查看1)书籍信息查询。
登陆本系统的读者或是图书管理员可以查看现有图书系统中任何书籍的信息。
2)读者信息查询。
一般的读者只能查看自己在该系统上的信息,如借阅的书籍等,而图书管理员可以查看任何读者的信息情况。
3)借阅信息查询。
读者或是图书管理员可以查看每本书籍的在图书馆的状态,是借阅中还是在馆藏地等。
1.3数据需求及业务规则分析(1)图书馆为全校的学生和教职工提供图书借阅服务,学生分为高职生、本科生(含一本、二本、三本)、硕士研究生(含MBA)和博士研究生等多种层次。
图书借阅管理系统的设计1.需求分析图书信息、借阅证件信息及图书借阅管理是一件非常繁琐但又及其重要的工作,因此有必要开发一个数据库管理系统,用来管理这些信息。
这篇课程设计介绍的就是图书借阅信息管理系统。
系统的具体要求如下所述:(1)图书信息的录入:要求能够将图书信息录入到数据库中。
(2)图书信息的修改:根据需要,修改、删除图书信息。
(3)用户登陆:根据用户权限登陆此系统。
(4)系统用户管理:要求可以管理系统的用户,包括添加、修改和删除用户。
(5)借阅证件信息录入:可以输入不同类型的借阅者信息,并根据需要修改、删除借阅证件信息。
(6)借阅证管理:包括借阅证丢失、过期等管理。
(7)借阅管理:包括借书、还书、过期还书与书籍丢失处罚等管理。
2.数据库设计数据库设计主要在SQL Server服务器端建立数据库和数据表,并实现数据处理功能。
本文所设计的数据库中要记录读者的借书情况、图书被借阅的情况以及读者、图书的基本情况。
下面对图书借阅管理系统所需的数据结构进行分析并创建数据库。
2.1 概念结构设计现在对所设计系统的需求作进一步的分析,产生概念结构设计的E-R模型。
由于这个系统并不复杂,因此可采用自顶向下的设计方法。
自顶向下设计的关键是确定系统的核心活动。
所谓核心活动就是系统中的其他活动都要围绕这个活动展开,或与此活动密切相关。
确定了核心活动之后,系统就有了可扩展的余地。
对于这个图书借阅管理系统,其核心活动是借阅,读者与图书之间是通过借阅发生联系的。
因此,此系统包含的实体有:(1) 读者:用于描述一名读者的基本信息,用借书卡编号来标识。
(2) 图书:用于描述一本图书的基本信息,用图书编号来标识。
经过初步分析,可以得到此系统中各实体所包含的基本属性如下:读者:借阅证编号、读者姓名、工作单位、身份证号、借阅证类型、办证日期、证件状态。
图书:图书编号、图书名称、图书分类、作者、出版社、图书价格、图书封面由于一名读者可以同时借阅多本图书,而一本图书一次只能借给一名读者,因此读者和图书之间是一对多的联系。
辽宁工业大学管理信息系统设计课程设计报告(论文) 题目:图书馆借阅管理系统院(系):软件学院专业班级: 软件学院112班学号: 111301054学生姓名:安凯辰指导教师: 翟宝峰教师职称:副教授起止时间: 2012.5。
28—2012.6.8课程设计(论文)任务及评语目录第一章系统分析........................................... 错误!未定义书签。
1.1用户需求分析ﻩ错误!未定义书签。
1。
2功能分析.......................................... 错误!未定义书签。
1.3数据流程分析...................................... 错误!未定义书签。
1。
4业务流程图........................................ 错误!未定义书签。
1.5数据字典 (3)第二章系统设计ﻩ错误!未定义书签。
2。
1总体设计ﻩ错误!未定义书签。
2.2详细设计ﻩ错误!未定义书签。
2.3数据库设计ﻩ错误!未定义书签。
第三章系统实施ﻩ错误!未定义书签。
第四章设计总结ﻩ错误!未定义书签。
参考文献.................................................. 错误!未定义书签。
第一章系统分析1.1用户需求分析用户的需求可分为以下3方面:(1)图书馆工作人员通过计算机来管理各类图书,分类编号,调整图书结构,增加图书库存,适应读者的需求;(2)图书馆工作人员对读者的借书情况作好全面的掌握,及时得到每个读者的当前借阅状态和历史借阅记录;(3)读者能通过计算机查询浏览图书馆中的图书,确定自己需要的书籍,实施借阅. 1。
2功能分析本系统主要用图书馆借阅管理系统管理,采用面向对象的设计思想,以菜单和表单的形式进行各表单的调用,其系统功能分析是在系统开发的总体任务的基础上完成的.为了提高大家的时间和工作效率,节约运行费用而设计的。
图书管理系统数据库设计1. 引言图书管理系统是一个用于管理图书馆馆藏图书的软件系统。
它提供了图书的借阅、归还、查询等功能,方便读者进行图书借阅和图书馆管理员进行图书管理。
本文档将介绍图书管理系统的数据库设计。
通过组织图书、读者、借阅记录等相关数据,实现图书管理系统的各项功能。
2. 数据库设计2.1 数据库结构图书管理系统的数据库主要包含以下几个表:•图书表(books):存储图书的基本信息,如图书编号、名称、作者、出版社等。
•读者表(readers):存储读者的基本信息,如读者编号、姓名、性别、年龄等。
•借阅记录表(borrow_records):存储图书的借阅记录,包括借阅编号、借阅日期、归还日期、读者编号等。
2.2 数据库字段2.2.1 图书表(books)•book_id:图书编号,主键•book_name:图书名称•author:作者•publisher:出版社•publication_date:出版日期•price:价格2.2.2 读者表(readers)•reader_id:读者编号,主键•reader_name:读者姓名•gender:性别•age:年龄•phone:联系电话2.2.3 借阅记录表(borrow_records)•record_id:借阅记录编号,主键•book_id:借阅图书编号,外键•reader_id:借阅读者编号,外键•borrow_date:借阅日期•return_date:归还日期2.3 数据库关系•图书表与读者表之间是多对多的关系,通过借阅记录表进行关联。
•图书表与借阅记录表是一对多的关系,一个图书可以对应多条借阅记录。
•读者表与借阅记录表也是一对多的关系,一个读者可以借阅多本图书。
2.4 数据库约束•图书编号(book_id)在图书表中是唯一的,不能重复。
•读者编号(reader_id)在读者表中是唯一的,不能重复。
•借阅记录编号(record_id)在借阅记录表中是唯一的,不能重复。
图书馆借阅管理系统及业务管理知识设计一、借阅管理模块借阅管理模块是图书馆借阅业务的核心模块,主要包括借书、还书、图书续借、预约图书等功能。
读者在借阅时需要通过系统登录,并选择所要借阅的图书,系统会自动检查读者的借阅资格和图书的可借阅状态,如果满足借阅条件,则会自动生成借阅记录,并将相应的借阅信息更新到系统数据库。
读者在还书时需要将图书归还到指定的还书点,并通过系统进行归还操作,系统会自动更新借阅记录、图书状态和读者的借阅统计信息。
当读者需要续借图书时,只需登录系统并选择所要续借的图书,系统会自动检查图书的续借次数和续借期限,并生成相应的续借记录和新的借阅期限。
当某本图书被借出后,其他读者可以通过预约图书功能进行预约,系统将根据预约的先后顺序为读者保留图书,并通知读者借阅。
二、图书管理模块图书管理模块是图书馆借阅管理系统的重要模块,主要包括图书入库、图书维护、图书查询等功能。
在图书入库时,图书管理员需要录入图书的相关信息,如书名、作者、出版社、ISBN号等,并生成图书编号。
系统会自动将图书信息保存到数据库,并更新图书的库存数量。
对于现有的图书,图书管理员可以通过系统进行图书信息的维护,如修改图书信息、删除图书、查询图书当前的库存数量等。
读者可以通过系统查询图书的信息,如图书的位置、可借阅状态、馆藏数量等。
三、读者管理模块读者管理模块主要负责读者信息的管理,包括读者的注册、登录、密码找回、信息修改等功能。
读者在注册时需要填写个人基本信息,并选择登录账号和密码,系统会对读者的注册信息做校验和合法性验证,并将读者信息保存到数据库。
读者在登录系统后可以修改个人信息、查询借阅历史、查询预约记录等。
四、流通管理模块流通管理模块主要负责对图书馆的借还流程进行管理,包括借还书流程的自动化、借还书记录的统计和分析等功能。
系统可以自动记录读者的借阅和还书操作,并生成相应的借阅和还书记录,同时系统还能根据借阅记录进行统计和分析,提供借阅热门图书、借阅热门时间段等统计数据,以便图书馆进行决策和优化借阅服务。
读者借阅系统查询设计为了方便读者快速了解自己需要的图书是否在图书馆的馆藏之中,并且能够及时借阅到所需要的图书,图书馆需要在系统上建立一个查询系统。
下面,本文将介绍一个适合中小型图书馆的读者借阅系统查询设计。
一、系统的功能概述首先,系统需要能够查询所有书籍的信息和当前的借阅状态。
其次,还需要能够让读者查询自己的借阅情况,查看自己借阅的书籍信息、借阅时间、归还时间等具体信息。
此外,系统还应该提供预借和续借的功能,以便读者方便地操作。
二、系统的设计流程1. 设计数据库表格系统的设计首先需要建立数据库,建立有关书籍和读者的表格。
建议建立以下表格:(1)图书信息表:包括每本书的编号、书名、作者、出版社、出版时间、ISBN号、分类号、定价等信息。
(2)借阅记录表:包括每个读者所借书籍的编号、借阅时间、还书时间、剩余借阅次数等信息。
(3)读者信息表:包括每个读者的借书卡号、姓名、性别、专业、借阅权限等信息。
2. 实现系统的查询功能(1)所有书籍查询通过输入书名或者作者、出版社等关键词,系统能够自动匹配到对应的书籍列表,并显示每本书的具体信息,如题名、作者、出版社、分类号、在馆状态、可借阅天数等。
读者可以根据自己的需求,定位到自己需要的书籍。
读者登录系统后,能够查询自己借阅的所有书籍,包括书名、作者、借阅时间、应还时间、实际还书时间等信息。
此外,还需要显示剩余借阅次数。
(3)预借和续借系统提供预借和续借功能,读者可以在在线上完成此类操作。
预借功能能够让读者得到可以借阅但是当前被其他人借走的书籍的预定权力。
续借功能允许读者在借阅到期前,通过系统自动续借一定时间。
三、系统的技术实现1. 采用Web技术,实现系统的客户端/服务器体系结构,读者端访问系统的客户端,服务器端承担查询请求和存储查询结果。
2. 借用开源的数据库管理系统,并使用SQL语言实现数据查询操作。
借用流行的MVC 框架简化实现过程。
3. 实现系统的用户交互设计。
基于数据库设计的图书馆管理系统图书馆是现代学校和社会教育机构的一个重要部分,它的核心目标是为学生和公众提供良好的阅读环境、丰富的图书资源和良好的服务,以便扩展他们的知识、技能和想象力。
为了更好地实现这一目标,一个良好的图书馆管理系统是必需的,它能够协助馆员更好地管理馆藏、读者信息和资源利用情况,提高读者的满意度和馆藏的利用率。
在这篇文章中,我们将讲述一个基于数据库设计的图书馆管理系统的具体实现。
系统功能该系统提供了以下功能:1.图书管理:包括图书的入库、借出、归还、分配等功能,同时能够对图书进行分类、检索、统计等操作。
3.借阅管理:包括借阅信息的记录、到期提示、罚款管理等功能,同时还能够对图书馆的流通情况进行实时监控和统计。
4.财务管理:包括对图书馆经费的管理、收入和支出的记录、报表的生成等功能。
5.系统管理:包括用户权限设置、日志记录、备份和恢复等功能,以保障系统的可靠性和安全性。
数据库设计该系统的数据库设计如下:1.图书管理表图书ID、图书名称、图书作者、出版社、出版日期、价格、库存、状态等。
2.读者管理表读者ID、读者名称、性别、生日、电话、地址、借阅等。
3.借阅历史表借阅ID、读者ID、图书ID、借阅日期、到期日期、归还日期、罚款等。
4.图书分类表分类ID、分类名称等。
5.用户管理表用户名、密码、角色等。
6.权限管理表7.系统日志表日志ID、操作者、操作时间、操作内容等。
总结通过这个案例,我们得出了一个基于数据库设计的图书馆管理系统的具体实现,该系统能够协助馆员更好地管理馆藏、读者信息和资源利用情况,并提高了读者的满意度和馆藏的利用率。
不断完善和优化系统将有助于促进图书馆的信息化建设,实现更好的服务和质量。
图书馆管理信息系统数据库设计1 需求分析1.1系统目标大学图书馆管理信息系统为广大大学师生提供了便利的图书借阅服务。
本系统面向全体教职职工与学生,该系统根据不同的操作者,提供不同的服务,以实现图书管理系统的科学化、系统化、自动化,最大限度地为老师和学生提供方便和提供管理效率。
1.2功能分析图书馆管理信息系统的功能模块如图1.1所示。
图1.1 图书馆管理信息系统功能模块(1)读者管理1)新增读者。
新增读者时要求填写其基本的信息,包括读者号、密码、读者姓名、性别、读者类型、单位、电子邮箱等。
2)读者信息维护。
读者可以对自己的信息进行修改,图书管理员有权限对已有读者的信息进行修改和删除。
3)借阅历史查看。
注册的读者可以在网上查询自己的图书借阅情况,一般读者只可以查阅到自己的借阅情况和图书的信息,而图书管理员可以查看任何读者的信息、借阅情况、任何图书的信息和借阅情况。
(2)书籍管理1)新增书籍。
图书管理员对新增的入库文献资料按规定进行编目、编录、加工、建库。
对每本图书、杂志要登记其基本信息,包括图书名称、图书作者、ISBN号、出版地、出版社、出版时间、字数、单价、内容简介、所属分类号,馆藏地、入库时间等。
2)书籍信息维护。
图书管理员可以对入库的书籍信息进行修改,或是删除该书籍信息,如采购书籍册数。
3)书籍类别管理。
新增书籍按照中图法分类规则进行分类。
(3)借阅管理1)书籍借阅管理。
图书管理员根据不同类型读者的借阅情况,对书籍进行管理。
(4)查看1)书籍信息查询。
登陆本系统的读者或是图书管理员可以查看现有图书系统中任何书籍的信息。
2)读者信息查询。
一般的读者只能查看自己在该系统上的信息,如借阅的书籍等,而图书管理员可以查看任何读者的信息情况。
3)借阅信息查询。
读者或是图书管理员可以查看每本书籍的在图书馆的状态,是借阅中还是在馆藏地等。
1.3数据需求及业务规则分析(1)图书馆为全校的学生和教职工提供图书借阅服务,学生分为高职生、本科生(含一本、二本、三本)、硕士研究生(含MBA)和博士研究生等多种层次。
数据库系统原理课程设计——图书借阅管理系统数据库系统原理课程设计报告图书借阅管理系统第1章设计背景与需求分析1.1设计背景1.1.1 图书管理的现状图书馆作为⼀种资源的集散地,图书和⽤户在借阅资料繁多,包含很多的信息管理,现在有很多的图书馆都是初步的开始使⽤,甚⾄尚未使⽤计算机进⾏资源管理,没有建⽴相对应的图书管理数据系统,⽽是使⽤⼈⼯计算,抄写进⾏,数据处理⼯作量⼤,容易出错和数据丢失。
1.2.2 选题的⽬的、意义图书管理系统数据库有着⼿⼯管理⽆法⽐拟的优点,如检索迅速、查找⽅便、可靠性⾼、存储量⼤、保密性好,成本低等等。
这些优点能极⼤提⾼图书管理的效率,因此,开发⼀套能够为⽤户提供充⾜的信息和快捷的查询⼿段的图书管理系统是⼗分必要的。
1.2功能需求1.2.1读者信息的增加、修改、删除等基本操作1.读者类别信息的输⼊,包括图书类型、图书册数等2.读者档案信息的输⼊,包括读者编号、读者类型等1.2.2图书信息的增加、修改、删除等基本操作。
1.图书类别信息的输⼊,包括类别编号,类别名称等。
2.图书类别信息的查询,修改,包括类别编号,类别名称等。
3.图书档案信息的输⼊,包括图书编号,图书名称,图书类别,作者名称,出版社名称,出版⽇期,图书页数,关键词,登记⽇期,备注信息等。
1.2.3图书流通管理1.图书征订管理2.图书借阅管理3.图书归还管理4.图书罚款管理1.3系统开发环境1、系统:Windows XP,7,8,102、开发平台:SQL SERVER 2070, VISUAL BASIC6.01.4S Q L S E R V E R2017概述SQL SERVER2017是⼀个关系数据管理系统,是微软公司推出的新版本,该版本增加了许多先进的功能,具有⽅便使⽤,可伸缩性好与软件集成度⾼等的优点,可以运⾏在个⼈电脑到⼤型多处理器的服务器等多种平台使⽤。
第2章数据库概念结构设计2.1实体型结构2.2实体间的联系1.⼀个出版社对应多个图书,⼀个图书对应⼀个出版社,出版社和图书是⼀对多联系。
图书馆管理系统数据库设计1、系统简要分析1.1图书资料基本管理(1)、新书编号、登记、入库:将新购入的书籍按照国家统一的分类编号;登记书号、书名、作者、出版社等基本信息,将新购图书入库。
(2)、检索查询:按照各种组合条件对书库图书进行查询,也可以进行模糊查询。
(3)、图书资料统计:根据要求对图书总数、各类图书数以及图书单价合计统计,打印日常报表。
(4)、旧书出库处理:通过查询确定过期期刊杂志、旧书籍以及由于丢失等其他原因需要从书库中撤销的图书资料,并从书库中撤除。
1.2图书资料借阅管理(1)、借还书管理:主要负责日常的借书登记、还书登记,和逾期未还图书的催还工作。
(2)、检索查询:按照各种组合条件对图书借阅情况查询,也可以进行模糊查询。
(3)、借书统计:统计各类书借阅情况,借阅次数;统计个人借书情况,打印日常报表。
(4)、定期整理图书借阅信息:将还书情况总结整理后彻底删除。
此外,图书管理人员还要定期做整理图书资料的全部图书清单、分类印图书清单、借阅清单以及整理填写各种报表等工作。
2、业务流程分析2.1 借书业务流程2.2 新书购进入库业务流程2. 3 还书业务流程2.4 销书业务流程3、数据流程图符号说明:实体 处理逻辑 数据流 数据存储3. 1 系统的总数据流程图3.2 借书处理数据流程图3.3 还书处理数据流程图3.4 购书处理数据流程图4、数据字典4.1 数据项的描述数据项名:学号数据项含义说明:学生的唯一编号 别名:数据类型:字符型 长度:10 取值范围:‘0000000000’-‘9999999999’取值说明:第1位为校区代码,2-3位为入学年份,。
与其他数据项的关系表4-1 数据项的定义表4-2 数据流的描述表4-3 处理逻辑的描述表4-4 数据存储的描述表4-5 外部实体的描述4.1 数据流的描述数据流编号:D1数据流名称:借书单简述:借阅者所要借的图书信息单数据流来源:借阅者数据流去向:借书处理模块数据流组成:图书编号+书名+借阅证号等数据流量:200张/天高峰流量:400张/天数据流编号:D2数据流名称:图书简述:借阅者从图书馆所借的图书数据流来源:借书处理模块数据流去向:借阅者数据流组成:图书编号+图书名+条形码号+出版社+出版日期+入库日期+作者+单价等数据流量:300本/天高峰流量:500本/天数据流编号:D3数据流名称:图书简述:借阅者要准备归还给图书馆的图书数据流来源:借阅者数据流去向:还书处理模块数据流组成:图书编号+图书名+条形码号+出版社+出版日期+入库日期+作者+单价等数据流量:300本/天高峰流量:500本/天数据流编号:D4数据流名称:不合格借书单简述:经借书处理模块验证不合格的借书单数据流来源:借书处理模块数据流去向:借阅者数据流组成:图书编号+书名+借阅证号等数据流量:50张/天高峰流量:100张/天数据流编号:D5数据流名称:借书清单简述:经借书处理模块处理后的借书情况数据单数据流来源:借书处理模块数据流去向:图书库存情况存档数据流组成:图书编号+图书名+借阅日期+借阅证号+管理员编号等数据流量:200张/天高峰流量:400张/天数据流编号:D6数据流名称:还书清单简述:还书信息清单数据流来源:还书处理模块数据流去向:图书库存情况存档数据流组成:图书编号+图书名+借阅证号+还书日期+管理员编号等数据流量:150本/天高峰流量:400本/天数据流编号:D7数据流名称:订书单简述:订购新书的信息单数据流来源:采购员数据流去向:购书处理模块数据流组成:图书名+图书数量+价格+采购员姓名+采购单位名称+图书出版社+出版日期等数据流量:1张/3个月高峰流量:1张/月数据流编号:D8数据流名称:购书清单简述:购买图书后的信息单数据流来源:购书处理模块数据流去向:管理员数据流组成:图书名+图书数量+价格+采购员姓名+采购员编号+出版社+出版日期+供货商名称+采购日期等数据流量:1张/3个月高峰流量:1张/月数据流编号:D9数据流名称:入库新书清单简述:准备入库图书信息单数据流来源:管理员数据流去向:新书入库处理模块数据流组成:图书编号+图书名+数量+管理人员编号+入库日期等数据流量:1张/3个月高峰流量:1张/月数据流编号:D10数据流名称:入库清单简述:刚新入库图书的信息单数据流来源:新书入库处理模块数据流去向:图书库存情况存档数据流组成:图书编号+图书名+数量+管理人员编号+入库日期等数据流量:1张/3个月高峰流量:1张/月数据流编号:D11数据流名称:销书计划简述:准备从书库中撤除一部分图书的计划数据流来源:管理员数据流去向:销书处理模块数据流组成:图书编号+图书名称+入库日期+管理员编号+日期+数量等数据流量:1张/6个月高峰流量:1张/月数据流编号:D12数据流名称:销书清单简述:通过销书处理刚从书库中撤除的图书信息单数据流来源:销书处理模块数据流去向:图书库存情况存档数据流组成:图书编号+图书名称+入库日期+管理员编号+出库日期+数量+总价等数据流量:1张/6个月高峰流量:1张/月数据流编号:D13数据流名称:借书单简述:借阅者所要借书的信息单数据流来源:借阅者数据流去向:审核处理模块数据流组成:图书编号+图书名+借阅证号等数据流量:200张/天高峰流量:400张/天数据流编号:D14数据流名称:不合格借书单简述:经审核处理模块处理后,不合格的借书单数据流来源:审核处理模块数据流去向:借阅者数据流组成:图书编号+图书名+借阅证号等数据流量:50张/天高峰流量:100张/天数据流编号:D15数据流名称:合格的借书单简述:经审核处理后符合规定的借书单数据流来源:审核处理模块数据流去向:书借出处理模块数据流组成:图书编号+图书名+借阅证号等数据流量:200张/天高峰流量:400张/天数据流编号:D16数据流名称:借书清单简述:图书馆所借出图书信息单数据流来源:图书借出处理模块数据流去向:图书库存情况存档数据流组成:图书编号+图书名+借阅证号+管理员编号+日期等数据流量:200张/天高峰流量:400张/天数据流编号:D17数据流名称:借书清单简述:图书馆所借出图书信息单数据流来源:图书借出处理模块数据流去向:借阅者借阅情况存档数据流组成:图书编号+图书名+借阅证号+管理员编号+日期等数据流量:200张/天高峰流量:200张/天数据流编号:D18数据流名称:图书简述:借阅者从图书馆借出的图书数据流来源:图书借出处理模块数据流去向:借阅者数据流组成:图书编号+图书名+条形码号+出版社+出版日期+入库日期+作者+单价等数据流量:300本/天高峰流量:500本/天数据流编号:D19数据流名称:图书简述:借阅者准备归还给图书馆的图书数据流来源:借阅者数据流去向:审核处理模块数据流组成:图书编号+图书名+条形码号+出版社+出版日期+入库日期+作者+单价等数据流量:150本/天高峰流量:400本/天数据流编号:D20数据流名称:罚款通知单简述:审核处理后,发现借阅超期或损坏要求罚款的通知单数据流来源:审核处理模块数据流去向:罚款处理模块数据流组成:借阅证号+管理员编号+金额+日期数据流量:20张/月高峰流量:50张/月数据流编号:D21数据流名称:罚款单简述:对借阅者进行罚款的信息单数据流来源:罚款处理模块数据流去向:借阅者数据流组成:借阅证号+管理员编号+金额+日期数据流量:20张/月高峰流量:50张/月数据流编号:D22数据流名称:应付罚款简述:借阅者因借书超期或损坏图书应该作的赔偿数据流来源:借阅者数据流去向:罚款处理模块数据流组成:金额数据流量:40元/月高峰流量:100元/月数据流编号:D23数据流名称:图书简述:罚款处理后准备入库的图书数据流来源:罚款处理模块数据流去向:图书入库处理模块数据流组成:图书编号+图书名+条形码号+出版社+出版日期+入库日期+作者+单价等数据流量:20本/月高峰流量:50本/月数据流编号:D24数据流名称:图书简述:审核处理后合格的图书数据流来源:审核处理模块数据流去向:图书入库处理模块数据流组成:图书编号+图书名+条形码号+出版社+出版日期+入库日期+作者+单价等数据流量:150本/天高峰流量:400本/天数据流编号:D25数据流名称:还书清单简述:所还图书进行入库信息单数据流来源:图书入库处理模块数据流去向:图书库存情况存档数据流组成:图书编号+图书名+管理员编号+日期等数据流量:150本/天高峰流量:400本/天数据流编号:D26数据流名称:还书清单简述:所还图书进行入库信息单数据流来源:图书入库处理模块数据流去向:借阅者借阅情况存档数据流组成:图书编号+图书名+管理员编号+日期等数据流量:150本/天高峰流量:400本/天数据流编号:D27数据流名称:订书单简述:购买图书计划单数据流来源:采购员数据流去向:判定定货处理模块数据流组成:图书名+图书数量+价格+采购员姓名+采购单位名称+图书出版社+出版日期等数据流量:1张/3个月高峰流量:1张/月数据流编号:D28数据流名称:订书单简述:购买图书计划单数据流来源:判定定货处理模块数据流去向:开付款通知单数据流组成:图书名+图书数量+价格+采购员姓名+采购单位名称+图书出版社+出版日期等数据流量:1张/3个月高峰流量:1张/月数据流编号:D29数据流名称:付款通知单简述:通知采购方支付货款的信息单数据流来源:开付款通知单数据流去向:采购员数据流组成:货物编号+数量+价格+总金额+供货商编号+供货商名+日期数据流量:1张/3个月高峰流量:1张/月数据流编号:D30数据流名称:订书单简述:购买图书计划单数据流来源:判定订货处理模块数据流去向:开发货票模块数据流组成:图书名+图书数量+价格+采购员姓名+采购单位名称+图书出版社+出版日期等数据流量:1张/3个月高峰流量:1张/月数据流编号:D31数据流名称:订书单简述:购买图书计划单数据流来源:开发货票模块数据流去向:仓库数据流组成:图书名+图书数量+价格+采购员姓名+采购单位名称+图书出版社+出版日期等数据流量:1张/3个月高峰流量:1张月数据流编号:D32数据流名称:发货单简述:通知采购方供货单位开始发货的信息单数据流来源:仓库数据流去向:采购员数据流组成:货物编号+数量+价格+总金额+供货商编号+供货商名+发货日期+采购员编号+采购员姓名等数据流量:1张/3个月高峰流量:1张/月4.2 处理逻辑的描述处理逻辑编号:P1处理逻辑名称:借书处理简述:处理借阅者借书问题输入的数据流:借书单处理描述:根据借书单信息以及借阅者借阅情况的核查,符合规定则查看书库是否有所要借的图书,如有就借给,没有就退借书单;如核查不合格就直接退借书单输出的数据流:借书清单、图书、不合格借书单处理频率:200次/天处理逻辑编号:P2处理逻辑名称:还书处理简述:处理借阅者还书问题输入的数据流:图书处理描述:根据所还书信息,核查是否借阅超期或有图书损坏,如有则进行罚款处理,之后再进行还书销借书记录处理;如核查没问题,就直接进行消除借书记录处理。
目录1 绪论 (2)2图书馆借阅信息管理系统 (2)2.1目的 (2)2.2图书馆借阅管理系统的任务 (2)2.3图书馆借阅管理系统的作用 (3)3 图书馆借阅信息管理系统需求分析 (3)3.1确定用户 (3)3.2模块 (3)3.3E—R图分析 (4)4 实例制作介绍 (5)4.1创建空数据库 (5)4.2创建所需表 (5)4.2.1 创建图书表 (5)4.2.2 创建“读者表” (8)4.2.3 创建“图书类别表” (8)4.2.4 创建“借阅表” (9)4.2.5 创建“记忆坊出版社表” (10)4.3建立表之间的关系 (11)4.4创建查询 (12)4.4.1 创建“还书”查询 (12)4.4.2 创建“读者累计借书册数”查询 (14)4.4.3 创建“按出版社查询图书”查询 (15)4.5创建窗体 (16)4.5.1 创建“读者借阅记录”窗体 (16)4.5.2 创建“查看图书记录”窗体 (18)4.5.3 创建“选择图书名称”窗体 (19)总结 (21)致谢 (22)1 绪论在数据库应用系统开发之前,对开发数据库的基本概念应当了解,对数据库的结构、开发数据库应用程序的步骤、开发体系及方法都应当有相当清晰的了解和认识。
数据库应用系统开发的目标是建立一个满足用户长期需求的产品。
开发的主要过程为:理解用户的需求,然后,把它们转变为有效的数据库设计。
把设计转变为实际的数据库,并且这些数据库带有功能完备、高效能的应用。
数据库技术在计算机软件邻域研究中一直是非常重要的主题,产生于60年代,30多年来数据库技术得到了迅速发展,并已形成较为完整的理论体系和一大批实用系统。
并且,近年来,随着World Wide Web(WWW)的猛增及Internet技术的迅速发展,使得数据库技术之时成为最热门技术之一。
2图书馆借阅信息管理系统2.1 目的结合图书馆的实际情况,通过使用Microsoft access200为开发环境,以此来满足图书馆工作人员对图书的管理,包括借阅者的借书情况和罚款情况,并使节约者能方便快捷的查找自己所需要的图书信息。
智慧图书馆系统数据库设计设计方案智慧图书馆系统数据库设计方案主要包括以下几个方面的设计:图书馆信息管理、图书信息管理、借阅管理、读者信息管理和日志管理。
1. 图书馆信息管理:- 设计图书馆信息表,包括图书馆名称、地址、联系方式等字段。
- 图书馆管理员信息表,包括管理员姓名、联系方式等字段。
2. 图书信息管理:- 设计图书信息表,包括图书编号、图书名称、图书类别、图书作者、出版社、图书数量等字段。
- 图书类别表,包括图书类别编号、图书类别名称等字段。
- 图书作者表,包括作者编号、作者姓名等字段。
- 出版社表,包括出版社编号、出版社名称等字段。
3. 借阅管理:- 设计借阅记录表,包括借阅编号、读者编号、图书编号、借阅日期、归还日期等字段。
- 读者表,包括读者编号、读者姓名、联系方式等字段。
- 设计逾期记录表,包括记录编号、借阅编号、逾期天数等字段。
4. 读者信息管理:- 设计读者信息表,包括读者编号、读者姓名、读者性别、联系方式等字段。
5. 日志管理:- 设计操作日志表,包括日志编号、操作人员、操作时间、操作内容等字段。
以上是智慧图书馆系统数据库设计的基本方案,下面详细说明几个表的字段设计:1. 图书信息表(book_info):- book_id: 图书编号(主键)- book_name: 图书名称- category_id: 图书类别编号(外键)- author_id: 作者编号(外键)- publisher_id: 出版社编号(外键)- quantity: 图书数量2. 图书类别表(category):- category_id: 图书类别编号(主键)- category_name: 图书类别名称3. 图书作者表(author):- author_id: 作者编号(主键)- author_name: 作者姓名4. 出版社表(publisher):- publisher_id: 出版社编号(主键)- publisher_name: 出版社名称5. 借阅记录表(borrow_record):- record_id: 借阅编号(主键)- reader_id: 读者编号(外键)- book_id: 图书编号(外键)- borrow_date: 借阅日期- return_date: 归还日期6. 读者信息表(reader_info):- reader_id: 读者编号(主键)- reader_name: 读者姓名- gender: 读者性别- contact_number: 联系方式7. 操作日志表(operation_log):- log_id: 日志编号(主键)- operator: 操作人员- operate_time: 操作时间- operate_content: 操作内容通过以上的数据库设计方案,可以实现智慧图书馆系统的基本功能,包括图书馆信息管理、图书信息管理、借阅管理、读者信息管理和日志管理。
航空大学实验报告二016 年3 月28 日课程名称:数据库原理实验名称:图书馆借阅系统班级:14207218 :胡合达同组人:指导教师评定:签名:一、实验环境1.Windows2000或以上版本;2.SQLServer 2005。
二、实验目的了解并掌握数据库设计基本方法三.系统需求分析1.设计本系统模拟学生在图书馆借阅图书的容,能够实现以下功能:借阅信息的查询功能;图书信息的多关键字检索查询;图书的出借、返还及超期罚款;2.能够提供一定的安全机制,提供数据信息授权访问,防止随意删改、查询。
3.对查询、统计的结果能够列表显示。
4.处理对象:学生,馆藏图书信息,借阅信息,罚款信息,借阅历史5.安全性要求系统安全性要求体现在数据库安全性、信息安全性和系统平台的安全性等方面。
安全性先通过视图机制,不同的用户只能访问系统授权的视图,这样可提供系统数据一定程度上的安全性,再通过分配权限、设置权限级别来区别对待不同操作者对数据库的操作来提高数据库的安全性;系统平台的安全性体现在操作系统的安全性、计算机系统的安全性和网络体系的安全性等方面。
6.完整性要求系统完整性要求系统中数据的正确性以及相容性。
可通过建立主、外键,使用check约束,或者通过使用触发器和级联更新。
四.概念结构设计系统开发的总体目标是实现图书馆管理的系统化和自动化,缩短借阅者的等待时间,减轻工作人员的工作量,方便工作人员对它的操作,提高管理的质量和水平,做到高效、智能化管理,从而达到提高图书管理效率的目的。
概念设计阶段主要是将需求分析阶段得到的用户需求抽象为信息结构(概念模型)的过程,它是整个数据库设计的关键。
图书借阅系统的E-R图E-R图各实体的属性如下所示:图书:Book(BookID, BookNo, BookName, BookWriter, BookPublish,, BookDate,BookClass,BookState,BookRNo)读者:Reader(ReaID,ReaName,ReaSex,ReaNo,ReaLBID, ReaDep, ReaGrade, ReaPref, ReaDate,Reasx)管理员:Maneger (MID,MName,MSex)馆室:Room(RoomNo,RoomMID,RoomNum,RoomAddre)借阅信息:Borrow(BookID,ReaderID,BookName,BookWriter, Outdate,YHdate)借阅历史:History(BookID,ReaderID,BookName,BookWriter, Outdate,Indate,YHdate)罚款信息:Fine (BookID,ReaderID,BookName,Outdate,Indate,Fine, CLState,MID)五.逻辑结构设计以上的概念设计阶段是独立于任何一种数据模型的,但是逻辑设计阶段就与选用的DBMS产品发生关系了,系统逻辑设计的任务就是将概念设计阶段设计好的基本E-R图转换为选用DBMS产品所支持的数据模型相符合的逻辑结构。
具体容包括数据组织(将E-R图转换成关系模型、模型优化、数据库模式定义、用户子模式设计)、数据处理(画出系统功能模块图)两大任务。
将图书借阅E-R图转换为关系模型图书列名数据类型可否为空说明BookID Char not null 图书编号BookNo Char not null 图书的索书号BookName Char not null 图书的书名BookWriter Char not null 图书作者BookPulish Char not null 图书Booknum Smallint Not null 图书数量BookDate Date 出版日期BookClass Char 图书的分类Booknums smallint Not null 图书可借数量BookState Char not null 图书是否可借BookRNo Char not null 图书所在馆室号读者列名数据类型可否为空说明ReaID Char not null 读者编号ReaName Char not null 读者ReaSex Char not null 读者性别ReaNo Char not null 读者学号ReaDep Char 读者所在学院ReaPref Char 读者所属专业ReaGrade Char 读者的年级ReaDate Date not null 办证日期ReaBs Smallint Not null 已借本数Reastate Char Not nnll 借书状态Reasx Smallint Not null 借书上限管理员列名数据类型可否为空说明MID主键Char not null 管理员编号MName Char not null 管理员MSex Char 管理员性别馆室列名数据类型可否为空说明RoomNo Char not null 馆室号RoomMID Char not null 馆室管理员编号Roomnum Char not null 馆室拥有图书数目RoomAddre Char 馆室地址RoomType,Char 馆室类型借阅信息列名数据类型可否为空说明ReaID Char not null 读者编号BookID Char not null 图书编号BookName Char not null 图书名BookWriter Char 作者Outdate Date not null 借阅时间Indate Date 归还时间YHdate Date not null 应还时间Fine Char Not null 罚款金额CLState Char 处理状态MID Char not null 管理员编号六.数据库的实施创建数据库及表格管理员基本信息表的建立:create table Maneger(MID char(10) primary key,MName char(10) not null,MSex char(2),check(MSex ='男' or MSex ='女'))图书馆室基本信息表的建立:create table Room(RoomNo char(5) primary key,RoomMID char(10) not null,Roomnum char(5) not null ,RoomAddre char(20),RoomType char (10),foreign key(RoomMID) references Maneger(MID)on delete cascade on update cascade , )馆藏图书基本信息表的建立:create table Book(BookID char(9) primary key,BookNo char(20) not null,BookName char(50) not null,BookWriter char(30) not null,BookPublish char(20) not null,Booknum smallint check (Booknum>=0),BookDate datetime,BookClass char(20),Booknums smallint check (Booknum>=0),BookState char(10) default ‘可借’not null,BookRNo char(5) not null,check (Booknum>Booknums ),foreign key(BookRNo) references Room(RoomNo)on delete cascade on update cascade , )读者基本信息表的建立:create table Reader(ReaID char(9) primary key,ReaName char(10) not null,ReaSex char(2) not null,ReaNo char(9) not null,Reasx smallint not null,ReaBs smallint not null,ReaDep char(20),ReaGrade char(5),ReaPref char(20),ReaDate Datetime,Reastate char (5) not null default ‘可借’ ,foreign key(ReaLBID) references ReaderType(LBID)on delete cascade on update cascade , check(ReaSex ='男' or ReaSex ='女'))(6)借阅基本信息表的建立:create table Borrow(BookID char(9),ReaID char(9),Outdate Datetime not null,YHdate Datetime not null,Indate Datetime,Fine char(5) not null default ‘0’,CLState char(8),MID char(10) not null,primary key(BookID,ReaID),foreign key(MID) references Maneger(MID)on delete cascade on update cascade)建立视图(1)用于查询图书基本信息的视图定义如下:create view Bookview (索书号, 书名, 作者, , 图书状态)asselect BookNo,BookName,BookWriter,BookPublish,BookStatefrom Book(2)用于读者基本信息查询的视图定义如下:create view Readerview (读者,类型,学院,专业,办证日期)asselect ReaName,ReaType,ReaDep,ReaPref,ReaDatefrom Reader(3)用于显示当前借阅基本信息的视图定义如下:create view Borrowview (读者编号,书名,作者,借阅日期,到期日期)asselect ReaID,BookName,BookWriter,Outdate,YHdatefrom Borrow,Bookwhere Borrow.BookID=Book.BookID and Borrow.Indate is null (4)用于借阅历史信息查询的视图定义如下:create view Historyview (读者编号,书名,借阅日期,归还日期)asselect ReaID,BookName,Outdate,Indatefrom Borrow,Bookwhere Borrow.BookID=Book.BookID and Borrow.Indate is not null (5)用于查询罚款信息的视图定义如下:create view Fineview (读者编号,书名,借阅日期,归还日期,罚款,处理状态)asselect ReaID,BookName,Outdate,Indate,Fine,CLStatefrom Borrow,Bookwhere Borrow.BookID=Book.BookID and Fine is not null建立索引create clustered index BookPublish on Book(BookPublish);create clustered index ReaDep on Reader(ReaDep);建立触发器当在中增加一条借阅记录时,书的可借数量减少一本,修改读者,并检查读者状态create trigger Borrow_insert1on Borrowfor insertasdeclare BookID char(9)declare ReaID char(9)select ReaID=ReaIDfrom insertedselect BookID=BookIDfrom insertedSelect Reastate =ReastateFrom ReaderWhere ReaID =ReaIdIf(Reastate =’不可借’)BeginRaiserror (‘该学生状态不可借书’,16,1)Rollback transactionEndupdate Bookset Booknums=Booknums-1where BookID=BookIDupdate Readerset ReaBs=ReaBs+1where ReaID =ReaID当读者达到借书上限,设置借书状态为‘不可借’create trigger Reader _updateon Readerfor updateasdeclare ReaBs smallintselect ReaBs =ReaBsfrom inserteddeclare ReaID char(9)select ReaID=ReaIDfrom insertedSelect Reasx =ReasxFrom Readerwhere BookID=BookIDIf(Reasx =ReaBs )Beginupdate Readerset Reastate =’不可借’where ReaID =ReaIDEnd还书的时候,书的可借数量增加一本,修改读者状态create trigger Borrow_inserton Borrowfor insertasdeclare BookID char(9)declare ReaID char(9)select ReaID=ReaIDfrom insertedselect BookID=BookIDfrom insertedSelect Reastate =ReastateFrom ReaderWhere ReaID =ReaIdIf(Reastate =’超期’)BeginRaiserror (‘该学生状态借书超期’,16,1)Rollback transactionEndupdate Bookset Booknums=Booknums+1where BookID=BookIDupdate Readerset ReaBs=ReaBs-1where ReaID =ReaID存储过程1.Book_Insert的定义:CREATE PROCEDURE Book_InsertBookID char(9) ,BookNo char(20),BookName char(50),BookWriter char(30),BookPublish char(20),BookDate datetime,BookClass char(20),Booknums smallint,Booknum smallint,BookState char(10),BookRNo char(5)asinsert into Bookvalues(BookID ,BookNo,BookName,BookWriter ,BookPublish ,BookDate,Bo okClass ,BookState ,BookRNo,Booknums,Booknum);2.Reader_Insert的定义:CREATE PROCEDURE Reader_InsertReaID char(9),ReaName char(10),ReaSex char(2),ReaNo char(9),ReaDep char(20),ReaGrade char(5),ReaPref char(20),ReaDate DatetimeReaBs smallint,Reastate char(5),Reasx smallint,asinsert into Readervalues( ReaID , ReaName, ReaSex,ReaNo ,ReaDep ,ReaGrade ,ReaPref ,ReaDate,ReaBs,Reastate,Reasx ;3.Maneger_Insert的定义:CREATE PROCEDURE Maneger_InsertMID char(10) ,MName char(10),MSex char(2),asinsert into Manegeralues(MID , MName ,MSex );4.Borrow_Insert的定义:CREATE PROCEDURE Borrow_InsertBookID char(9),ReaID char(9),Outdate Datetime ,YHdate Datetime ,Indate Datetime,Fine char(5),CLState char(8),MID char(10)asinsert into Borrowvalues(BookID ,ReaID ,Outdate ,YHdate ,Indate ,Fine ,CLState ,MID );5.Query_Reader_R的定义:create procedure Query_Reader_RReaID char(9)asselect *from Readerviewwhere 编号= ltrim(ReaID);6. Query_Reader_M的定义:create procedure Query_Reader_Masselect *from Readerview7. Query_Book_Writer的定义:`create procedure Query_Book_WriterBookWriter char(50)asselect *from Bookviewwhere 作者like '%'+ltrim(BookWriter)+'%';8. Query_Book_Name_Publish的定义:create procedure Query_Book_Name_PublishBookName char(50),BookPublish char(20)asselect *from Bookviewwhere 书名=ltrim(BookName) and =ltrim(BookPublish);9. Delete_Reader的定义:create procedure Delete_ReaderReaNo char(9)asdeletefrom Readerwhere ReaNo = ltrim(ReaNo);10. Delete_Book的定义:create procedure Delete_BookBookID char(9)asdeletefrom Bookwhere BookID= ltrim(BookID);七.实验小结这次实验使我熟悉了如何独立的建立一个系统,通过自己所学的知识,综合运用,并了解自己的不足之处。