当前位置:文档之家› 郑州大学毕业设计

郑州大学毕业设计

郑州大学彼业设计(论文)

题目:图书馆管理系统的设计与实现

指导教师:职为梅职称:讲师

学生姓名:闫鸿飞学号:0813******** 专业:计算机科学与技术

院(系):信息工程学院

完成时间:2011年月日

2011年月日

基于https://www.doczj.com/doc/c32592985.html,的图书馆管理系统设计与实现

摘要

图书馆作为一个专门收集、整理、保存、传播文献并提供利用的科学、文化、教育机构,是人们获取知识的主要来源之一。同时,数据库的管理和开发是一项重要内容,在教学实践中占有十分重要的地位。本网站服务器端的代码主要使用c#编写,使用VS2008 和SQL Server 2005相结合开发网站。

论文首先论述了系统的开发背景和设计目标,并对系统开发所用到的技术进行了相关的简单介绍;其次,介绍了项目的需求分析;再次详细介绍了系统的详细设计;最后,介绍了系统的详细设计。

关键词:数据库,SQL语言,MS SQL Server,C#

郑州大学信息工程学院毕业设计论文Based on the https://www.doczj.com/doc/c32592985.html, library management system

design and Implementation

Take to

Library as a specialized collection, collation, preservation, dissemination of literature and provide the use of the scientific, cultural, educational institutions, is that people get the one of major source of knowledge. At the same time, database management and development is an important content in the teaching practice, plays a very important role. The web server code is written using c#, using VS2008 and SQL Server 2005 combined development site.

The paper first discusses the background of the system development and the design goal, and system development techniques were related briefly; secondly, introduces the project needs analysis; once again introduced the detailed design of the system; at last, introduces the detailed design of the system.

Key words: database, SQL language, MS SQL Server, C #

郑州大学信息工程学院毕业设计论文

目录

1绪论 (6)

1.1图书管理系统概述 (6)

1.2开发环境 (6)

1.1系统设计目标分析 (7)

2图书管理系统设计分析 (8)

2.1系统目标 (8)

2.2应用需求分析 (8)

2.3系统业务流程 (9)

2.4系统功能模块划分 (10)

2.5功能模块介绍 (10)

2.5.1读者管理模块 (10)

2.5.2图书管理模块 (10)

3数据库设计分析 (11)

3.1数据库设计E-R图 (11)

3.2系统数据表设计 (13)

3.3数据连接 (16)

4功能模块类 (17)

4.1D ATA B ASE.CS (数据库操作类) (17)

4.1.1打开数据库连接 (18)

4.1.2关闭连接 (18)

4.1.3释放数据库连接资源 (19)

4.1.4传入参数并且转换为SqlParameter类型 (19)

4.1.5执行参数命令文本 (20)

4.1.6将命令文本添加到SqlDataAdapter (21)

4.2V ALIDATE C LASS.CS(数据验证类) (23)

4.2.1验证输入为数字 (23)

4.2.2验证输入为邮编 (24)

4.2.3验证输入为电话号码 (24)

4.2.4验证输入为Email (24)

4.2.5验证输入为网址 (24)

4.3O PERATOR C LASS.CS(基础数据操作类) (25)

4.4A DMIN M ANAGE.CS(管理员功能模块类) (26)

4.4.1自动生成管理员编号,方法为GetAdminID (27)

4.4.2添加管理员信息 (28)

4.4.3修改管理员信息 (29)

4.4.4删除管理员信息 (29)

4.4.5管理员登录 (29)

4.4.6查询管理员信息 (30)

5系统功能的实现 (31)

5.1主页面设计 (31)

5.2图书馆信息模块设计 (34)

5.3图书档案管理模块设计 (34)

5.4图书借还管理模块设计 (36)

6 结论 (36)

致谢 (38)

参考文献 (39)

[1]STEPHEN WALTHER:https://www.doczj.com/doc/c32592985.html,3.5技术揭秘.人民邮电出版社,2009 (39)

1绪论

1.1图书管理系统概述

