C#课程设计图书馆管理信息系统.docx

上传人:b****6 文档编号:7348775 上传时间:2023-01-23 格式:DOCX 页数:23 大小:198.77KB
下载 相关 举报
C#课程设计图书馆管理信息系统.docx_第1页
第1页 / 共23页
C#课程设计图书馆管理信息系统.docx_第2页
第2页 / 共23页
C#课程设计图书馆管理信息系统.docx_第3页
第3页 / 共23页
C#课程设计图书馆管理信息系统.docx_第4页
第4页 / 共23页
C#课程设计图书馆管理信息系统.docx_第5页
第5页 / 共23页
点击查看更多>>
下载资源
资源描述

C#课程设计图书馆管理信息系统.docx

《C#课程设计图书馆管理信息系统.docx》由会员分享,可在线阅读,更多相关《C#课程设计图书馆管理信息系统.docx(23页珍藏版)》请在冰豆网上搜索。

C#课程设计图书馆管理信息系统.docx

C#课程设计图书馆管理信息系统

 

河南理工大学

计算机科学与技术学院

课程设计

2011—2012学年第二学期

 

课程名称C#Windows程序设计课设

设计题目图书馆管理信息系统

学生姓名

学号

专业班级

指导教师

2012年6月15日

1.设计任务书………………………………………………………………3

1.1项目目地………………………………………………………………3

1.2题目与要求……………………………………………………………3

1.2本系统涉及的知识点…………………………………………………3

2.功能设计…………………………………………………………………4

2.1.系统功能概述…………………………………………………………4

2.2功能设计………………………………………………………………4

3.数据库设计………………………………………………………………4

3.1数据库分析…………………………………………………………4

3.2系统的E-R模型………………………………………………………5

3.3创建数据表……………………………………………………………6

3.4数据库中表的关系…………………………………………………6

4.系统实现…………………………………………………………………7

4.1登陆界面……………………………………………………………7

4.2应用程序主界面………………………………………………………11

4.3图书查询操作…………………………………………………………11

4.4借阅查询操作…………………………………………………………14

4.5用户管理……………………………………………………………17

5.总结…………………………………………………………………………20

6.参考文献……………………………………………………………………12

 

1.设计任务书

1.1项目目的

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

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

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

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

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

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

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

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

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

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

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

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

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

1.2题目与要求

本人计划与刘贺和王刘英编写一个图书馆管理信息系统,主要用来管理研究生的基本信息及成绩信息。

本图书馆管理信息系统具有以下特点:

1.实现图书馆的归档、借出、归还和查找等操作;

2.实现对图书馆的借阅、读者的管理、书库的增减等操作;

3.界面设计简单、操作方便。

本系统的功能主要包括以下几个方面:

1.能随时查询图书的库存量,以便准确、及时、方便地为读者提供借阅信息。

但不能修改数据,无信息处理权,即只可以浏览数据,管理权限由系统管理员掌握和分配;

2.图书馆各项信息必须保证安全性和完整性;

3.系统管理员定时整理系统数据库,实现对图书的借阅、读者的管理、书库的增减等操作,并将运行结果归档。

1.3本系统设计的知识点

WinForm常用控件、属性、方法,ADO.NET技术。

2.功能设计

2.1.系统功能概述

图书馆管理信息系统是典型的信息管理系统,其开发主要包括后台数据库的建立和维护以及前台应用程序的开发两个方面,一方面要求建立起数据一致性和完善性强、数据安全性好的数据库;另一方面则要求应用程序具有功能完备,易使用等特点。

原来的图书管理处理中心进行信息管理主要是基于手工处理,信息处理工作量大,容易出错,缺乏系统、规范的信息管理手段。

现在准备建立的图书管理系统,要对图书馆的图书管理、读书借阅等日常管理工作实行计算机统一管理,以提高工作效率和管理水平。

图书馆作为提供学习的场所,不仅要求便于管理,而且要求给读者和借阅者提供方便快速的查找、借阅和登记手续。

图书馆需要统一图书的管理,对各类书籍的借阅情况和图书馆现有藏书的数量、种类要及时掌握,这就要求它具有很强的时效性。

既要减少旧书和大量内容重复的图书占用有限的空间而又尽量做到图书种类的齐全,作为图书馆的管理人员需要及时地对图书进行上架和注销处理。

2.2功能设计

本图书馆管理信息系统的功能由登录界面和主窗体界面两部分的功能组成。

其中主窗体界面的功能由系统管理、图书管理、用户管理等模块组成。

具体如下:

(1)主界面设计

首页设计应该清晰简单、美观大方,同时还要做到信息充足,突出图书馆的特点和操作的入口。

(2)系统管理

在系统设置中可以对借阅设置、图书借阅时限设置、类别设置、图书借阅数量设置。

(3)用户管理

只有登录后的用户才可以对图书进行管理,登录人员姓名/密码组合来进行验证。

(4)图书管理

