图书管理系统编程免费下载.docx

上传人:b****4 文档编号:5160801 上传时间:2023-05-08 格式:DOCX 页数:24 大小:180.63KB
下载 相关 举报
图书管理系统编程免费下载.docx_第1页
第1页 / 共24页
图书管理系统编程免费下载.docx_第2页
第2页 / 共24页
图书管理系统编程免费下载.docx_第3页
第3页 / 共24页
图书管理系统编程免费下载.docx_第4页
第4页 / 共24页
图书管理系统编程免费下载.docx_第5页
第5页 / 共24页
图书管理系统编程免费下载.docx_第6页
第6页 / 共24页
图书管理系统编程免费下载.docx_第7页
第7页 / 共24页
图书管理系统编程免费下载.docx_第8页
第8页 / 共24页
图书管理系统编程免费下载.docx_第9页
第9页 / 共24页
图书管理系统编程免费下载.docx_第10页
第10页 / 共24页
图书管理系统编程免费下载.docx_第11页
第11页 / 共24页
图书管理系统编程免费下载.docx_第12页
第12页 / 共24页
图书管理系统编程免费下载.docx_第13页
第13页 / 共24页
图书管理系统编程免费下载.docx_第14页
第14页 / 共24页
图书管理系统编程免费下载.docx_第15页
第15页 / 共24页
图书管理系统编程免费下载.docx_第16页
第16页 / 共24页
图书管理系统编程免费下载.docx_第17页
第17页 / 共24页
图书管理系统编程免费下载.docx_第18页
第18页 / 共24页
图书管理系统编程免费下载.docx_第19页
第19页 / 共24页
图书管理系统编程免费下载.docx_第20页
第20页 / 共24页
亲,该文档总共24页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

图书管理系统编程免费下载.docx

《图书管理系统编程免费下载.docx》由会员分享,可在线阅读,更多相关《图书管理系统编程免费下载.docx(24页珍藏版)》请在冰点文库上搜索。

图书管理系统编程免费下载.docx

图书管理系统编程免费下载

图书管理系统编程

一系统的功能要求

根据高校图书管理的实际要求,结合本系统开发的要求,对与本章所要介绍的“图书管理系统”的需求实现如下功能:

1、书籍管理部分:

这一部分包括书籍类别管理和书籍信息管理两部分,其中书籍类别管理包括添加书籍类别、修改书籍类别等;书籍信息管理包括书籍信息的添加、书籍信息的修改、书籍信息的查询、书籍信息的删除等。

2、读者管理部分:

这一部分包括读者类别管理和读者信息管理两部分。

其中德政类别管理包括添加读者类别、修改读者类别;读者信息管理包括添加读者信息、修改读者信息、删除读者信息、查询读者信息等。

3、借阅管理部分:

这一部分包括借书信息管理和还书信息管理两部分。

其中,借书信息管理包括借书信息的添加、借书信息的修改、借书信息的查询等;还书信息管理部分包括还书信息的添加、还书信息的修改、还书信息的查询等

4、系统管理:

包括修改系统用户密码,增加新用户以及退出系统等。

二系统的需求分析

图书馆是一家所有工作手工操作的图书管理,随着计算机的发展,更多的图书馆采用计算机图书管理系统来实现,这样可以得到更好的管理。

目前,方正学院已经购买了所有的计算机硬件很网络设备。

设计一从采购—编目—流通—管理一体化的图书馆系统。

主要表现:

(一)采购,对新书的目录,要查存,判断图书馆是不是已经订过了,要人工查阅帐本完成,是很麻烦的事。

(二)验证,要填写两个帐本和盖章,而且在帐本上面很多信息是重复的。

(三)编目,通过手工对书编目,对不同种类的书都要查找书是否已有,如果没有的话对新的书进行查阅中图法宝典来要编目,并且还有填写跟书卡,和大量的查阅用的卡片。

这块消耗的人力最大了。

(四)流通,在借书的时候要填写跟书卡和借书证并保管跟书卡做为借条;在还书的时候工作人员先要花一定时间把保管的跟书卡先找出来,再填写跟书卡和借书证。