长期以来人们才用人工方式来管理图书馆的日常业务,其操作流程比较繁琐,工作效率很低,并且不能及时了解图书的种类和学生们比较需求的图书等,不能更好的适应当前学生的借阅要求。手工管理还存在这许多弊端,由于不可避免的人为因素,造成数据的遗漏、误报。计算机信息化管理有着储存量大,速度快等许多优点,提供给我们的处理信息及时快捷,因此我们利用计算机提供给我们的信息对学生们的借阅过程形成一整套动态的管理能够极大地提高图书馆管理的效率。

随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。作为计算机应用的一部分,使用计算机对图书信息进行管理,具有着手工管理所无法比拟的优点.例如:检索迅速、查找方便、易修改、可靠性高、存储量大、数据处理快捷、保密性好、寿命长、成本低、便于打印等。这些优点能够极大地提高图书管理的效率,也是图书馆的科学化、正规化管理,与世界接轨的重要条件。因此,开发这样一套管理软件成为很有必要的事情。图书管理信息系统是典型的信息管理系统,其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于后台数据库的建立要求建立起数据一致性和完整性强.数据安全性好的库。而对于前端应用程序则要求应用程序功能完备,易使用等特点。

1.2开发环境

本系统的开发采用的是 ASP+VS2008 +SQL SERVER 2005的模式开发,在本项目中服务器端的代码主要是C#编写,基于浏览器/服务器应用方式。

SQL SERVER 2005

SQL SERVER是微软重要的管理系统,其中SQL SERVER 2005版本的功能最为强大。它不仅拥有支持存储和检索大量关系数据的核心数据库引擎及能够提供快速查询、访问数据的顶级优化器,该具备了许多其他组件。他们大大提高了数据和应用程序的可用性和可扩展性。

https://www.doczj.com/doc/c32592985.html,是微软公司构建高交互性、高扩展性的旗舰技术。许多在因特网上提供服务的网站都够建于https://www.doczj.com/doc/c32592985.html, Framework之上。

1.1系统设计目标分析

作为学生对图书管理系统的要求有:

1. 能按各种方式(比如书名、编号、作者)查询图书馆的藏书情况。

2. 能够方便地借阅图书、续借图书、归还图书。

3. 能够查询自己的基本资料、借阅图书情况。

4. 能够熟悉图书管理系统的使用。

作为图书管理员,他们对图书管理系统的要求有:

1. 能方便的对图书进行录入登记,注销陈旧的书籍。

2. 能够方便地对读者进行登记,或注销读者生信息(基本信息,借阅信息)。

郑州大学信息工程学院毕业设计论文2图书管理系统设计分析

2.1系统目标

本系统主要实现对图书馆的信息进行管理,图书馆的正常运营中总是面对大量的读者信息,图书信息以及两者相互作用产生的借书信息,因此要对读者资源,图书资源,借书信息进行管理。本系统的开发就是在于提高图书管理的工作效率,加强图书馆的管理。

2.2应用需求分析

图书管理系统需要满足来自三方面的需求,这三个方面分别是图书借阅者、图书馆工作人员和图书馆管理人员。图书借阅者的需求是查询图书馆所存的图书、个人借阅情况及个人信息的修改;图书馆工作人员对图书借阅者的借阅及还书要求进行操作,图书馆管理人员的功能最为复杂,包括对工作人员、图书借阅者、图书进行管理和维护。

图书借阅者可直接查看图书馆图书情况,如果图书借阅者根据本人借书证号和密码登录系统,还可以进行本人借书情况的查询和维护部分个人信息。一般情况下,图书借阅者只应该查询和维护本人的借书情况和个人信息,若查询和维护其他借阅者的借书情况和个人信息,就要知道其他图书借阅者的借书证号和密码。这些是很难得到的,特别是密码,所以不但满足了图书借阅者的要求,还保护了图书借阅者的个人隐私。

图书馆工作人员有修改图书借阅者借书和还书记录的权限,所以需对工作人员登陆本模块进行更多的考虑。图书馆管理人员功能的信息量大,数据安全性和保密性要求最高。本功能实现对图书信息、借阅者信息、总体借阅情况信息的管理和统计、工作人员和管理人员信息查看及维护。图书馆管理员可以浏览、查询、添加、删除、修改、统计图书的基本信息;浏览、查询、统计、添加、删除和修改图书借阅者的基本信息,浏览、查询、统计图书馆的借阅信息,但不能添加、删除和修改借阅信息,这部分功能应该由图书馆工作人员执行设计不同用户的操作权限和登陆方法