对图书增加、删除、修改、注销、遗失等事件的处理。

以便管理员对图书的信息直观而且有效的进行处理。

3.数据库设计

3.1数据库分析

本系统利用VisualStudio2008处理数据库的功能,实现对图书馆信息的管理。

主要功能为管理有关用户、管理员、书籍和借阅的信息等。

  本系统的结构分为用户信息管理模块、书籍信息管理模块、借阅信息管理模块、管理者管理信息模块和查询处理模块。

图书馆管理系统框图如图2.1所示

 

图2.1图书馆管理系统框图

3.2系统的E-R模型

该图书管理系统的E-R模型,如图2.2所示

 

2.2系统的E-R模型

3.3创建数据表

创建数据库后,为BookManage数据库添加数据表,步骤如下。

  

(1)在服务器资源管理器中右击数据库BookManage下的“表”文件夹在弹出的快捷菜单中执行“新建表”命令。

  

(2)添加表的字段和其他详细资料。

各表数据结构如下表所示。

  表3-1用户信息(userinfo)

列 名

含义

数据类型

说明

UID

用户ID

int

自动,主键

UName

用户名

vchar(50)

不为空

UPwd

密码

vchar(50)

不为空

UState

用户权限,管理员=1,普通用户=2

int

不为空,默认值为2

UBookID

借阅证号

bigint

可以为空

 

 

 表3-2图书信息(bookinfo)

列 名

含义

数据类型

主 键

BookID

图书ID

bigint

自动,主键

BookName

图书名称

Varchar(50)

不为空

BookType

类别

Varchar(100)

不为空

BookAuthor

作者

Varchar(100)

不为空

BookPrice

价格

smallmoney

不为空

BookPic

封面

Varchar(200)

允许为空

BookContent

内容简介

text

不为空

BookIssue

图书制定访问码

Varchar(50)

不为空

 

  表3-3借阅信息(issueinfo)

列 名

含义

数据类型

说明

IssID

借阅ID

bigint

自动,主键

BookID

图书ID

bigint

外键

IssBookID

借阅证号

bigint

不为空

IssDateTime

借书日期

datetime

不为空

3.4数据库中表的关系

在数据库中新建BookManage数据库的数据库关系图如图2.4所示

图2.4数据库关系图

4.系统实现

4.1登陆界面

4.1.1登陆界面编码

usingSystem;

usingSystem.Drawing;

usingSystem.Collections;

usingSystem.ComponentModel;

usingSystem.Windows.Forms;

usingSystem.Data;

usingSystem.Data.OleDb;

namespaceLibraryMIS

{

publicclassLogin:

System.Windows.Forms.Form

{

privateSystem.Windows.Forms.ButtonbtClose;

privateSystem.Windows.Forms.ButtonbtAdd;

privateSystem.Windows.Forms.TextBoxpassword;

privateSystem.Windows.Forms.TextBoxname;

privateSystem.Windows.Forms.Labellabel3;

privateSystem.Windows.Forms.Labellabel2;

privateSystem.Windows.Forms.Labellabel1;

privateSystem.Windows.Forms.GroupBoxgroupBox1;

privateSystem.Windows.Forms.RadioButtonradioPerson;

privateSystem.Windows.Forms.RadioButtonradioManage;

privateSystem.ComponentModel.Containercomponents=null;

privateOleDbConnectionoleConnection1=null;

publicLogin()

{

InitializeComponent();

this.oleConnection1=newOleDbConnection(LibraryMIS.database.dbConnection.connection);

}

protectedoverridevoidDispose(booldisposing)

{

if(disposing)

{

if(components!

=null)

{

components.Dispose();

}

}

base.Dispose(disposing);

}

 

staticvoidMain()

{

Application.Run(newmain());

}

privatevoidbtAdd_Click(objectsender,System.EventArgse)

{

if(name.Text.Trim()==""||password.Text.Trim()=="")

MessageBox.Show("请输入用户名和密码","提示");

else

{

oleConnection1.Open();

OleDbCommandcmd=newOleDbCommand("",oleConnection1);

if(radioManage.Checked==true)

{

stringsql="select*frommanagerwhereMName='"+name.Text.Trim()+"'andMCode='"+password.Text.Trim()+"'";

cmd.CommandText=sql;

if(null!

=cmd.ExecuteScalar())

{

this.Visible=false;

mainmain=newmain();

main.Tag=this.FindForm();

OleDbDataReaderdr;

cmd.CommandText=sql;

dr=cmd.ExecuteReader();

dr.Read();

main.menuItem1.Visible=(bool)(dr.GetValue

(2));

main.menuItem2.Visible=(bool)(dr.GetValue

(2));

main.menuItem3.Visible=(bool)(dr.GetValue

(2));

main.menuItem5.Visible=(bool)(dr.GetValue(4));

main.menuItem4.Visible=(bool)(dr.GetValue(3));

main.menuItem5.Visible=(bool)(dr.GetValue(4));

main.statusBarPanel2.Text=name.Text.Trim();

main.statusBarPanel6.Text="管理员";

main.ShowDialog();

}

else

MessageBox.Show("用户名或密码错误","警告");

}

elseif(radioPerson.Checked==true)

{

stringsql="select*frompersonwherePID='"+name.Text.Trim()+"'andPCode='"+password.Text.Trim()+"'";

cmd.CommandText=sql;

if(null!

=cmd.ExecuteScalar())

{

this.Visible=false;

mainmain=newmain();

main.Tag=this.FindForm();

OleDbDataReaderdr;

cmd.CommandText=sql;

dr=cmd.ExecuteReader();

dr.Read();

main.menuItem1.Visible=(bool)(dr.GetValue(9));

main.menuItem2.Visible=(bool)(dr.GetValue(9));

main.menuItem3.Visible=(bool)(dr.GetValue(9));

main.menuItem4.Visible=(bool)(dr.GetValue(9));

main.statusBarPanel2.Text=name.Text.Trim();

main.statusBarPanel6.Text="读者";

main.ShowDialog();

}

else

MessageBox.Show("用户名或密码错ª误","警告");

}

else

MessageBox.Show("没有选择角色","提示");

oleConnection1.Close();

}

}

privatevoidbtClose_Click(objectsender,System.EventArgse)

{

this.Close();

}

privatevoidLogin_Load(objectsender,EventArgse)

{

}

}

}

