信息管理系统课设图书馆管理系统2.docx
- 文档编号:30391802
- 上传时间:2023-08-14
- 格式:DOCX
- 页数:19
- 大小:253.54KB
信息管理系统课设图书馆管理系统2.docx
《信息管理系统课设图书馆管理系统2.docx》由会员分享,可在线阅读,更多相关《信息管理系统课设图书馆管理系统2.docx(19页珍藏版)》请在冰豆网上搜索。
信息管理系统课设图书馆管理系统2
辽宁工业大学
《管理信息系统设计专题》报告
题目:
图书馆管理系统
院(系):
软件学院
专业班级:
软件技术081
学号:
081404025
学生姓名:
李继超
指导教师:
翟宝峰
教师职称:
副教授
起止时间:
2010.06.28-2010.07.09
设计任务及评语
院(系):
软件学院教研室:
软件教研室
学号
081404025
学生姓名
李继超
专业班级
软件技术081
设计题目
图书馆管理系统
设计任务
要求根据管理信息系统及数据库设计原理,按照系统设计的步骤和规范,完成各阶段的设计内容。
需求分析具体实际,数据流图、数据字典、关系模型要规范。
在sqlserver2000上实现数据库的模型建立(数据库、表的建立、完整性约束的实现、关系图、必要的存储过程及触发器的编程),并用VB实现简单的应用程序。
设计过程中,要严格遵守设计的时间安排,听从指导教师的指导。
正确地完成上述内容,规范完整地撰写出设计报告。
指导教师评语及成绩
成绩:
指导教师签字:
年月日
目录
第1章设计目的与要求1
1.1设计目的1
1.2设计环境1
1.3主要参考资料1
1.4设计内容及要求1
第2章设计内容2
2.1数据库设计2
2.1.1需求分析2
2.1.2概念设计5
2.1.3逻辑设计7
2.1.4物理设计7
2.1.5数据库实现8
2.2程序设计10
2.2.1概要设计10
2.2.2程序实现11
第3章设计总结13
参考文献14
第1章设计目的与要求
1.1设计目的
本设计专题是软件工程类专业的有关管理信息系统设计开发的一个重要环节,是本专业学生必须学习和掌握的综合实践课程。
本实践课的主要目的是:
(1)掌握运用管理系统及数据库原理知识进行系统分析和设计的方法;
(2)掌握关系数据库的设计方法;(3)掌握SQLServer2000技术应用;(4)掌握简单的数据库应用程序编写方法;(5)理解C/S模式结构。
1.2设计环境
本图书管理开发系统是在Penttum166mx以上机型计算机上进行开发并获得通过的,同时方便系统开发,减少开发过程的难度,我们基于以下软件环境:
以windowsxp为操作系统以visualbasic6.0为开发工具以SQLsever2000为后台数据库
1.3主要参考资料
1.《管理信息系统》黄梯云高等教育出版社
2.《数据库系统概论》萨师煊高等教育出版社
3.《SQLServer2000数据库应用系统开发技术》朱如龙编,机械工业出版社。
4.《SQLServer2000数据库应用系统开发技术实验指导》朱如龙编,机械工业出版社
1.4设计内容及要求
一、内容
1.要求根据管理信息系统及数据库设计原理,按照数据库系统设计的步骤和规范,完成各阶段的设计内容。
2.需求分析具体实际,数据流图、数据字典、关系模型要正确规范
3.在sqlserver2000上实现设计的数据库模型。
4.对应用程序进行概要设计。
5.用VB实现简单的应用程序编写。
二、要求
设计过程中,要严格遵守课程设计的时间安排,听从指导教师的指导。
正确地完成上述内容,规范完整地撰写出课程设计报告。
第2章设计内容
2.1数据库设计
2.1.1需求分析
图书管理系统需要满足来自三方面的需求,这三个方面分别是图书借阅者、图书馆工作人员和图书馆管理人员。
图书借阅者的需求是查询图书馆所存的图书、个人借阅情况及个人信息的修改;图书馆工作人员对图书借阅者的借阅及还书要求进行操作,同时形成借书或还书报表给借阅者查看确认;图书馆管理人员的功能最为复杂,包括对工作人员、图书借阅者、图书进行管理和维护,及系统状态的查看、维护
图书管理系统必须具备的功能:
1.新进图书的登记功能:
对于购进的新书,系统必须具备图书信息资料的录入功能。
2.图书的查询修改功能:
当图书资料发生变化,如图书丢失或有错误信息输入时,则应能够及时对数据进行修改和补充。
3.借阅的登记,归还的登记功能:
系统的主要功能之一,供本校学生借阅图书、归还图书,并进行登记。
4.学生信息的增加、删除和修改功能:
系统主要功能之一,建立学生信息,并对其进行维护。
经过对我校详细调查,并多次与负责图书管理的老师进行研讨后,加深了对现行图书管理业务的深刻了解,与此同时,将整个图书管理的业务流程抽象描述如下:
1.新的图书购进后,分门别类地进行归并并汇总,加以编号。
2.新书编号后,上到书架以备学生借阅。
3.如某学生需要借阅图书,则在其本人的借阅登记表上进行登记,记录相关借阅信息与借阅日期。
4.学生借阅图书后,应及时归还图书,并在本人的借阅登记表上注明还书日期和时间。
根据以上调查分析,可以给出其现行业务流程图如图2.1.1所示。
图2.1.1系统业务流程图
2.系统数据流程图:
数据流程图是描述系统数据流程的工具,它将数据独立抽象出来,通过图形方式描述信息的来龙去脉和实际流程。
图2.1.2系统数据流程图
依据数据库的原理,并结合以上E-R图,经过转化,即可进行数据库的物理设计。
基于以上数据库的逻辑设计,考虑程序设计的简易性,同时考虑题目的时间,该系统的数据项为:
数据项名称
数据项含义说明
别名
数据类型
长度
取值范围
图书编号
图书的类型和编号
无
整型
4
a000-x999
图书名称
图书的名称
无
字符型
100
中、外文
图书的数量
图书馆拥有图书数量
无
整型
4
a000-x999
书架数量
拥有书架数量
无
整型
4
a000-x999
图书缺损
是否有缺损
无
整型
4
1、0
学生编号
学生的编号号码
无
字符型
10
a000-x999
学生班级编号
学生班级编号号码
无
整型
4
a000-x999
学生姓名
学生姓名
无
字符型
100
中、外文
学生入学时间
学生入学时间
无
日期时间型
8
建立时间开始
所借图书价格
图书的标准价格
无
单精度浮点型
8
a000-x999
图书损坏记录
是否有损害图书的记录
无
整型
1
1、0
表2.1.1数据项定义
图书、借阅、归还等信息需要进一步描述,这就是需要定义数据字典,才能把现有的系统描述清楚。
图2.7列出了系统的主要数据字典。
2.1.2概念设计
在概念设计阶段中,设计人员从用户的角度看待数据及处理要求和约束,产生一个反映用户观点的概念模式。
然后再把概念模式转换成逻辑模式。
将概念设计从设计过程中独立开来,使各阶段的任务相对单一化,设计复杂程度大大降低,不受特定DBMS的限制。
利用ER方法进行数据库的概念设计,可分成三步进行:
首先设计局部ER模式,然后把各局部ER模式综合成一个全局模式,最后对全局ER模式进行优化,得到最终的模式,即概念模式。
下面给出概念结构设计得E-R图如图所示。
图2.1.3学生E-R图
图2.1.4图书E-R图
图2.1.5管理员E-R图
(1)分E-R图
图2.1.6概念结构设计E-R图
(2)总E-R图
实体:
图书(图书编号,书名,作者,出版社,定价,图书类别,图书ISBN号,图书数量)
学生(学生学号,学生姓名,性别,入校时间,毕业时间)
管理员(编号,名字,密码,加入时间)
联系:
学生管理(图书管理员,学生姓名,学生密码)
图书管理(图书管理员,借阅号,归还号)
查询(图书编号,借阅证号,图书管理员,学生)
2.1.3逻辑设计
由于概念设计的结果是ER图,DBMS一般采用关系型(本人所使用的MSSQLServer就是关系型的DBMS),因此数据库的逻辑设计过程就是把ER图转化为关系模式的过程。
由于关系模型所具有的优点,逻辑设计可以充分运用关系数据库规范化理论,使设计过程形式化地进行。
设计结果是一组关系模式的定义。
(1)导出初始关系模式
book(图书编号#,图书名称,图书类别#,作者,出版社,出版日期,备注,价格,数量)class(图书类别#,类别名)user(借书证号#,姓名,性别,身份编号#,身份证,联系电话,密码)ID(身份编号#,身份描述,最大借阅数)Owner(借书证号#,图书编号#,借书日期)
(2)产生子模式
子模式是用户所用到的那部分数据的描述。
除了指出用户用到的数据外,还应指出数据与概念模式中相应数据的联系,即指出概念模式与子模式之间的对应性。
借书子模式(借书证号#,姓名,图书编号#,图书名称,借书日期)
2.1.4物理设计
依据数据库的原理,并结合以上E-R图,经过转化,即可进行数据库的物理设计。
基于以上数据库的逻辑设计,考虑程序设计的简易性,同时考虑题目的时间,该系统的数据库的物理结构依赖于给定的计算机系统。
物理设计通常分为两步:
(1)确定数据库的物理结构,在关系数据库中主要指存取方法和存储结构;
(2)对物理结构进行评价,评价的重点是时间和空间效率。
存储结构是建立一种由逻辑结构到存储空间的映射。
存储结构是把一组结点存放在按地址相邻的存储单元里,结点间的逻辑关系用存储单元的自然顺序关系来表达的,即用一块存储区域存储线性数据结构,为使用整数编码访问数据结点提供了便利。
2.索引的创建
为BookInfo表创建一个以BookNo为索引的关键字的唯一聚簇索引
1)展开数据库中的表右键BookInfo表,单击所有任务弹出的索引管理。
2)在窗体点新建索引名称为BookInfo,点击复选框“聚簇索引”、“惟一值”。
3.事务日志文件备份及存放
在大型系统中,数据库的数据备份、日志文件备份等数据只在故障恢复时才使用,而且数据量很大,可以考虑放在磁带上。
对于拥有多个磁盘驱动器或磁盘阵列的系统,可以考虑将表和索引分别存放在不同的磁盘上,在查询时,由于两个磁盘驱动器分别工作,因而可以保证物理读写速度比较快。
将比较大的表分别存放在不同的磁盘上,可以加快存取的速度,特别是在多用户的环境下。
将日志文件和数据库对象(表、索引等)分别放在不同的磁盘可以改进系统的性能。
由于各个系统所能提供的对数据进行物理安排的手段、方法差异很大,因此设计人员应该在仔细了解给定的DBMS在这方面提供了什么方法、系统的实际应用环境的基础上进行物理安排。
4.存取方法:
现行的DBMS一般都提供了多种存取方法,其中,最常用的是索引法。
索引法是为了加速对表中的数据行的检索而创建的一种分散的存储结构。
是针对一个表而建立的,它能够以一列或多列的值为关键字,迅速查找/存取表中行数据加快了数据检索。
例如在本数据库中:
图书类型(类型编号、类型名称、图书数量、图书价格、是否有缺损、是否有掉页、是否有涂画。
)
学生(学生编号、学生班级编号、学生入学时间、学生所借书列表、曾有无损坏图书记录、学生当前状态。
)
整个系统需要调用图书类型表、学生表等,所以图书类型表属性“类型编号”,学生表中的属性“学生编号”,将经常出现在查询条件中,可以考虑在上面建立索引以提高效率。
2.1.5数据库实现
依据需求分析阶段得到的数据流图,采用软件工程中软件设计的概念和原理,与用户成分协商后,在保证系统基本功能要求的前提下,结合系统新的业务流程确定系统必须具备的所有功能,由此给出数据库实现是通过数据字段、关系图、触发器和存储过程实现等各部分的功能实现的。
1.图书信息表(tBook),其字段列表如表2.12所示。
序号
字段名称
字段说明
类型
位数
属性
备注
1
cBorrowID
借书编号
文本
6
必须非空
2
cVipID
学生编号
文本
6
必须非空
3
cBooksID
图书编号
文本
7
必须非空
4
cBorrwTime
借书时间
时间日期
可为空
5
cReturnTime
还书时间
时间日期
必须非空
6
cReturn
是否归还
文本
1
必须非空
7
cNoReturn
归还异常
文本
8
可为空
表2.1.2借书信息表的结构
2.存储过程
存储过程是一系列预先编辑好、能实现特定数据操作功能的SQL代码集,它与特定的数据库相关联,存在SQLServer服务器上。
任何一个设计良好的数据库应用程序都应创建一个名为tushu的,显示所有图书信息表的信息。
CREATEPROCEDUREtushu
AS
SELECTcBorrowID,cVipID,cBooksID,cBorrwTime,cReturnTime,cReturn,cNoReturnFROM借书信息表
在查询分析器中执行下列语句,可以完成存储过程定义功能。
Execproc_1
3.触发器程序及其功能:
为book建立INSERT触发器以自动更新图书信息表表证件号。
CREATETRIGGERBookNoONbook
FORINSERT
AS
DECLARE@BookNoTINYINT
SELECT@BookNo=c.BookNoFROMbookc,insertedi
WHEREc.BookNo=i.BookNo
IF(@BookNo>0)
BEGIN
UPDATEbookSETBookNo=BookNo+1
FROMbookc,insertedIWHEREc.BookNo=i.BookNo
END
ELSE
BEGIN
UPDATEbookSETBookNo=(
SELECTBookNoFROM图书信息表s,insertedi
WHEREs.BookNo=i.BookNo)
FROMbookc,insertediWHEREc.BookNo=i.BookNo
END
GO
4.以关系型为目标将E-R实体图中概念模型映射为关系模型,具体图书馆信息管理模型实现设计,如图所示:
图2.1.7系统关系图
2.2程序设计
2.2.1概要设计
依据需求分析阶段得到的数据流图,采用软件工程中软件设计的概念和原理,与用户成分协商后,在保证系统基本功能要求的前提下,结合系统新的业务流程确定系统必须具备的所有功能,由此给出图书管理系统的系统功能模块图.
图2.1.8图书管理系统功能模块图
2.1.9借阅归还管理模块
2.2.2程序实现
借书信息管理界面如图5.3所示。
图2.1.10图书信息管理界面
程序代码如下:
PrivateSubCmd_OK_Click()
'检查用户录入数据的有效性
IfLen(Trim(txtCardNo))=0Then
MsgBox"请输入借阅证号!
"
txtCardNo.SetFocus
txtCardNo.SelStart=0
txtCardNo.SelLength=Len(txtCardNo)
ExitSub
EndIf
IfLen(Trim(txtName))=0Then
MsgBox"请输入姓名"
txtName.SetFocus
txtName.SelStart=0
txtName.SelLength=Len(txtName)
ExitSub
EndIf
'把用户录入的数据赋值到数据库对象变量中
WithMyCards
.Cardno=MakeStr(txtCardNo)
.Workorg=MakeStr(txtWorkPlace)
.Name=MakeStr(txtName)
.TypeId=Val(dco_CardType.BoundText)
.Idcard=MakeStr(txtIdCard)
.CreateDate=MakeStr(txtCreateDate)
.Status=MakeStr(lbl_Status)
'根据变量Modify的值,决定是插入新数据,还是修改已有的数据
IfModify=FalseThen
'判断此借阅证号是否存在
If.In_DB(MakeStr(txtCardNo))=TrueThen
MsgBox("已经存在此借阅证号")
txtCardNo.SetFocus
ExitSub
EndIf
.Insert
Else
Call.Update(OriCardNo)
EndIf
EndWith
'关闭窗口
UnloadMe
EndSub
第3章设计总结
本次课题为图书馆管理系统,主要讲述了数据库操作。
在数据库操作方面仍然是利用sql为开发环境,以数据库中记录的增加、删除、修改和查询为主;。
本这次所设计的系统主要特点在于实现了模块化,及其数据库操作方法。
它能够实现读者在本系统的应用下可实现按照各种方式(如:
书名,编号,作者)查询图书馆的藏书请客,方便的借阅图书,续借图书,归还图书,能够查询自己的借阅图书情况。
图书馆工作人员能够实现方便的对图书进行查询,方便的进行读者借阅情况查询,方便的进行借书还书处理等,便捷的对图书信息进行添加、修改、删除,分类管理等操作,对读者信息进行相关添加,修改,分类管理等操作。
系统管理员可以对图书馆信息进行修改更新操作,对系统用户进行添加、修改、删除、权限设置等操作,对图书馆的办证参数进行修改维护等操作功能。
经过不断学习和设计开发,终于完成了我的设计题目“图书馆借阅管理系统”,在课设开始时我参阅了大量的材料,在整个系统的需求分析过程中对开发前期工作地流程步骤有了深入的掌握;在开发过程我进一步学习了Visualbasic的基础语法,和一些网页设计美工方面的知识,以便使系统有更好的美观性,在编写过程中也规范了许多编码习惯,数据库设计阶段我尝试了几个不同版本的数据库,它们在配置操作上各有不同,又各有优缺点,在它们的一些基本操作上也有了进一步提高。
在整个系统开发的过程中,我学到了很大新的知识,前学过的许多知识点在运用过程中也有了更为深入的分析,这是我大学期间做过的规模最大的项目,在这个过程中也体会到了如何将书本知识转化到实际的应用中。
通过这次设计的,能够加深我们对SQL知识和他所具有的功能的了解,并对使用Visualbasic6.0开发数据库应用程序的方法和技巧有了进一步的掌握。
参考文献
1.龚沛曾,陆蔚明,杨志强.《VisualBasic程序设计教程6.0版》.高等教育出版社
2.马力.《VisualBasic简明教程》.机械工业出版社
3.李存斌.《数据库应用技术SQLServer2000简明教程》.中国水利水电出版社
4.李俊民.《VisualC++管理信息系统完整项目实例剖析》.浙江民用信息出版社
5.江民生.《Delphi数据库开发实例解析》.北京出版社
6.萨师煊,王珊.《数据库系统概论》.高等教育出版社
7.王珊,陈红,文继荣.《数据库和数据库系统管理》.电子工业出版社
8.许强.《ACCESS2000数据库设计管理与应用》.国防工业出版社
9.王松.《VisualC++6.0程序设计与开发指南》.高等教育出版社
10.赵庾芸.《SQLServer2000培训教程》.人民邮电出版社
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 信息管理 系统 图书馆 管理
![提示](https://static.bdocx.com/images/bang_tan.gif)