采用C#.NET开发的图书管理系统.doc

上传人:文库蛋蛋多 文档编号:2385501 上传时间:2023-02-17 格式:DOC 页数:24 大小:1.12MB
返回 下载 相关 举报
采用C#.NET开发的图书管理系统.doc_第1页
第1页 / 共24页
采用C#.NET开发的图书管理系统.doc_第2页
第2页 / 共24页
采用C#.NET开发的图书管理系统.doc_第3页
第3页 / 共24页
采用C#.NET开发的图书管理系统.doc_第4页
第4页 / 共24页
采用C#.NET开发的图书管理系统.doc_第5页
第5页 / 共24页
点击查看更多>>
资源描述

《采用C#.NET开发的图书管理系统.doc》由会员分享,可在线阅读,更多相关《采用C#.NET开发的图书管理系统.doc(24页珍藏版)》请在三一办公上搜索。

1、图书管理系统是采用C#.NET开发的一个数据库管理系统。开发本系统的基本步骤:需求分析、系统概念设计、系统逻辑和物理设计、系统实现和维护。在系统分析中先后用数据流程、系统的功能结构图、ER图分析了系统所需的各种数据。在系统的设计过程中,我们采用了模块独立设计法,比较详细的展现了各个模块的功能。在库和表的设计当中, 我们力求层次清晰,设计简单实用。在系统具体实行阶段中,我们精心细致的画出了各个窗体并给出了相应的事件和代码,以实现各个窗体的作用。本系统虽然设计简单,但有一定的实用性。系统的功能较为全面,操作方便。关键词:数据库、SQL Server2005、C#.NET、图书、图书馆管理目录摘要

2、2引言4第1章 系统概述51.1需求分析51.2 系统需求7第2章数据库设计102.1 创建数据库10第3章 界面设计153.1登录界面设计153.2主界面的设计163.3功能界面设计163.3.1读者类别管理界面设计163.3.2读者档案管理界面设计173.3.3图书类别设置界面设计173.3.4图书档案管理界面设计183.3.5图书征订界面设计193.3.6图书借阅界面设计193.3.7图书归还界面设计203.3.8逾越清单界面设计213.3.9罚款清单界面设计21第4章 部分功能代码的编写及分析22第5章 测试与维护245.1系统测试245.2系统维护25第6章 结论与展望25参考文献2

3、6引言当今时代是飞速发展的信息时代。在各行各业中离不开信息处理,这正是计算机被广泛应用于信息管理系统的原因。计算机的最大好处在于利用它能够进行信息管理。使用计算机进行信息控制,不仅提高了工作效率,而且大大的提高了其安全性。尤其对于复杂的信息管理,计算机能够充分发挥它的优越性。计算机进行信息管理与信息管理系统的开发密切相关,系统的开发是系统管理的前提。本系统就是为了管理好图书馆信息而设计的。图书馆作为一种信息资源的集散地,图书和用户借阅资料繁多,包含很多的信息数据的管理,现今,有很多的图书馆都是初步开始使用,甚至尚未使用计算机进行信息管理。根据调查得知,他们以前对信息管理的主要方式是基于文本,表

4、格等纸介质的手工处理,对于图书借阅情况(如借书天数,超过限定借书时间的天数)的统计和核实等往往采用对借书卡的人工检查进行,对借阅者的借阅权限,以及借阅天数等用人工计算,手抄进行。数据处理工作量大,容易出错。由于数据繁多,容易丢失,且不易查找。总的来说,缺乏系统规范的信息管理手段。尽管有的图书馆有计算机,但是尚未用于信息管理,没有发挥它的效力,资源闲置比较突出,这就是管理信息系统的开发的基于环境。基于这个问题,我认为有必要建立一个图书管理系统,使图书管理工作规范化,系统化,程序化,避免图书管理的随意性,提高信息处理的速度和准确性,能够及时,准确,有效的查询和修改图书情况。第1章 系统概述本图书管

