图书管理系统.docx

上传人:b****5 文档编号:8642483 上传时间:2023-02-01 格式:DOCX 页数:31 大小:216.07KB
下载 相关 举报
图书管理系统.docx_第1页
第1页 / 共31页
图书管理系统.docx_第2页
第2页 / 共31页
图书管理系统.docx_第3页
第3页 / 共31页
图书管理系统.docx_第4页
第4页 / 共31页
图书管理系统.docx_第5页
第5页 / 共31页
点击查看更多>>
下载资源
资源描述

图书管理系统.docx

《图书管理系统.docx》由会员分享,可在线阅读,更多相关《图书管理系统.docx(31页珍藏版)》请在冰豆网上搜索。

图书管理系统.docx

图书管理系统

目录

第一章综述…………………………………………………………………………2

1.1图书馆管理系统开发背景2

1.2图书馆管理系统的目的和意义3

第二章系统分析设计4

2.1系统功能分析4

2.2系统功能模块设计4

第三章数据库分析与设计6

3.1数据库需求分析6

3.2数据库概念结构设计6

3.3数据库逻辑结构设计8

3.3.1书籍信息表8

3.3.2读者信息表9

3.3.3借阅信息表9

3.3.4读者类别表9

3.3.5用户表9

3.4读者借书过程的数据流图和数据词典10

3.4.1数据流图10

3.4.2数据词典10

3.5读者还书过程的数据流图和数据词典13

3.5.1数据流图13

3.5.2数据词典14

第四章系统详细设计与实现16

4.1图书馆管理信息系统主窗体的创建16

4.2系统用户管理模块的创建17

4.3添加读者种类窗体的创建21

4.4查询图书信息与借书窗体的创建23

参考文献29

第一章综述

随着各图书馆的图书的数量不断增多和图书馆规模的不断扩大,管理这些庞大的体系非常困难的,因为图书的情况是随时改变的,因此必需对图书进行动态的管理,而这对于一个管理人员来说是一件比较复杂的事情,存储、查询、借阅是必不可少的业务。

为了能让管理员从繁重的工作中解脱出来,使管理员在使用一个软件以后能极其容易地对所有图书进行管理,并且准确无误,轻松自如。

因此开发一个图书馆管理系统软件是当务之急,也是本毕业设计选题的重要意义和研究宗旨。

图书馆管理系统的流通部分是所有图书馆系统中最重要的部分,流通系统将读者与图书、读者与管理员、读者与读者相互间联系起来,而且流通系统处理的数据类型多,数量大,精细且频繁,因而需要系统应具备较完善的检验防错功能,从而根据系统的运行及反馈信息高质量,高效率地管理系统流通部门的全部功能。

由于时间仓促和本人水平有限,不当之处在所难免,请各位老师批评指正。

1.1图书馆管理系统开发背景

当今时代是飞速发展的信息时代。

在各行各业中离不开信息处理,这正是计算机被广泛应用于信息管理系统的环境。

计算机的最大好处在于利用它能够进行信息管理。

使用计算机进行信息控制,不仅提高了工作效率,而且大大的提高了其安全性。

尤其对于复杂的信息管理,计算机能够充分发挥它的优越性。

计算机进行信息管理与信息管理系统的开发密切相关,系统的开发是系统管理的前提。

本系统就是为了管理好图书馆信息而设计的。

图书馆作为一种信息资源的集散地,图书和用户借阅资料繁多,包含很多的信息数据的管理,现今,有很多的图书馆都是初步开始使用,甚至尚未使用计算机进行信息管理。

根据调查得知,他们以前对信息管理的主要方式是基于文本、表格等纸介质的手工处理,对于图书借阅情况(如借书天数、超过限定借书时间的天数)的统计和核实等往往采用对借书卡的人工检查进行,对借阅者的借阅权限、以及借阅天数等用人工计算、手抄进行。

数据信息处理工作量大,容易出错;由于数据繁多,容易丢失,且不易查找。

总的来说,缺乏系统,规范的信息管理手段。

尽管有的图书馆有计算机,但是尚未用于信息管理,没有发挥它的效力,资源闲置比较突出,这就是管理信息系统的开发的基本环境。

数据处理手工操作,工作量大,出错率高,出错后不易更改。

图书馆采取手工方式对图书借阅情况进行人工管理,由于信息比较多,图书借阅信息的管理工作混乱而又复杂;一般借阅情况是记录在借书证上,图书的数目和内容记录在文件中,图书馆的工作人员和管理员也只是当时对它比较清楚,时间一长,如再要进行查询,就得在众多的资料中翻阅、查找了,造成查询费时、费力。