4.2应用程序主界面

 

4.3图书查询操作

4.3.1图书查询设计

在主界面中选择【查询管理】|【图书查询】命令菜单,即可进入查询图书界面,如图所示。

 

在该界面上共有三个查询条件:

图书编号、图书名和作者。

单击【查询】按钮,根据查询条件得出的图书信息将显示在DataGrid控件中,并且计算出该图书目前在库中的数量。

该窗体中设计了3个TextBox控件、2个Button控件和1个DataGrid控件。

4.3.2图书查询代码

usingSystem;

usingSystem.Drawing;

usingSystem.Collections;

usingSystem.ComponentModel;

usingSystem.Windows.Forms;

usingSystem.Data;

usingSystem.Data.OleDb;

namespaceLibraryMIS

{

publicBookQuery()

{

InitializeComponent();

this.oleConnection1=newOleDbConnection(LibraryMIS.database.dbConnection.connection);

}

protectedoverridevoidDispose(booldisposing)

{

if(disposing)

{

if(components!

=null)

{

components.Dispose();

}

}

base.Dispose(disposing);

}

privatevoidbtQuery_Click(objectsender,System.EventArgse)

{

stringsql1="(BNum-(selectcount(*)frombookOutwhere";

stringsql="selectBIDas“图书编号”BNameas图书名,BWriteras作者,BPublishas出版社,BDateteas出版日期,BPriceas价格,BNumas数量,typeas类型,BRemarkas备注";

if(textID.Text.Trim()!

="")

{

sql1=sql1+"BID="+"'"+textID.Text.Trim()+"'))as库存数量";

sql=sql+sql1+"frombookwhereBID="+"'"+textID.Text.Trim()+"'";

}

elseif(textName.Text.Trim()!

="")

{

sql1=sql1+"BID=(selectBIDfrombookwhereBName='"+textName.Text+"')))as库存数量";

sql=sql+sql1+"frombookwhereBName="+"'"+textName.Text+"'";

}

elseif(textWriter.Text.Trim()!

="")

{

sql1=sql1+"BID=(selectBIDfrombookwhereBWriter='"+textWriter.Text+"')))as库存数量";

sql=sql+sql1+"frombookwhereBWriter="+"'"+textWriter.Text+"'";

}

else

{

MessageBox.Show("请输入查询条件","提示");

return;

}

oleConnection1.Open();

OleDbDataAdapteradp=newOleDbDataAdapter(sql,oleConnection1);

DataSetds=newDataSet();

ds.Clear();

adp.Fill(ds,"book");

dataGrid1.DataSource=ds.Tables[0].DefaultView;

dataGrid1.CaptionText="共有"+ds.Tables[0].Rows.Count+"条查询记录";

oleConnection1.Close();

}

privatevoidbtClear_Click(objectsender,System.EventArgse)

{

textID.Text="";

textName.Text="";

textWriter.Text="";

}

privatevoidbtClose_Click(objectsender,System.EventArgse)

{

this.Close();

}

}

}

4.4借阅查询操作

4.4.1借阅查询设计

选择【查询管理】|【借阅管理】命令菜单,即可进入查询借阅界面,显示当前登录用户的个人信息和已借图书信息,如图所示。

 

 

该窗体中设计了3个DataGrid控件,其中一个控件用来传递数据,不显示。

4.4.2借阅查询编码

 

usingSystem;

usingSystem.Drawing;

usingSystem.Collections;

usingSystem.

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

当前位置:首页 > 小学教育 > 语文

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

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