然后再把跟书卡和书夹在一起,工作人员要消耗很多时间,大大降低了工作效率。

(五)无法统计书的阅读次数、当天的借还数目等很多统计信息。

三VB应用

1.具有面向对象的可视化设计工具OOP

2.事件驱动的编程机制

3.提供了易学易用的应用程序集成开发环境

4.结构化的程序设计语言

5.支持多种数据库系统的访问

6.支持动态数据交换(DDE)、动态链接库(DLL)和对象的链接与嵌入技术(OLE)

7.联机帮助功能

设计时:

设计时是指在VB环境中建立应用程序时的时间。

运行时:

运行时是指在应用程序运行期间,用户与应用程序进行交互的时间。

通常我们在设计时初始化窗体和控件的属性,在运行时响应窗体和控件的事件修改它们的属性或调用它们的方法。

对象:

将数据和处理该数据的过程(函数和子程序)打包在一起而生成的新的数据类型称之为对象。

在VisualBasic中,所有窗体和控件都是对象。

要访问对象的属性和方法,必须在对象和属性方法之间加入一个句点。

窗体:

窗体是可用作定制应用程序界面的窗口,或用作从用户处收集信息的对话框。

你可向窗体增加控件、图形或图片来创建你的应用程序界面。

窗体可单独存在,也可是多文档界(MDI)中的一个文档,即一个子窗体。

四ADO访问数据库的原理

与数据库相连,ADO.NET提供了如下3种方式:

通过ODBC相连;通过OLEDB相连;直接与SQLServer相连。

3种方式由于应用层次的差异,使得效率由低到高,独立性由高到低。

对于相连数据库的数据处理,也有2种方式,即一种是通过DataSet来隔离异构的数据源,另一种是以流方式从数据源读取(DataReader方式)。

传统的应用程序是通过先建立到数据库的连接,在程序的整个运行过程中维护连接的方式来设计的。

ASP.NET采取了断开连接方式的数据结构。

当浏览器向Web服务器请求网页时,服务器处理这个请求,并将所请求的网页发送给浏览器,然后连接就被断开,直到浏览器发出下一个请求。

ADO.NET的另一个创新是引入了数据集(Dataset)。

一个数据集是内存中提供数据关系图的高速缓冲区。

数据集对数据源一无所知,它们可以由程序或通过从数据仓库中调入数据而被生成、填充。

不论数据从何处获取,数据集都是通过使用同样的程序模板而被操作的,并且它使用相同的潜在的数据缓冲区。

OptionExplicit

PrivateSubCommand1_Click()

 DimcnAsNewADODB.Connection       '数据库连接变量

 DimCmdAsNewADODB.Command    '命令集

 DimrsAsNewADODB.Recordset        '记录集  

 DimstrConnectAsString                        '连接字符串

 Setcn=NewADODB.Connection

 strConnect="Provider=SQLOLEDB.1;PersistSecurityInfo=False;UserID=sa;InitialCatalog=database;DataSource=servername" '指定连接字符串

 cn.ConnectionString=strConnect            

 cn.Open                                                 '连接数据库

 WithCmd

 .ActiveConnection=cn

 .CommandType=adCmdStoredProc 

五系统的功能模块图

六系统的流程图

根据学校图书管理的实际流程,结合上述的各功能模块,系统的整体流程如图:

七逻辑结构E-R图

八系统设计

1模块设计

根据本系统的需求,结合实际图书管理情况,本系统应具有如下功能模块:

1.1图书管理功能

书籍信息管理:

包括书籍信息的添加、书籍信息的修改、书籍信息的查询

和书籍信息的删除4部分功能。

其中,书籍信息包括图书编号、书名、图书类别、作者、出版社、出版日期、登记日期已及是否已被借出。

书籍类别管理:

包括书籍类别的添加、书籍类别的修改、书籍类别的闪出3部分功能。

其中,书籍类别包括类别名称和类别编号两部分。

1.2读者管理部分

读者信息管理:

包括读者信息的添加、读者信息的修改、读者信息的查询和读者信息的删除4部分功能。

其中,读者信息包括读者姓名、读者编号、性别、读者类别、工作单位、家庭住址、电话号码、登记日期和已借书数量。

读者类别管理:

包括读者类别的添加、读者类别的修改、读者类别的删除3部分功能。

其中,读者类别包括种类名称、借书数量、借书期限和有效期限4部分。

1.3借阅管理部分

借书管理:

包括添加借书信息和查询借书信息2部分功能。

其中,借阅信息包括借阅编号、读者编号、读者姓名、书籍编号、书籍名称、出借日期和还书日期

还书管理:

实现添加还书信息功能。

其中,还书信息与借阅信息各部分明细相同。

1.4系统管理部分

设置操作人员。

系统初始设置一个超级用户和密码,操作人员可以利用这个超级用户名和密码登录,之后,可以设置其他的超级用户名称,也可以设置权限用户,同时也设置了这个用户可以使用的权限。

2数据库设计

本系统使用Access2000作为数据库管理系统(DataBaseManagementSystem,数据库管理系统)。

在通路中,新建一个数据库,将其取名为book.mdb,将新建的数据库放置在应用程序的目录中,以便调用。

权限:

(权限,姓名)

登录用户:

(帐号,姓名,密码,权限)

用户:

(用户帐号,姓名,性别,组号,证件号码)

图书类别:

(类别,类名)

图书:

(图书编号,类别,书名,作者,出版日期,出版社,定价,总数量,

剩下数量,备注)

借阅:

(用户帐号,图书编号,借书日期,到期日期,数量,还书日期)

借阅信息:

(用户帐号,图书编号,借书日期,到期日期,数量,还书日期)

例如,书籍信息部分设计的表如图所示

书籍信息部分

 

图书管理系统数据库

2.1数据库表设计

读书者类别表

对于读书者类别表,字段名称、借书数量、借书期限、有限期限等。

在数据库中建立一个读书者类别表,用来记录所有的借阅者的信息。

在刚刚建立的数据库中建立一个表,其字段结构如表达所示,需要注意的是该表的主关键字(PrimaryKey,PK)为种类名称,唯一标志一条的主关键字(PrimaryKey,PK)为种类名称,唯一标志一条记录。

读书类别表

字段名

数据类型

说明

种类名称

文本

必须字段为是,允许空字符为否

借书数量

数字

借书期限

数字

有效期限

数字

 

读者信息表

对于读者信息表,字段名称应该为读者姓名、读者编号、性别、读者类别、工作单位、家庭住址、电话号码、登记日期和已借书数量。

在数据库中建立一个表,如图所示。

主要的钥匙,PK),唯一标识了一条记录的其中读者编号为该表的主关键字。

读者信息表

字段名

数据类型

说明

读者姓名

文本

必须字段为是,允许空字符为否

读者编号

文本

必须字段为是,允许空字符为否

性别

文本

字段大小2

读者类别

文本

字段大小50

工作单位

文本

字段大小50

家庭住址

文本

字段大小50

电话号码

文本

字段大小12

登记日期

日期/时间

已借书数量

数字

图书类别表

对于图书类别表,字段名称应该为类别名称和类别编号。

具体设置如表

图书类别表

字段名

数据类型

说明

类别名称

文本

必须字段为是,允许空字符为否

类别编号

文本

必须字段为是,允许空字符为否

书籍信息表

对于书籍信息表,字段名称应该为图书编号、书名、图书类别、作者、出版社、出版日期、登记日期及是否已被借出。

具体设置如表所示。

书籍信息表

字段名

数据类型

说明

图书编号

文本

必须字段为是,允许空字符为否

书名

文本

必须字段为是,允许空字符为否

类别

文本

字段大小50

作者

文本

字段大小50

出版社

文本

字段大小50

出版日期

日期/时间

登记日期

日期/时间

是否已被借出

文本

字段大小2

借阅信息表

对于借阅信息表,字段名称应该为借阅编号、读者编号、读者姓名、书籍编号、书籍名称、出借日期和还书日期。