借阅者维护借阅者个人部分信息

借阅者查看个人借阅情况信息

维护借阅者个人密码

查询及统计各种信息

维护图书信息

维护工作人员和管理员信息

2.3系统业务流程

2.4系统功能模块划分

2.5功能模块介绍

2.5.1读者管理模块

读者管理模块主要说明读者权限及操作。

读者模块主要包括:登录、修改个人信息、查询图书、退出管理。

读者有管理员注册。登录是已是图书馆读者使用的。

修改个人信息的操作对象为已是图书馆读者,读者可以查看自己的相关资料和修改。

退出登录为已登录读者使用。

2.5.2图书管理模块

图书管理模块主要是管理员对图书的操作;

图书管理模块包括:查找图书、增加图书、删除图书、修改图书相关信息。

图书管理员可以向数据库中增加书目,主要包括图书的名称、所属的种类、价格、详细说等。

管理员可以删除图书信息,管理员也有权限的划分。

管理员可以修改书库中图书的相关信息。

郑州大学信息工程学院毕业设计论文3数据库设计分析

在程序开发过程中,数据库设计是一个非常重要的环节。本系统使用SQL SERVER 2005。

3.1数据库设计E-R图

为了把问题清楚的表达出来,通常要建立一个概念性的数据模型。概念性的数据模型是面向问题的数据模型。

最常用的表示概念性数据模型的方法,是实体—联系方法(Entity—Relationship Approach)。这种方法用ER图描述现实世界中的实体,而不涉及这些实体在系统中的实现方法。用这种方法表示的概念性数据模型又称为ER模型。ER模型中包含“实体”,“联系”和“属性”。

图书管理系统涉及的实体包括:

(1)读者:读者ID、读者姓名、性别、读者类型、出生日期、读者证件类型、证件号码、电话、读者邮箱、读者注册日期、注册操作员、备注、借阅次数、总次数。

(2)图书:图书条形码ID、图书名称、类型、图书作者、翻译、出版社、价格、页码、存储数量、入图库时间、图书借阅次数。

(3)管理员:管理员ID、名称、密码。

(4)图书书架:书架ID、书架名称。

综合子模块要实现的功能,通过前面的分析的到:管理员信息表、书架信息表、图书信息表、图书类型信息表、图书借还信息表、权限信息表、读者信息表、读者类型表的概念模型(E-R)。

读者信息E-R图如图4-1所示。

图4-1 读者E-R图管理员E-R图如图4-2所示。

图4-2 管理员E-R图图书信息E-R图如图4-3所示。

图4-3 图书信息E-R图书架信息E-R图如图4-4所示。

图4-4 书架信息E-R图

3.2系统数据表设计

(1)读者信息表,此表主要保存读者的信息。其结构如表4-1。

表4-1 读者信息表

(2)管理员信息表,此表用于存放管理员的基本信息。其结构如表4-2所示。

表4-2 管理没信息表

(3)图书信息表,此表用于存放图书有关信息。其结构如表4-3所示。

表4-3 图书信息表

(4)图书借阅表,此表用于存放图书借阅信息。

图书借还信息表

3.3数据连接

使用目前流行的数据库连接技术https://www.doczj.com/doc/c32592985.html,。Web和分布式应用程序要求非连接的计算机环境,就是在初始化客户连接时,短暂的打开一个数据连接,一旦从数据库中检索完请求的数据,即关闭连接。然后客户应用程序独立维护这些数据。在客户应用程序修改后要将它们发送回数据库服务器时,会再次短暂打开一个连接,将客户应用程序将进行的修改用一条更新批处理命令发送给数据库后,再次断开连接。后以这种非连接的机制把系统的开销降到了最低限度,提高了应用程序的吞吐量和可伸缩性。

郑州大学信息工程学院毕业设计论文4功能模块类

在网站开发项目中以类的形式组织、封装一些常用的方法和事件,将会在开发的过程中起到事半功倍的效果。本系统中创建了13个公共类文件,位于App_Code文件夹中。分别为:DataBase.cs 数据库操作类