如要对很长时间以前的图书进行更改就更加困难了。

基于这此问题,我认为有必要建立一个图书管理系统,使图书管理工作规范化,系统化,程序化,避免图书管理的随意性,提高信息处理的速度和准确性,能够及时、准确、有效的查询和修改图书情况。

1.2图书馆管理系统的目的和意义

 我们要实现科学技术现代化,图书情报工作的现代化是极其重要的,又由于科学和技术的不断发展和进步,现代技术是一个动态的概念.第二次世界大战以来,以计算机技术为代表的现代技术有了巨大的发展,而且还在迅速的变化发展之中,70年代后期,出现图书情报工作的“联机革命”,使计算机更广泛地,更有效的应用到各个角落,发达国家较重视这一领域的发展,我国尚存在较大的差距。

所以我们说,图书情报工作计算机化是提高我国科学技术水平的一项带有重大战略意义的措施,它是图书情报工作现代化的重要标志。

计算机技术是现代技术的一部分,图书自动化也只是图书馆现代化的一部分,它们之间是部分和整体的关系,但由于计算机技术是信息技术的心脏,现代社会的骄子,信息社会的科技主角,所以在图书馆现代技术中,计算机技术处于核心地位,它对于其他现代化设备起控制,连接和转换的作用,而图书馆自动化是图书馆现代化的核心和主导部分。

图书情报的计算机管理系统能提高图书馆本身管理水平,能代替工作人员进行图书情报资料的某些加工处理,把工作人员从繁重的手工劳动,重复劳动中解放出来。

总之,建立图书馆的计算机自动化管理系统,不但可以大大提高图书馆图书流通率,而且推动了社会文化生活的进步。

本论文以图书馆管理信息系统的需求分析及概念设计为切入点,运用理论与实际相结合的方法,构建一个包含读者信息,书籍信息和借阅信息的图书馆管理系统。

图书馆管理系统是典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。

对于前者要求建立起数据一致性和完整性强、数据安全性好的库。

而对于后者则要求应用程序功能完备,易使用等特点。

第二章系统分析设计

2.1系统功能分析

系统开发的总体任务是实现各种信息的系统化、规范化和自动化。

系统功能分析是在系统开发的总体任务的基础上完成。

本设计中的图书馆管理信息系统需要完成功能主要有:

1.有关读者种类标准的制定、种类信息的输入,包括种类编号、种类名称、借书数量、借书期限等。

2.读者种类信息的修改、查询等。

3.读者基本信息的输入,包括读者编号、读者姓名、读者种类、读者性别、工作单位、家庭住址、电话号码、办证日期等。

4.读者基本信息的查询、修改,包括读者编号、读者姓名、读者种类、读者性别、工作单位、家庭住址、电话号码、办证日期等。

5.书籍信息的输入,包括书籍编号、书籍名称、书籍类别、作者姓名、出版社名称、出版日期、登记日期等。

6.书籍信息的查询、修改,包括书籍编号、书籍名称、书籍类别、作者姓名、出版社名称、出版日期、登记日期等。

7.借书信息的输入,包括借书信息编号、读者编号、读者姓名、书籍编号、书籍名称、借书日期等。

8.借书信息的查询、修改,包括借书信息编号、读者编号、读者姓名、书籍编号、书籍名称、借书日期等。

9.还书信息的输入,包括还书信息编号、读者编号、读者姓名、书籍编号、书籍名称、借书日期、还书日期等。

10.还书信息查询和修改,包括还书信息编号、读者编号、读者姓名、书籍编号、书籍名称、借书日期、还书日期等。

2.2系统功能模块设计

对上述各项功能进行集中、模块划分,按照结构化程序设计的要求,得到如图2.1所示的系统功能模块图。

图2.1系统功能模块图

第三章数据库分析与设计

3.1数据库需求分析

用户的需求具体体现在各种信息的提供、保存、更新和查询,这就要求数据库结构能充分满足各种信息的输出和输入。

收集基本数据、数据结构以及数据处理的流程,组成一份详尽的数据字典,为以后的具体设计打下基础。

针对一般图书馆管理信息系统的需求,通过对图书馆管理工作过程的内容和数据流程分析,设计如下面所示的数据项和数据结构:

1.读者种类信息,包括的数据项有:

种类编号、种类名称、借书数量、借书期限、有效期限等。

2.读者信息,包括的数据项有:

读者编号、读者姓名、读者种类、读者性别、工作单位、家庭住址、电话号码、办证日期等。

3.书籍类别信息,包括的数据项有:

类别编号、类别名称等。

4.书籍信息,包括的数据项有:

包括书籍编号、书籍名称、书籍类别、作者姓名、出版社名称、出版日期、登记日期等。

5.借阅信息,包括的数据项有:

借阅信息编号、读者编号、读者姓名、书籍编号、书籍名称、借书日期、还书日期等。

有了上面的数据结构、数据项和数据流程,就可以进行下面的数据库设计了。

3.2数据库概念结构设计

得到上面的数据项和数据结构以后,就可以设计出能够满足用户需求的各种实体,以及它们之间的关系,为后面的逻辑结构设计打下基础。

本实例根据上面的设计规划出的实体有:

读者类别信息实体、读者信息实体、书籍类别信息实体、书籍信息实体、借阅信息实体。

各个实体具体的描述E-R图如下。

读者类别信息实体E-R图如图3.1所示。

图3.1读者类别信息实体E-R图

读者信息实体E-R图如图3.2所示。

图3.2读者信息实体E-R图

书籍类别信息实体E-R图如图3.3所示。

图3.3书籍类别信息实体E-R图

书籍信息实体E-R图如图3.4所示。

图3.4书籍信息实体E-R图

借阅信息实体E-R图如图3.5所示。

图3.5借阅信息实体E-R图

实体之间相互关系的E-R图如图3.6所示。

图3.6实体之间关系的E-R图

3.3数据库逻辑结构设计

3.3.1书籍信息表

由多个图书记录构成。

图书记录的数据结构如下:

图书编号(BookID)

整数(唯一标示符)

图书书名(BookName)

变长字符串

图书作者(Author)

变长字符串

图书出版社(Publisher)

变长字符串

3.3.2读者信息表

由多个读者记录构成

读者记录的数据结构如下:

读者证号(ReaderID)

整数(唯一标示符)

读者姓名(ReaderName)

变长字符串

读者联系方法(Address)

变长字符串

3.3.3借阅信息表

由若干个借书记录构成

借书记录的数据结构如下:

借阅图书(BookID)

整数(与图书库中的图书编号对应)(唯一标示符)

借阅者(ReaderID)

整数(与读者库中的图书编号对应)

借阅时间(BorrowDate)

日期

3.3.4读者类别表

有单个系统设置记录构成

系统设置记录的数据结构如下:

记录号(id)

整数(系统自动生成,唯一标示符)

最多可借图书数(MaxBLNum)

整数

最多借书天数(MaxBLDays)

整数

3.3.5用户表

由若干个系统操作员记录构成

系统操作员记录的数据结构如下:

记录序号(id)

整数(系统自动生成,唯一标示符)

账号(Addminister)

变长字符串

口令(Password)

变长字符串

权限级别(Level)

变长字符串

3.4读者借书过程的数据流图和数据词典

3.4.1数据流图

读者借书过程数据流程如图3.7所示。

 

图3.7读者借书过程

3.4.2数据词典

1.数据源点及汇点描述:

名称:

读者

简要描述:

借书、还书、查询及登记注册

有关数据流:

借书证;所借书本

名称:

日历

简要描述:

当日日期

有关数据流:

年月日

2.加工逻辑词条描述:

加工名:

借书检验

加工编号:

简要描述:

检验读者身份、图书是否入库、读者还能借多少书以此判定读者是否能借书

输入数据流:

借书证;所借书本,读者信息,图书信息,图书访问记录,日期

输出数据流:

借书错误信息,借书信息

加工逻辑:

IF 借书证未登记入库 THEN

        发出“借书错误”

     ELSE IF 图书未登记入库 THEN

          发出“借书错误”

         ELSE IF 读者已借图书和现借图书多于限制数NTHEN

              发出“借书错误”

            ELSE IF 读者已借图书中有超期  THEN

                发出“借书错误”

             ELSE 发出“借书信息”

             ENDIF

          ENDIF

       ENDIF

      ENDIF

加工名:

借书登记

加工编号:

简要描述:

将“借书信息”登记到“图书访问记录库图书访问记录”中,完成后将书本递交读者

输入数据流:

借书信息,日期

输出数据流:

图书访问记录,图书

加工逻辑:

将借书信息及日期写入图书访问记录;

3.数据流名词条描述:

数据流名:

借书证

说明:

用以携带读者的唯一识别标识

数据流来源:

读者

数据流去向:

借书检验

数据流组成:

借书证=借书证号+姓名+联系方法

      借书证号=“000000001”..“999999999”

      姓名=2{字母}24

      联系方法=4{字母}50

数据流名:

图书

说明:

记录图书的主要相关信息

数据流来源:

读者

数据流去向:

借书检验

数据流组成:

图书=书号+书名+作者+出版社

      书号=“000000001”..“999999999”

      书名=2{字母}24

      作者=2{字母}24

      出版社=2{字母}24

数据流名:

检验错误

说明:

用于指示读者借书错误信息

数据流来源:

借书检验

数据流去向:

读者

数据流组成:

检验错误=2{字母}40

数据流名:

借书信息

说明:

用于传递读者号和图书号

数据流来源:

借书检验

数据流去向:

借书登记

数据流组成:

借书信息=借书证号+书号

数据流名:

日期

说明:

提供当前日期信息

数据流来源:

日历

数据流去向:

借书检验,借书登记

数据流组成:

日期=年+月+日

      年=“0000”..“9999”

      月=“01”..“12”

      日=“01”..“31”

数据流名:

图书访问记录

说明:

用于记录读者借书信息

数据流来源:

图书访问记录库,借书登记

数据流去向:

借书检验

数据流组成:

图书访问记录=书号+借阅证号+借书日期

      借书日期=日期

数据流名:

读者信息

说明:

用于记录登记入库的读者信息

数据流来源:

读者库

数据流去向:

借书检验

数据流组成:

读者信息=借书证号+姓名+联系方法

数据流名:

图书信息

说明:

用于记录登记入库的图书信息

数据流来源:

图书库

数据流去向:

借书检验

数据流组成:

图书信息=书号+书名+作者+出版社+价格+摘要+状态

4.数据文件词条描述:

数据文件名:

读者库

简述:

存放读者信息

输入数据:

输出数据:

读者信息

数据文件组成:

读者库由“读者信息”组成

数据文件名:

图书库

简述:

存放图书信息

输入数据:

输出数据:

图书信息

数据文件组成:

图书库由“图书信息”组成

数据文件名:

图书访问记录库

简述:

存放图书访问记录信息

输入数据:

图书访问记录

输出数据:

图书访问记录

数据文件组成:

图书访问记录库由“图书访问记录”组成

3.5读者还书过程的数据流图和数据词典

3.5.1数据流图

读者还书过程数据流程如图3.8所示。

图3.8读者还书过程

3.5.2数据词典

1.加工逻辑词条描述:

加工名:

还书检验

加工编号:

3

 简要描述:

检验图书是否图书室外借图书

 输入数据流:

图书,图书访问记录

输出数据流:

检验错误,还书信息

 加工逻辑:

IF 书号与数据库数据不符 THEN

        发出“检验错误”

      ELSE 发出“还书信息”

      ENDIF

加工名:

还书登记

 加工编号:

4

 简要描述:

删除读者对该图书的借书信息,如果超期给出警告及天数

 输入数据流:

还书信息,日期

 输出数据流:

图书访问纪录,还书成功

 加工逻辑:

IF 所还图书超期 THEN

       统计超期天数

生成含警告的返回信息

    ELSE 删除图书访问记录库中相应的借书记录

生成成功信息

    ENDIF

给出还书返回信息

2.数据流名词条描述:

数据流名:

还书信息

说明:

用于传递图书书号

数据流来源:

还书检验

数据流去向:

还书登记

数据流组成:

还书信息=书号

数据流名:

还书成功

说明:

用于通知还书成功

数据流来源:

还书登记

数据流去向:

读者

数据流组成:

还书成功=2{字母}10

数据文件词条描述:

(前面已描述)

第四章系统详细设计与实现

4.1图书馆管理信息系统主窗体的创建

这个项目使用多文档界面,单击工具栏中的ADDMDIForm按钮,生成一个窗体。

在这个窗体上添加所需的控件,窗体和控件的属性设置见表4-1所示。

表4-1主窗体及其控件属性设置

控件

属性

属性取值

 

frmMain(Form)

Name

FrmMain

Caption

王登伟毕业设计-图书馆管理系统

StartUpPositon

2-屏幕中心

WindowState

Maximized

 

SbStatusBar(StatusBar)

Name

SbStatusBar

Panels

(1)

Style

SbrText

Panels

(2)

Style

SbrDate

Panels(3)

Style

SbrTime

在窗体中加入状态栏控件,可以实时反映系统中各个状态的变化。