5、理系统就是将传统图书馆业务的手工操作转变成由计算机馆理,即图书馆的图书期刊、音像资料等各种载体文献的采编、典藏、流通、检索及常规业务管理等工作,最终的目的以方便图书借阅者方便借阅及管理者高效、方便管理为目的。1.1需求分析图书馆管理人员功能的信息量大,数据安全性和保密性要求最高。本功能实现对图书信息、借阅者信息、总体借阅情况信息的管理和统计、工作人员和管理人员信息查看及维护。图书馆管理员可以浏览、查询、添加、删除、修改、统计图书的基本信息;浏览、查询、统计、添加、删除和修改图书借阅者的基本信息,浏览、查询、统计图书馆的借阅信息,但不能添加、删除和修改借阅信息,这部分功能应该由图书馆工作人员执行

6、。下面是图书馆管理的E-R图,如图1-1所示:图书信息图书注销图书读者信息读者类别图书借阅及征订图书类别借还书及征订图1-1:E-R图该系统的基本内容概述起来有如下:(1)对所有用户开放的图书查询;(2)借阅者查看个人借阅情况信息;(3)查询各种信息;(4)维护图书信息;(5)维护工作人员和管理员信息;(6)维护借阅者信息;(7)处理信息的完整性;1、 登录系统的流程图及管理流程,如图1-2所示:添加、修改信息写入各自数据库登录窗口身份验证身份验证正确修改图书信息读者信息修改图书注销图书遗失处理身份验证失败重新输入用户名或密码正确后进行左边的流程图操作图1-2:流程图工作人员输入读者编号和所要

7、借的图书编号,点击获取读者的类型,就可取得读者应还的时间,最后点击借书按钮就可以借阅。工作人员根据借阅者的读者编号和归还的图书编号进行图书的归还工作。图书借阅,如图1-3所示:流通管理图书借阅图书归还图书续借输入编号或条形码可以做相应的操作图1-3:图书借阅图书查询,如图1-4所示:图书信息查询可以根据条形码、编号和书名进行搜索。图书信息查询条形码编号书名连接数据库调出数据库中的数据图1-4:图书查询1.2 系统需求 通过调查,要求系统需要有以下功能: 由于操作人员的计算机知识普遍较差,要求有良好的人机界面; 由于该系统的使用对象多,要求有较好的权限管理; 原始数据修改简单方便,支持多条件修改

8、; 方便的数据查询,支持多条件查询; 在相应的权限下,删除数据方便简单,数据稳定性好; 数据计算自动完成,尽量减少人工干预;1.3系统的功能简介本系统主要可以实现以下的管理功能:读者管理、流通管理、图书管理、系统管理等等。1、 项目规划图书馆管理系统是一个典型的数据库应用程序,由系统管理、读者管理、流通管理、图书管理等模块组成,特规划如下:2、系统管理模块该模块的主要任务是维护系统的正常运行和安全性设置,包括图书管理员的登录等等。3、读者管理模块该模块的功能是实现对读者类别的设置、读者档案的管理。(1) 读者类别是对读者的分类,每一个读者都有不同的身份,如学生、老师等。(2)读者档案管理是关于

9、读者的信息,方便管理员把图书借出时,可以查看读者的信息。4、流通管理模块该模块的主要功能是对图书的借阅、归还、逾期清单和过期后罚款的一些管理。(1) 借阅是读者去图书馆借书;(2) 归还是读者归还图书,每本书都有阅读的期限;(3) 逾越清单和逾期后罚款是对于读者没有按期归还或者毁坏、丢失图书的处罚;5、图书管理模块该模块的主要功能有:图书类别设置、图书档案管理、图书征订等对图书的管理。(1) 图书类别是给图书分类,方便图书管理员管理;(2) 图书档案管理是图书的档案相当于图书的简介,和学生信息类似;(3) 图书征订是读者在图书馆预先订的书籍; 6、系统开发的目标图书馆管理系统总的实现目标是:建

10、立以馆藏目录为基础的书目数据库;实现馆内采购、编目、流通、文献检索等信息化管理;建立图书馆动态网站;接入校园网为广大师生及时提供馆内的最新信息。长期的目标还要实现直接浏览电子图书以及馆际间的图书互借。 第2章 数据库设计2.1 创建数据库在图书馆管理系统中主要是表的建立,表是由数据按一定的顺序和格式构成的数据集合,是数据库的主要对象。每一行代表一条记录,每一列代表记录的一个字段。创建表的有用方法是:创建一个基表,向其中添加一些数据。不仅有一个基表,好友很多表,这就有了表与表之间的关系。可以添加列、修改列属性、创建和删除约束。表中每一列都有一组属性,列入名称、数据类型、惟恐性和数据长度。列的所有

