




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、目 录 一、引言一、引言.1 二、系统分析二、系统分析.2 (一)需求分析.2 (二)系统功能分析.2 (三)主要业务流程分析.3 三、系统设计三、系统设计.5 (一)系统总体结构设计.5 (二)系统架构设计.7 (三)数据库设计.9 (四)开发及运行环境.11 四、系统实现四、系统实现.11 (一)图书管理模块设计.11 (二)图书借还模块设计.16 五、系统测试五、系统测试.19 六、总结六、总结.19 参考文献参考文献.19 基于 WinForm 的图书馆管理系统设计 (电子信息工程系 计算机应用技术 092 班 苏丹丹) 摘要:随着人类社会的发展,人们对知识的需求不断地增长。在这种形势
2、下,书 籍渐渐地成为人们获得和增长知识的主要途径,而图书馆就自然而然地在人们的生活 中占据了一定的位置,如何科学地管理图书不仅关系到读者求知的方便程度,也关系 到图书馆的发展,因此,就需要对图书馆中的图书进行系统的管理。图书馆管理系统 可以有效的管理图书资源,控制图书的添加,删除,修改,借阅的流程同时还可以对 读者进行有效的管理, 这样不仅可以提高了图书的检索效率还能减少图书管理员的工 作负担。该图书管理系统是通过可行性分析、需求分析进行设计开发的,其具备方便、 快捷的特点,为工作人员建立高效的工作质量、减小出错概率提供了技术保障。 关键字:图书馆管理系统;检索;效率 一、引言 当今时代是飞速
3、发展的信息时代。在各行各业中离不开信息处理,计算机被广泛应用于信息 管理系统的环境。计算机的最大好处在于利用它能够进行信息管理,使用计算机进行信息控制,不 仅提高了工作效率,而且大大的提高了其安全性。尤其对于复杂的信息管理,计算机能够充分发挥 它的优越性。计算机进行信息管理与信息管理系统的开发密切相关,系统的开发是系统管理的前提。 本系统就是为了管理好图书馆信息而设计的。 图书馆作为一种信息资源的集散地,图书和用户借阅资料繁多,包含很多的信息数据的管理, 现今,有很多的中小型图书馆都是初步开始使用,甚至尚未使用计算机进行信息管理。根据调查得 知,他们以前对信息管理的主要方式是基于文本、表格等纸
4、介质的手工处理,对于图书借阅情况 (如借书天数、超过限定借书时间的天数)的统计和核实等往往采用对借书卡的人工检查进行,对 借阅者的借阅权限、以及借阅天数等都要求用人工计算、手抄进行。数据信息处理工作量大,容易 出错;由于数据繁多,容易丢失,且不易查找。总的来说,缺乏系统,规范的信息管理手段。尽管 有的图书馆有计算机,但是尚未用于信息管理,没有发挥它的效力,资源闲置比较突出,这就是管 理信息系统的开发的基本环境。 随着计算机技术的不断发展,计算机应用于各大领域,并给人们的生活带来了极大的便利,图 书馆管理信息系统亦是如此。以往图书馆管理系统由于缺乏适当的软件而给其工作带来了很多不便。 本论文所介
5、绍的图书馆管理系统就是为了使图书管理工作规范化,系统化,程序化,避免图书管理 的随意性,提高信息处理的速度和准确性,能够及时、准确、有效的查询和修改图书情况。 二、系统分析 (一)需求分析 1、需求分析 随着计算机应用技术的普及和国民经济信息化的发展,信息技术与应用环境分离已不再可能, 利用计算机实现图书管理已经越来越广泛。实现计算机处理图书信息,不仅可以使图书管理人员以 最少的劳动和最短的时间取得足够的、可靠的、准确的信息,更重要的是可以从简单的数据统计、 收集、汇总等重要繁琐的事务中解脱出来。一个图书馆要生存要发展,必须具备一套与自身实际情 况相适应的管理系统,本系统正是通过对某图书馆实际
6、需求进行分析,采用.NET 语言作为开发工 具而开发出来的单机版图书管理系统。 根据市场的需求,要求系统具有以下功能: (1)系统操作简单,界面友好。 (2)规范、完善的基础信息设置。支持多人操作,要求有较好的权限分配功能。 (3)能够查看图书馆内所存图书信息并可添加、修改以及删除图书信息。 (4)能够实现对读者档案的查询和编辑管理。 (5)能够进行借阅历史的查询功能。 (6)具有数据备份及数据恢复功能,保证系统数据的安全。 2、可行性分析 技术可行性是从前台和后台的开发工具选择上进行分析的。微软公司开发的.NET 远远超越了 ASP 及其它开发软件,同时也给.Net 开发人员提供了更好的灵活
7、性,有效缩短了 C#应用程序的开 发周期。而 SQL Server 是 Microsoft 公司开发的大型关系数据库管理系统,具有强大的关系数据 库创建开发、设计和管理功能。鉴于我们已经学过 Visual Studio 2008,熟悉其中的一些最基本 的功能设计及编写 C#代码的基本操作。SQL Server 2005 数据库的基本运用我们也已经掌握。 (二)系统功能分析 1、 系统功能分析 (1)基本功能需求 系统开发的总体任务是实现各种信息的系统化、规范化和自动化。系统功能分析是在系统开发 的总体任务的基础上完成。图书馆管理系统需要完成的功能主要有: 1)有关读者类别标准的制定、类别信息的
8、输入,包括类别编号、类别名称、借书数量等。 2)读者类别信息的修改、查询等。 3)读者基本信息的输入,包括读者编号、姓名、类别、性别、所属系部、电话号码等。 4)读者基本信息的查询、修改,包括读者编号、姓名、类别、性别等。 5)图书类别标准的制定、类别信息的输入,包括类别编号、类别名称、关键词等。 6)图书类别信息的查询、修改,包括图书编号、图书名称、关键词等。 7)图书信息的输入,包括图书编号、名称、类别、作者名称、出版社名称、出版日期、价格 等。 8)借书和还书信息的输入、查询、修改。 9)读者对图书馆的留言、查看。 上述功能可以用 UML 用例图来描述,如图 1 所示: 图 1 系统用例
9、图 (三)主要业务流程分析 1、业务流程分析 根据图书馆管理系统基本功能的分析,我们可以将系统分为:系统管理模块、书籍信息管理模 块、借阅信息管理模块、读者信息管理模块等等。如此要将系统的管理权限分为:管理员与用户。 作为管理员,他们对图书馆管理系统的要求有: (1)能够管理用户信息、图书信息及借还信息,并对它们进行增、删、改、查等操作。 (2)能够对管理员、用户进行密码更改,权限设置。 (3)能够对图书进行高级搜索并查看详细信息。 作为用户,他们对图书馆管理系统的要求有: (1)能够管理用户信息,对主要字段进行修改。 (2)能够对用户进行密码更改。 (3)能够查询图书的详细信息。 (4)可以
10、查看图书的借阅情况。 2、主要业务流程活动图 下面是我们通过分析图书管理系统业务流程描绘部分的流程图,如图 2、3 所示: 图 2 管理员活动图 图 3 用户活动图 三、系统设计 (一)系统总体结构设计 1、项目规划 图书管理系统是一款将用户信息、图书信息进行一体化管理的系统。上章我们对图书管理系统 的系统分析,总结出系统功能包括系统设置模块、读者管理模块、图书信息管理模块、图书借还模 块、系统查询模块、系统维护模块。其规划功能模块如下: (1)系统设置模块:权限设置。 (2)读者管理模块:添加、修改、删除读者。 (3)图书管理模块:添加、修改、删除图书信息。 (4)图书借还模块:查询借书人的
11、借还书状态,添加借书信息,删除借书信息。 (5)系统查询模块:可根据不同的条件(书名、类别、出版社、作者等)查询读者需要的图 书、读者可根据不同的条件(作者、出版社、索取号、丛书名、类别)查询图书借阅信息。 (6)系统维护模块:更改密码。 2、系统功能结构 本系统共分 6 大部分、11 个完整的功能模块。系统总结构图,如图 4 所示。 图 4 功能模块图 3、系统模块图 登录模块:登录者的身份有管理员和用户,如图 5 所示: 图 5 登录模块图 系统管理模块:分为管理员与用户;管理员拥有所有系统管理的权限,用户根据拥有其管理功 能。如图 6、图 7 所示: 图 6 用户系统管理模块图 图 7
12、管理员系统管理模块图 (二)系统架构设计 1、系统登录的设计 (1)登录界面设计。如图 8 所示: 图 8 登录界面 (2)登录情况介绍 1)从列表框里输入用户名,此列表框内的用户直接与数据库里用户表相关联。 2)输入密码。判断该密码与工作人员表中定义的密码是否相符。如果不正确,提示输入错误 的信息。如果正确,用户登录,进入可操作界面。 3)修改密码:如果发现密码不安全,可以通过“修改密码”对密码进行修改,同时数据库的 相应信息也会同时修改。 4)注册用户:普通用户只有通过用户注册才可进入此系统,保证系统的安全性。 2、系统主界面设计 (1) 管理员系统主界面设计,如图 9 所示: 图 9 管
13、理员系统主界面 (2) 系统主体功能简要介绍 1)用户管理模块:添加用户、用户维护。 2)图书管理模块:添加图书信息、图书维护、高级搜索。 3)个人信息管理模块:修改密码。 4)返回主页面:跳转到主页面。 (三)数据库设计 1、E-R 图 概念结构设计 E-R 图,如图 10 所示: 图 10 程序总体 E-R 图 2、 数据库模型 数据库模型图,如图 11 所示: 图 11 数据库模型图 3、数据字典 本系统采用的是 SQL Server 2005 的数据库,系统数据库名为 LibrarySystem。 (1)图书信息表,表名:tb_BookInfo 序号序号列名列名数据类型数据类型长度长度
14、小数位小数位标识标识主键主键允许空允许空 1BookNonvarchar500 是否 2BookNamenvarchar500 是否 3Authornvarchar500 否 4Publishingnvarchar500 否 5PubTimenvarchar500 否 6Pricenvarchar500 否 表 1 图书信息表 (2)借书信息表,表名:tb_BorrowBook 序号序号列名列名数据类型数据类型长度长度小数位小数位标识标识主键主键允许空允许空 1IDint40 是是否 2DZnonvarchar500 否 3DZnamenvarchar500 否 4BookNamenvarch
15、ar500 否 5BorrowDatenvarchar500 否 6WillReturnDatenvarchar500 否 表 2 借书信息表 (3)读者信息表,表名:tb_DZInfo 序号序号列名列名数据类型数据类型长度长度小数位小数位标识标识主键主键允许空允许空 1DZnonvarchar500 是否 2DZnamenvarchar500 是否 3DZsexnchar20 否 4DZagenvarchar500 否 5DZdepartmentnvarchar500 否 6DZmailnvarchar500 否 7DZTelnvarchar500 否 8BeiZhunvarchar5000
16、 否 表 3 读者信息表 (4)登录信息表,表名:tb_UserInfo 序号序号列名列名数据类型数据类型长度长度小数位小数位标识标识主键主键允许空允许空默认值默认值 1IDint40 是否 2UserNamenvarchar500 否 3UserPwdnvarchar500 否 4UserRightnvarchar500 否 1 表 4 登录信息表 (四)开发及运行环境 系统开发平台: Microsoft Visual Studio 2008。 运行平台:Windows XP/ Windows 2000/ Windows 2003。 分辨率:最佳效果 1024768 像素。 四、系统实现 本
17、系统有如下主要功能模块设计: (一)图书管理模块设计 图书管理模块主要用于进行图书信息的管理,通过此模块可以对书刊进行添加、修改、删除、 保存等相关功能的操作。书刊管理模块运行结果如图 12 所示 图 12 图书管理 1. 界面设计 (1)创建一个界面,命名为 MainForm.cs (2)在该页面内添加 GridView 控件、Button 控件、TextBox 控件。 (3)重要控件的属性设置如表 5 所示。 重要控件及属性 对象属性值 GridView1 Aligncenter 表 5 控件属性 2. 代码设计 在“添加”按钮的Click事件中添加如下代码: DB.con.Close()
18、; DB.con.Open(); string selectstr = SELECT BookNo,BookName,Author,Publishing,PubTime ,PriceFROM LibrarySystem.dbo.tb_BookInfo; SqlCommand mycom = new SqlCommand(selectstr, DB.con); SqlDataReader mydr = mycom.ExecuteReader(); lvwBook.Items.Clear(); if (!mydr.HasRows) MessageBox.Show(没有查询到数据); else wh
19、ile (mydr.Read() string BookNo= (string)mydrBookNo; string Bookname = (string)mydrBookname; string Author = (string)mydrAuthor; string Publishing = (string)mydrPublishing; string Pubtime = (string)mydrPubtime.ToString(); string Price = (string)mydrPrice.ToString(); ListViewItem lvwItem = new ListVie
20、wItem(BookNo ); lvwItem.Tag = BookNo ; lvwBook.Items.Add(lvwItem); lvwItem.SubItems.AddRange(new string Bookname,Author,Publishing, Pubtime, Price ); mydr.Close(); DB.con.Close(); 在“修改图书信息”事件中添加如下代码: private void btnUpBook_Click(object sender, EventArgs e) if (lvwBook.SelectedItems.Count = 0) Messag
21、eBox.Show(您没有输入任何记录!, 操作提示, MessageBoxButtons.OK, MessageBoxIcon.Information); else UpdateBookForm ubf = new UpdateBookForm(); ubf.txtBookNo .Text = lvwBook.SelectedItems0.SubItems0.Text.Trim(); ubf.txtBookName.Text = lvwBook.SelectedItems0.SubItems1.Text.Trim(); ubf .txtAuthor .Text = lvwBook.Selec
22、tedItems0.SubItems2.Text.Trim(); ubf .txtPublishing .Text = lvwBook.SelectedItems0.SubItems3.Text.Trim(); ubf.txtPrice .Text = lvwBook.SelectedItems0.SubItems5.Text.Trim(); ubf.Show(); 在“删除图书信息”事件中添加如下代码: private void btnDelBook_Click(object sender, EventArgs e) if (lvwBook.SelectedItems.Count = 0)
23、MessageBox.Show(您没有选择任何记录, 操作提示, MessageBoxButtons.OK, MessageBoxIcon.Information); else DialogResult choice = MessageBox.Show(确定要删除该用户吗?, 操作警 告, MessageBoxButtons.YesNo, MessageBoxIcon.Warning); if (choice = DialogResult.Yes) string sql = string.Format(delete from tb_BookInfo where TSBH=0, (string)
24、lvwBook.SelectedItems0.Tag); SqlCommand command = new SqlCommand(sql, DB.con); int result = 0; try DB.con.Open(); result = command.ExecuteNonQuery(); catch (Exception exp) MessageBox.Show(exp.Message); finally DB.con.Close(); if (result 1) MessageBox.Show(删除失败!, 操作结果, MessageBoxButtons.OK, MessageBo
25、xIcon.Exclamation); else MessageBox.Show(删除成功!, 操作结果, MessageBoxButtons.OK, MessageBoxIcon.Information); DB.con.Open(); string selectstr = select * from tb_Book; SqlCommand mycom = new SqlCommand(selectstr, DB.con); SqlDataReader mydr = mycom.ExecuteReader(); lvwBook.Items.Clear(); if (!mydr.HasRows
26、) MessageBox.Show(没有查询到数据); else while (mydr.Read() string BookNo = (string)mydrBookNo; string Bookname = (string)mydrBookname; string Author = (string)mydrAuthor; string Publishing = (string)mydrPublishing; string Pubtime = (string)mydrPubtime.ToString(); string Price = (string)mydrPrice.ToString()
27、; ListViewItem lvwItem = new ListViewItem(BookNo); lvwItem.Tag = BookNo; lvwBook.Items.Add(lvwItem); lvwItem.SubItems.AddRange(new string Bookname, Author, Publishing, Pubtime, Price ); mydr.Close(); DB.con.Close(); 添加图书信息 DB.con.Open(); string insertstr =INSERT INTO LibrarySystem.dbo.tb_BookInfo (B
28、ookNo ,BookName ,Author ,Publishing ,PubTime ,Price) VALUES( + txtBookNo.Text + , + txtBookname.Text + , + txtAuthor.Text + , + txtPublishing.Text + , + dateTimePicker1.Value + , + txtPrice.Text + ); SqlCommand com = new SqlCommand(insertstr, DB.con); int i = com.ExecuteNonQuery(); label7.Text =成功添加
29、+ i.ToString() + 本新书; DB.con.Close(); (二)图书借还模块设计 图书借还模块主要用于进行图书的借阅。图书借还模块运行结果如图 13,图 14 所示。 图 13 图书借阅管理 1. 设面设计 (1)在创建的 MainForm.cs 中创建“借书管理”界面。 (2)在该页面内添加 TextbBox 控件、button 控件、GridView1 控件。 (3)重要控件的属性设置如表 6 所示。 重要控件及属性 对象属性值 GridView1 Text 借书登记 表 6 控件属性 2. 代码设计 查询借书信息的 Click 事件添加如下代码: DB.con.Open
30、(); string selectstr = SELECT *FROM LibrarySystem.dbo.tb_BorrowBookwhere DZno like % + textBox1 .Text .Trim () + %; SqlCommand mycom = new SqlCommand(selectstr, DB.con); DataSet ds = new DataSet(); SqlDataAdapter da = new SqlDataAdapter(mycom); da.Fill(ds); dgvSearch.DataSource = ds.Tables0; DB.con.
31、Close(); (3)图书归还模块运行结果如图14 图 14 图书归还 1. 设面设计 (1)在创建的 MainForm.cs 中创建“还书管理”界面。 (2)在该页面内添加 TextbBox 控件、Botton 控件、GridView2 控件。 (3)重要控件的属性设置如表 7 所示。 重要控件及属性 对象属性值 GridView2 Text 还书登记 表 7 控件属性 2. 代码设计 在添加按钮的Click事件添加如下代码: DB.con.Open(); string insertstr = INSERT INTO LibrarySystem.dbo.tb_ReturnBook (DZn
32、o ,DZname ,BookName VALUES( + txtDZno.Text + , + txtDZname.Text + , + txtbookname.Text + ); SqlCommand com = new SqlCommand(insertstr, DB.con); int i = com.ExecuteNonQuery(); label7.Text = 成功添加 + i.ToString() + 位还书人信息; DB.con.Close(); (4)普通用户登录界面设计如图15 图15 用户登录界面 1. 设面设计 (1)新建 UserMainForm.cs,添加 tab
33、page1。 (2)在该页面内添加 TextbBox 控件、Botton 控件、GridView3 控件。 (3)重要控件的属性设置如表 7 所示。 重要控件及属性 对象属性值 GridView3 Text 用户登录 表 8 控件属性 2. 代码设计 在查询按钮的Click事件添加如下代码 DB.con.Close(); DB.con.Open(); string selectstr = SELECT BookNo ,BookName ,Author ,Publishing ,PubTime ,Price FROM LibrarySystem.dbo.tb_BookInfo; SqlCommand cmd = new SqlCommand(selectstr, DB.con); SqlDataAdapter da = new SqlDataAdapter(cmd); DataSet ds = new
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024电工试卷含答案详解【突破训练】
- 2025年巫术预测考试题及答案
- 新能源行业2025年:技术创新与环保责任发展新方向
- 2025年初级育婴员职业技能鉴定高分必过试题库800题(含答案)
- 招商银行西宁市城中区2025秋招笔试专业知识题专练及答案
- 中信银行呼和浩特市新城区2025秋招结构化面试经典题及参考答案
- 平安银行大连市西岗区2025秋招笔试价值观测评题专练及答案
- 浦发银行佛山市禅城区2025秋招半结构化面试题库及参考答案
- 民生银行厦门市湖里区2025秋招小语种岗笔试题及答案
- 浦发银行济南市槐荫区2025秋招笔试综合模拟题库及答案
- 《传统书画装裱与修复中材料的选择与运用》
- 2024ESC心房颤动管理指南解读
- 防洪排涝工程合同范本有效
- 高血压病基层诊疗指南
- 医院视频监控系统维保方案
- 门诊护士课件教学课件
- 《大学生的人际关系》课件
- 职务侵占罪培训
- 中式烹调师技能等级认定四级理论知识试卷
- DB65-T 4784-2024 冰川范围调查技术规范
- 幼儿园礼仪小天使《借物品》教学课件
评论
0/150
提交评论