状态栏控件需要在通常的属性窗口中设置一般属性,还需要在其特有的弹出式菜单中进行设置。

选中状态栏控件,单击鼠标右键,选中Property菜单,然后设置属性。

创建好的主窗体如图4.1所示。

图4.1图书馆管理系统主窗体

在VisualBasic中使用公用模块来存放整个工程项目公用函数、过程和全局变量等。

这样可以极大地提高代码的效率。

在录入有关信息时,需要回车来进入下一个文本框,这样对软件使用者非常方便。

在所有的功能模块都需要这个函数,所以将它放在公用模块中,代码如下:

PublicSubEnterToTab(KeyascAsInteger)

‘判断是否为回车键

IfKeyasc=13Then

‘转换成Tab键

SendKeys”{TAB}”

EndIf

EndSub

Keyasc用来保存当前按键,SendKeys函数用来指定的按键。

一旦单击回车键,将返回Tab键,下一个控件自动获得输入焦点。

添加全局变量,用来记录各个窗体的读写状态,代码如下:

PubicflagRTeditAsBoolean

PubicgintRTmodeAsInteger

PubicflagReditAsBoolean

PubicgintRmodeAsInteger

PubicflagBTeditAsBoolean

PubicgintBTmodeAsInteger

PubicflagBeditAsBoolean

PubicgintBmodeAsInteger

PubicflagBOeditAsBoolean

PubicgintBOmodeAsInteger

PubicflagBBeditAsBoolean

PubicgintBBmodeAsInteger

gintRTmode变量用来记录是添加状态还是修改状态,赋值1为添加,赋值2为修改。

flagRTedit变量用来标示是否进入修改的窗体。

其他全局变量同理。

由于图书馆管理信息系统启动后,需要对用户进行判断。

如果登陆者是授权用户,将进入系统,否则将停止程序的执行。

这个判断需要在系统运行的最初进行,因此将代码放在公用模块中。

4.2系统用户管理模块的创建

登录窗体如图4.2所示,用户首先输入用户名,然后输入密码。

如果用户3次输入的密码不正确,将退出程序。

图4.2用户登录窗体

用户登录窗体中放置了两个文本框(TextBox),用来输入用户名和密码;两个按钮(CommandButton)用来确定或者取消登录;3个标签用来标志窗体的信息。

这些控件的属性设置见表4-2所示。

表4-2登录窗体中各个控件的属性设置

控件

属性

属性取值

frmLogin(Form)

Name

frmLogin

Caption

身份验证

StartUpPositon

CenterScreen

WindowState

Nomal

txtUserName

Name

txtUserName

txtPassword

Name

txtPassword

PasswordChar

*

cmdOK

Name

cmdOK

Caption

确定

cmdCance1

Name

cmdCance1

Caption

取消

Label1

Caption

用户名

Label2

Caption

密码

Label3

Caption

注意:

如果您的身份验证三次未正确,系统将自动关闭!

文本框txtPassword的PasswordChar属性是用指定字符来掩盖用户名输入密码。

为窗体定义全局变量OK,用来判断登录是否成功;定义Cnt,用来记载输入密码的次数,并且在载入窗体时初始化这两个全局变量,代码如下:

‘强制变量声明

OptionExplicit

PubicOKAsBoolean

‘记录确定次数

DimmiscountAsInteger

PrivateSubForm_Load()

OK=False

miscount=0

EndSub

OptionExplicit是用来规定所有变量使用前必须定义。

这样可以避免由于输入错误而产生的新变量。

当用户输入完用户名和用户密码,单击cmdOK按钮将对用户输入信息进行判断。

用户单击该按钮,将触发按钮cmdOK的Click事件,连接数据库中用户表如图4.4所示。

图4.4用户表

代码如下:

OptionExplicit

DimcntAsInteger'记录确定次数

PrivateSubcmdCancle_Click()

UnloadMe

EndSub

PrivateSubcmdOK_Click()

DimsqlAsString

Dimrs_loginAsNewADODB.Recordset

DimconnAsNewADODB.Connection

conn.Open"provider=Microsoft.Jet.OLEDB.4.0;datasource="&App.Path&"\database.mdb"

IfTrim(Text1.Text)=""Then

MsgBox"用户名不能为空,请重新输入!

"

Text1.SetFocus

Else

sql="select*from用户表whereuser_ID='"&Trim(Text1.Text)&"'"

rs_login.Opensql,conn,adOpenKeyset,adLockPessimist

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 初中教育

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1