11、属性构成表中列的定义。列的精度数值列的行都是选定数据类型所使用的最大位数。非数值列的精度指最大长度或定义的列长度。还可以创建和删除表上的约束,删除表中的列。1、 创建数据库LibBook;2、 在数据库LibBook中创建表;(1) 读者档案表是根据每一个借书者的信息创建的表字段包括是编号、姓名、性别、出生日期、有效证件、证件号码、联系方式、登记日期、有效日期、操作员、图书借阅次数、期刊借阅次数及当图书丢失是否挂失字段,如表2-1所示:表2-1:读者档案(2) 读者类别表是根据每个读者的不同身份建立的表,如类别是教师、学生还有其他,如表2-2所示:表2-2:读者类别(3) 管理员就是管理图书的

12、工作人员,如表2-3所示:表2-3:管理员(4) 图书类别对于图书有科学类的、建筑类的电脑类的等,这是对与图书类所创建的表,如表2-4所示:表2-4:图书类别(5) 图书档案对于图书馆管理系统图书档案是必不可少的,每一本书的简介都要有详细的信息,这样便于图书的管理和读者借阅是管理,如表2-5所示:表2-5:图书档案(6) 图书罚款是对于读者丢弃了图书后要对与图书的赔款或者超过了图书借阅的期限就要罚款,如表2-6所示:表2-6:图书罚款(7) 图书归还当读者读完了书中所有的内容或者到了借阅图书的时间就必须归还,如表2-7所示:表2-7:图书归还(8) 图书借阅这是图书管最重要的功能,本系统也是针

13、对图书的借阅、归还等做的系统,下面有图片和详细的介绍,如表2-8所示:表2-8:图书借阅(9) 图书征订就是要订阅图书每张表都有字段、属性及数据。下面只介绍两个表如下图图书借阅和图书归还,如表2-9所示:表2-9:图书征订这是图书借阅的表的建立图,此表包含了表的字段:借阅编号、图书编号、读者编号、节约时间、应还时间、续借次数、操作员、状态字段,这些字段都表明了数据类型,并且数据类型的大小都不是很精确的,但是这是预测的大小,要尽可能的打就可以了。创建了表可以添加列,也可以把多余的字段删除,对于列的属性错误,也可以修改列名、数据类型、允许空,这些都可以修改,也可以创建和删除约束,列入主键,这是可以

14、创建,也可以删除等修改。第3章 界面设计3.1 登录界面设计对与管理系统中,为了提高系统的访问安全性,几乎在系统启动时都设计了身份验证,通过用户登录界面向系统的用户提供友好的身份验证,图书管理系统也是一样创建了登录界面。界面的设计首先是给界面添加了控件textbox、botton按钮等控件,如图3-1所示:图3-1:登录界面3.2主界面的设计主界面的设计中控件ToolStripSeparater表示菜单或者是工具栏中的竖直或者是水平的分割线。Statustrip向用户显示有关所查看的对象,该对象的组件或该对象的操作的信息。然后修改这些控件的属性。主界面的设计退出系统功能。主窗体我们还添加了一个

15、背景图片,如图3-2所示:图3-2:主界面3.3功能界面设计 3.3.1读者类别管理界面设计 Bindingnavigator导航条在如下如看到的是首记录、上一记录、下一记录、尾记录、删除、保存和刷新按钮,保存和刷新按钮是自己添加的,上面的图标也不是自带的,而是我们添加上去的,如图3-3所示:图3-3:读者类别管理界面3.3.2读者档案管理界面设计读者档案管理界面是关于读者信息的界面,并以指定的格式显示该日期和时间,这些控件的添加dataGridView是显示表中的数据,其他的控件添加是为了修改表中的数据,如图3-4所示:图3-4:读者档案管理界面3.3.3图书类别设置界面设计图书类别设置界面