具体设置如表所示。

借阅信息表

字段名

数据类型

说明

借阅编号

自动编号

读者编号

文本

字段大小50

读者姓名

文本

字段大小50

书籍编号

文本

字段大小50

书籍名称

文本

字段大小50

出借日期

日期/时间

还书日期

日期/时间

按照上面的表格要求设计好数据库(book.mdb)后,就可以进行系统窗体界面开发了。

 

九部分源代码

图书管理系统

PrivateSubToolbar1_ButtonClick(ByValButtonAsMSComCtlLib.Button)

OnErrorResumeNext

SelectCaseButton.Key

Case"查询图书"

frmfindbook.Show

Case"查询读者"

frmfindreader.Show

Case"添加图书"

frmaddbookstyle.Show

Case"添加读者"

frmaddreaderinfo.Show

Case"查询借书"

frmfindborrowinfo.Show

Case"退出"

End

EndSelect

EndSub

PrivateSubadd_admin_Click()

frmadduser.Show

EndSub

PrivateSubadd_back_book_Click()

frmbackbookinfo.Show

EndSub

PrivateSubadd_book_info_Click()

frmaddbookinfo.Show

EndSub

PrivateSubadd_book_style_Click()

frmaddbookstyle.Show

EndSub

PrivateSubadd_lend_book_Click()

frmfindbook.Show

EndSub

PrivateSubadd_reader_info_Click()

frmaddreaderinfo.Show

EndSub

PrivateSubadd_reader_style_Click()

frmaddreaderstyle.Show

EndSub

PrivateSubchange_pwd_Click()

frmchangepwd.Show

EndSub

PrivateSubdel_book_info_Click()

frmmodifybookinfo.Show

EndSub

PrivateSubdel_book_style_Click()

frmmodifybookstyle.Show

EndSub

PrivateSubdel_reader_info_Click()

frmreaderinfo.Show

EndSub

PrivateSubdel_reader_style_Click()

frmmodifyreaderstyle.Show

EndSub

PrivateSubexit_sys_Click()

End

EndSub

PrivateSubfind_book_info_Click()

frmfindbook.Show

EndSub

PrivateSubfind_lend_book_Click()

frmfindborrowinfo.Show

EndSub

PrivateSubfind_reader_info_Click()

frmfindreader.Show

EndSub

PrivateSubmodify_book_info_Click()

frmmodifybookinfo.Show

EndSub

PrivateSubmodify_book_style_Click()

frmmodifybookstyle.Show

EndSub

PrivateSubmodify_reader_info_Click()

frmreaderinfo.Show

EndSub

PrivateSubmodify_reader_style_Click()

frmmodifyreaderstyle.Show

EndSub

添加图书信息

OptionExplicit

PrivateSubCommand1_Click()

Dimrs_addbookAsNewADODB.Recordset

DimsqlAsString

IfTrim(Combo1.Text)=""Then

MsgBox"请选择图书种类",vbOKOnly+vbExclamation,""

Combo1.SetFocus

ExitSub

EndIf

IfTrim(Text1.Text)=""Then

MsgBox"图书编号不能为空",vbOKOnly+vbExclamation,""

Text1.SetFocus

ExitSub

EndIf

IfTrim(Text2.Text)=""Then

MsgBox"书名不能为空",vbOKOnly+vbExclamation,""

Text2.SetFocus

ExitSub

EndIf

IfNotIsDate(Text5.Text)Then

MsgBox"请按照yyyy-mm-dd格式输入日期",vbOKOnly+vbExclamation,""

Text5.SetFocus

ExitSub

EndIf

IfNotIsDate(Text6.Text)Then

MsgBox"请按照yyyy-mm-dd格式输入日期",vbOKOnly+vbExclamation,""

Text6.SetFocus

ExitSub

EndIf

sql="select*from书籍信息where书籍编号='"&Text1.Text&"'"

rs_addbook.Opensql,conn,adOpenKeyset,adLockPessimistic

Ifrs_addbook.EOFThen

rs_addbook.AddNew