AdminManage.cs 管理员功能模块类

BookcaseManage.cs 书架管理功能模块类

BookManage.cs 图书管理功能模块类

BorrowandBackManage.cs 图书借还管理功能模块类

BTypeManage.cs 图书类型管理功能模块类

LibraryManage.ce 图书馆信息功能模块类

PubManage.cs 出版社信息功能模块类

PurviewManage.cs 管理员权限功能模块类

ReaderManage.cs 读者管理功能模块类

RTypeManage.cs 读者类型功能模块类

OperatorClass.cs 基础数据操作类

ValidateClass.cs 数据验证类

各种功能模块类主要用于处理业务逻辑功能。

4.1 DataBase.cs (数据库操作类)

DataBase.cs文件主要用来访问SQL SERVER 2005数据库,由于要访问数据库,首先要添加命名空间using System.Data.SqlClient,

代码:using System;

using System.Data;

using System.Configuration;

using System.Web;

using System.Web.Security;

using System.Web.UI;

using System.Web.UI.WebControls;

using System.Web.UI.WebControls.WebParts;

using System.Web.UI.HtmlControls;

using System.Data.SqlClient;

DataBase.cs 中每一个方法都要用到数据库连接对象,所以创建了个全局数据库连接对象con。有八个方法,ConnectionString节点在webconfig文件中定义了连接数据库的字符串。

public class DataBase:IDisposable

{

public DataBase()

{

// TODO: 在此处添加构造函数逻辑

}

private SqlConnection con; //创建连接对象

4.1.1打开数据库连接

判断连接对象是否为空,如果为空为它赋值,在判断连接对象是否打开,如果关闭Open()方法将其打开。

#region 打开数据库连接

/// 打开数据库连接

private void Open()

{

// 打开数据库连接

if (con == null) //判断链接对象是否为空

{

con = new

SqlConnection(ConfigurationManager.AppSettings["ConnectionString"]);

}

if (con.State == System.Data.ConnectionState.Closed)

con.Open();

}

#endregion

4.1.2关闭连接

如果打开Close()方法将其关闭。

#region 关闭连接

/// 关闭数据库连接

public void Close()

{

if (con != null)

con.Close();

}

#endregion

4.1.3释放数据库连接资源

用重写的Dispose方法释放资源。

#region 释放数据库连接资源

/// 释放资源

public void Dispose()

{

// 确认连接是否已经关闭

if (con != null)

{

con.Dispose();

con = null;

}

}

#endregion

4.1.4传入参数并且转换为SqlParameter类型

本系统都是用参数读入数据,好处是可以防止一些注入,比如阻止一些非法字符。ParameterDirection Direction属参数方向判断是输入还是输出参数。

#region 传入参数并且转换为SqlParameter类型

/// 转换参数

public SqlParameter MakeInParam(string ParamName, SqlDbType DbType, int Size, object Value)

//命令为本要转换的参数类型参数大小参数值

{

return MakeParam(ParamName, DbType, Size, ParameterDirection.Input, Value);

}

/// 初始化参数值

public SqlParameter MakeParam(string ParamName, SqlDbType DbType, Int32 Size, ParameterDirection Direction, object Value)

{

SqlParameter param;

if (Size > 0)

param = new SqlParameter(ParamName, DbType, Size);

else

param = new SqlParameter(ParamName, DbType);

param.Direction = Direction;

if (!(Direction == ParameterDirection.Output && Value == null))

param.Value = Value;

return param;

}

#endregion

4.1.5执行参数命令文本

RunProc用来执行参数命令文本,可重载,不返回数据库中的数据。

#region 执行参数命令文本(无数据库中数据返回)

/// 执行命令

public int RunProc(string procName, SqlParameter[] prams)

{

SqlCommand cmd = CreateCommand(procName, prams);

cmd.ExecuteNonQuery();

this.Close();

//得到执行成功返回值

return (int)cmd.Parameters["ReturnValue"].Value;

}

/// 直接执行SQL语句

public int RunProc(string procName)

{

this.Open();

相关主题
文本预览
相关文档 最新文档