16、就是对于图书归类,在此系统中我们的图书类别有马克思主义毛泽东思想、哲学、社会科学总论、政治法律、军事、经济、文化科学、语言文学、艺术、地理、历史等类别,对于图书类别界面中,我们可以搜索想要的图书类别,还可以显示图书的可借的天数,如图3-5所示:图3-5:图书类别界面3.3.4图书档案管理界面设计图书类别设置界面图书档案管理类别有搜索,输入条形码、编号、书名后点击搜索,就可以找到你想要的书籍,下面同样也可以对数据修改,管理员可以修改,下面同样添加了很多的控件,也是对表的内容进行修改的,如图3-6所示:图3-6:图书档案界面3.3.5图书征订界面设计图书征订这是图书馆管理的另一个功能,对于读者来说

17、也是一件很方便的事,对于读者想要的书籍每一期都有,可是去书店买书,很浪费时间,而且有时没时间去,就会错过想要的书,所以我们可以先预征订,如图3-7所示:图3-7:图书征订界面3.3.6图书借阅界面设计图书借阅界面的控件和其他界面添加的也基本一样,因为当管理员输入进读者信息是要按回车才能显示出读者的信息,要显示读者信息还要显示借阅图书信息,如图3-8所示:图3-8:图书借阅界面3.3.7图书归还界面设计图书归还界面的控件也很少,图书归还比图书借阅简单,界面也很好设计,如图3-9所示:图3-9:图书归还界面3.3.8逾越清单界面设计逾越清单界面设计也是很简单的,逾越清单界面是显示图书被借出去,有哪

18、些没归还,哪些归还了,如果没有归还或是超过了借阅时间,要怎样处理就清楚了。3.3.9罚款清单界面设计图书馆管理系统,就是为了方便图书的管理,对于每本借出的书,每本书都有借出的期限,这是为了其他读者也想读借出书着想,每本书都不能超过借阅的期限,图书的毁坏、丢失及超过期限都是要赔偿的,这样读者就会对图书保护,别的读者也可以继续借书,图3-11所示:图3-11:罚款清单界面第4章 部分功能代码的编写及分析图书馆管理的功能有:(1)登录窗体的功能即代码分析;(2)可以很清晰的知道图书馆中所收藏书的种类;(3)可以知道图书馆中所有的书;(4)图书借阅;(5)图书归还;(6)图书征订;(7)图书罚款;1.