rs_addbook.Fields(0)=Trim(Text1.Text)

rs_addbook.Fields

(1)=Trim(Text2.Text)

rs_addbook.Fields

(2)=Trim(Combo1.Text)

rs_addbook.Fields(3)=Trim(Text3.Text)

rs_addbook.Fields(4)=Trim(Text4.Text)

rs_addbook.Fields(5)=Trim(Text5.Text)

rs_addbook.Fields(6)=Trim(Text6.Text)

rs_addbook.Fields(7)="否"

rs_addbook.Update

MsgBox"添加书籍信息成功!

",vbOKOnly,""

rs_addbook.Close

Else

MsgBox"图书编号重复!

",vbOKOnly+vbExclamation,""

Text1.SetFocus

Text1.Text=""

rs_addbook.Close

ExitSub

EndIf

EndSub

PrivateSubCommand2_Click()

UnloadMe

EndSub

PrivateSubForm_Load()

Dimrs_leibieAsNewADODB.Recordset

DimsqlAsString

sql="select*from图书类别"

rs_leibie.Opensql,conn,adOpenKeyset,adLockPessimistic

rs_leibie.MoveFirst

DoWhileNotrs_leibie.EOF

Combo1.AddItemrs_leibie.Fields(0)

rs_leibie.MoveNext

Loop

rs_leibie.Close

EndSub

PrivateSubFrame1_DragDrop(SourceAsControl,XAsSingle,YAsSingle)

EndSub

PrivateSubText2_Change()

EndSub

图书类别

OptionExplicit

PrivateSubCommand1_Click()

Dimrs_bookstyleAsNewADODB.Recordset

DimsqlAsString

IfTrim(Text1.Text)=""Then

MsgBox"图书种类不能为空",vbOKOnly+vbExclamation,""

Text1.SetFocus

ExitSub

EndIf

IfTrim(Text2.Text)=""Then

MsgBox"种类编号不能为空",vbOKOnly+vbExclamation,""

Text2.SetFocus

ExitSub

EndIf

sql="select*from图书类别where类别名称='"&Text1.Text&"'"

rs_bookstyle.Opensql,conn,adOpenKeyset,adLockPessimistic

Ifrs_bookstyle.EOFThen

rs_bookstyle.AddNew

rs_bookstyle.Fields(0)=Trim(Text1.Text)

rs_bookstyle.Fields

(1)=Trim(Text2.Text)

rs_bookstyle.Update

MsgBox"添加图书类别成功!

",vbOKOnly,""

rs_bookstyle.Close

Else

MsgBox"读者类别重复!

",vbOKOnly+vbExclamation,""

Text1.SetFocus

Text1.Text=""

rs_bookstyle.Close

ExitSub

EndIf

EndSub

PrivateSubCommand2_Click()

UnloadMe

EndSub

PrivateSubText1_Change()

EndSub

添加读者信息

OptionExplicit

Dimrs_addreaderAsNewADODB.Recordset

PrivateSubCommand1_Click()

DimsqlAsString

IfTrim(Combo1.Text)=""Then

MsgBox"请选择读者种类",vbOKOnly+vbExclamation,""

Combo1.SetFocus

ExitSub

EndIf

IfTrim(Text1.Text)=""Then

MsgBox"读者姓名不能为空",vbOKOnly+vbExclamation,""

Text1.SetFocus

ExitSub

EndIf

IfTrim(Text2.Text)=""Then

MsgBox"读者编号不能为空",vbOKOnly+vbExclamation,""

Text2.SetFocus

ExitSub

EndIf

sql="select*from读者信息where读者编号='"&Text2.Text&"'"

rs_addreader.Opensql,conn,adOpenKeyset,adLockPessimistic

Ifrs_addreader.EOFThen

rs_addreader.AddNew

rs_addreader.Fields(0)=Trim(Text1.Text)

rs_addreader.Fields

(1)=Trim(Text2.Text)

rs_addreader.Fields

(2)=Trim(Combo2.Text)

rs_addreader.Fields(3)

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

当前位置:首页 > 人文社科 > 法律资料

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2