19、登录窗体我们把他设计为渐出的效果,而且设置为在主窗体中显示,它的功能代码,由于是让登录界面渐出的效果,所以要添加timer控件,代码如下: private void timer1_Tick(object sender, EventArgs e) this.Opacity += 0.01; 登录时会有身份验证,代码如下: public bool check(string name, string password) SqlConnection dbconnection = new SqlConnection(Program.GetConnectionString(); dbconnection.

20、Open(); SqlCommand cmd = new SqlCommand(select 编号 from 管理员 where 名称= + name + and 密码= + password + , dbconnection); SqlDataReader reader = cmd.ExecuteReader(); if (reader.Read() reader.Close(); if (dbconnection.State != ConnectionState.Closed) dbconnection.Close(); return true; else dbconnection.Clo

21、se(); return false; 在这些代码里都是登录窗体,登录窗体要显示在主窗体中,所以我们把主窗体的form的IsMdiContainer属性改为True,还有下面的代码,这样我们就可以实现渐入的效果和在主窗体显示,我们还要显示提示要登录后才能使用,登录后欢迎使用。2.图书类别的代码编写同样我们也要实现此窗体在主窗体中显示,代码如下:private void 读者类别管理toolStripMenuItem_Click(object sender, EventArgs e) if (this.checkChildFrmExist(ClassifyFrm) = true) return;

22、 ReaderClassify readerclassify = new ReaderClassify(); readerclassify.MdiParent = this; readerclassify.Show(); 窗体写完后,就要写功能代码,首先要加载数据 上面的代码用到了强制转换,后面就要写加载的代码了,加载的代码有很多,首先要连接数据库,数据加载后要关闭数据连接,加载完数据代码,就要做对数据的修改,修改了这张表后,SQL Server 2005 中的表也会做相应的改变。3. 图书借阅 图书借阅可是图书馆最重要的功能,对于他的细节也增加了很多,输入编号或者条形码后按回车键就可以了,所

23、以这是新的代码功能。private void bookclassify(string s) string sqlstring = ; if (s = ) sqlstring = select * from 图书类别; else sqlstring = select * from 图书类别 where + s + ; adapter = new SqlDataAdapter(sqlstring, dbconnection); dataset = new DataSet(); adapter.Fill(dataset); bindingsource.DataSource = dataset.Tab

24、les0; bindingNavigator1.BindingSource = bindingsource; dataGridView1.DataSource = bindingsource; 这是图书借阅的一个方法,首先是图书的类别,上面就是图书类别的方法。 第5章 测试与维护5.1系统测试系统测试:采用人工测试方法进行系统的测试,先从程序调试开始,因为软件的设计需要编出很多的代码,其错误的频率相当的高,如果没有错误,则进行了系统的测试,子系统是各个模块的分支,通过测试之后,再与模块相连接,看总体的设计是否合理。刚开始测试时不必按真实情况下的数据量进行,可以采用一些精心设置的数据量作为测试用

25、例,这样不仅可以使处理工作量大大减少,而且更容易发现错误和确定错误所在范围。5.2系统维护系统的维护是系统生存的重要条件,在系统整个生命周期中,三分之二以上的经费用在系统维护上,从人力资源的分布看,现代世界上90%的软件人员在从事系统的维护工作,开发新系统的人员仅占10%,这些统计数据表明系统维护任务是十分繁重的。1、维护内容:程序的维护:在编程中有许多没有被发现的错误,在系统运营过程中,还要对程序不断更新,以确保程序能正常工作。数据文件的维护:对于有关系统的数据库,其他文件,图片进行维护,定时不定时对数据进行备份。代码的维护:在编程过程中,代码的书写要整齐、规范,可能当时能够运行,但是还是要

26、对其规范化。机器、设备的维护:即硬件的维护,对于版本的更新,以及版本的升级的维护工作。2、维护类型:更正性维护,适应性维护,完善性维护,预防性维护。第6章 结论与展望这个系统,做了有不到一周,时间有点仓促,每天都做没有什么休闲的时间、是有点累的,不过这样的生活很忙碌、充实,在这过程中学到了很多东西,把以前不会的东西搞懂了,不是很熟悉的东西也熟习了。先苦后甜,这也是其中的乐趣所在。分析模块中的代码,最多最核心的就是连接数据库的东西,从模块入手,连接好数据库,其他的数据库加载问题就好说了,其实在我们组几个人互相解决问题,互相调试系统的过程中,我们大家最大的体会也无非是数据库的连接成功与否的问题,一

27、旦数据库连接不成功。经过这次锻炼,我们在调试错误方面有了很大提高,进步很大。以下大的菜单项依次是,图书归还、逾越清单、罚款清单、图书征订、图书类别、读者类别、读者信息等,这些中只有图书归还是比较难得,其他的都是做出了一个,下面的问题就不是问题。我们先看这些菜单项的名称来想一想这些实现的具体功能有哪些呢?如是,这个里边就应该有一个添加学籍的功能实现,添加的学生信息需要修改怎么办 那就需要人性化的设置,这样就有了相应的更改学籍信息的功能,结合实际使用流程,查询功能也是不可或缺的,同样这些添加、查询功能主要的核心就是sql语句,一条条貌似简单的sql语句都是极容易出错的地方,一个空格摆放不对,一个字母缺失、敲错,这些都会导致数据库的连接问题,主要体现在返回的记录集上面。还有些我们实在没辙的时候,就要请教我们的老师了,当然最后我们都做出来了,可能还不是很完整,但是我们还是比较满意的。参考文献1.C#.NET程序设计项目教程作者:王平华 出版社:中国铁道出版社 2008年9月2.SQL Server 2005数据库技术与应用作者:郭峰 出版社:人民邮电出版社 2009年1月3.数据库基础与应用作者:刘世峰 出版社:中央电大出版社 2003年12月

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

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号