数据库课程设计学海图书管理系统.docx

上传人:b****6 文档编号:8463207 上传时间:2023-01-31 格式:DOCX 页数:16 大小:437.84KB
下载 相关 举报
数据库课程设计学海图书管理系统.docx_第1页
第1页 / 共16页
数据库课程设计学海图书管理系统.docx_第2页
第2页 / 共16页
数据库课程设计学海图书管理系统.docx_第3页
第3页 / 共16页
数据库课程设计学海图书管理系统.docx_第4页
第4页 / 共16页
数据库课程设计学海图书管理系统.docx_第5页
第5页 / 共16页
点击查看更多>>
下载资源
资源描述

数据库课程设计学海图书管理系统.docx

《数据库课程设计学海图书管理系统.docx》由会员分享,可在线阅读,更多相关《数据库课程设计学海图书管理系统.docx(16页珍藏版)》请在冰豆网上搜索。

数据库课程设计学海图书管理系统.docx

数据库课程设计学海图书管理系统

 

数据库课程设计报告

 

系(院):

计算机科学学院

专业班级:

石油软件工程10901班

指导教师:

李文华王墨

设计时间:

2011.12-2012.1

设计地点:

4#5楼机房

小组成员:

陈明阳白希策刘文可张文杰

 

一、系统实现的意义

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

在各行各业中离不开信息处理,计算机被广泛应用于B/S系统环境。

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

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

对于复杂的信息管理,计算机能够充分发挥它的优越性。

计算机与信息管理系统的开发密切相关,系统的开发是系统管理的前提。

本系统就是为了管理好图书信息而设计的。

图书管理包括的图书和用户借阅资料繁多,包含很多的信息数据的管理,现今,有很多的图书管理系统都是初步开始使用,甚至尚未使用计算机进行信息管理。

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

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

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

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

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

二、系统实现环境

开发数据库管理系统需要选择两种工具,即前台开发语言和后台数据库。

选择开发工具时,应考虑客户需求、系统功能和性能要求以及开发人员的习惯等因素。

与其他开发工具相比,VisualC#具有功能强大、通用性强、和易于扩充等特点,越来越多的被用作客户/服务器应用程序的前台开发工具,与后台的SQLServer数据库相结合,能够提供一个性能比较高的管理信息系统解决方案。

因此本实例选择的前台开发语言是VisualC#2008.后台数据库选择了SQLServer2005。

三、需求分析

现在要求为某学校图书馆设计一个图书管理系统的数据库,背景如下:

●该学校是一所多学科、多层次大学,学校有高职生、本科生(含一本、二本、三本)、硕士研究生(含MBA)和博士研究生等多种层次的学生,图书馆为全校学生和教职工提供图书借阅服务。

●图书馆按照图书的性质(中文图书、外文图书、新书)将借阅分为不同的借阅种类:

中文图书借阅、外文图书借阅和(新书)短期外借;不同的读者对象也有不同的借阅要求。

●对每种借阅类型和读者,其借阅册数、借期、是否允许续借、续借期限等不同。

不同借阅种类和借阅对象的借阅要求规定如附1所示。

例如:

本专科学生可以借中文图书5本,借期30天,可以续借一次,续借15天。

●“新书”的概念是相对的,一本新书在上架(或入库)后的60天内只提供短期外借,此后即自动地成为中文图书或者外文图书。

●借出的图书不能在当天归还。

●每次借阅后读者最多可以续借一册图书一次。

●在本馆所借的文献资料,均应在规定的期限内按时归还。

逾期不还者,将分别按以下规定处理:

●中文图书借阅:

每册每天罚款0.2元。

●新书借阅和外文图书借阅:

每册每天罚款0.5元。

●在超期图书归还并缴清罚款之前,读者不可借阅图书;超期图书也不能续借。

●对于超期的图书,图书管理系统将自动向读者电子邮箱中发一封电子邮件催还图书。

●每个读者都要有一个编号,并记录读者的姓名、性别、类型(学生、教师等)、单位、电子信箱等。

●图书馆采编部负责对入库的文献资料按规定进行编目、著录、加工、建库。

对每本图书、杂志,要记录其基本信息,如名称、作者、ISBN号、出版地、出版社、出版时间、字数、单价、内容简介、所属分类号等,其中,图书分类按照中图法分类规则进行分类。

中图法分类简表见后。

●学校有三个校区,相应地,馆藏分布于三个分馆中:

A图书馆(侧重于经济管理、综合类)、B图书馆(侧重于理工、计算机类)和C图书馆(侧重于法学、外语、体育、艺术、音乐等方面)。

图书馆中每种图书可能采购多册,分布在多个馆中。

全校师生可以在任何一个分馆中借阅。

●每个分馆中的图书借完为止,如本部图书馆有某图书1本,这本图书借出后,在归还之前,本部图书馆中就查阅到该图书为借出状态,而且,馆藏已空,但是读者可以到其他馆中借阅。

●图书的归还遵循属地原则,即从哪个分馆借出的图书必须要在那个分馆中归还。

●图书馆管理员有权更改图书到期时间,比如将本来暑假到期的图书的到期时间改为9月10日。

●读者可以在网上查询自己的图书借阅情况,一般读者只可以查阅到自己的借阅情况和图书的信息,而管理员可以查看任何读者的信息、借阅情况,任何图书的信息和借阅情况。

●在网上查询系统中,每个用户都分配了用户名(全局唯一)和密码,其中,用户名就是读者号,密码初始值为读者的学号或者工号,可以修改。

四、系统实现核心架构

1.三层架构的意义

首先三层架构组成如下:

界面层

界面层提供给用户一个视觉上的界面,通过界面层,用户输入数据、获取数据。

界面层同时也提供一定的安全性,确保用户不用看到不必要的机密信息。

逻辑层

逻辑层是界面层和数据层的桥梁,它响应界面层的用户请求,执行任务并从数据层抓取数据,并将必要的数据传送给界面层。

数据层

数据层定义、维护数据的完整性、安全性,它响应逻辑层的请求,访问数据。

这一层通常由大型的数据库服务器实现,如Oracle、Sybase、MySQlServer等。

图1.三层架构图示

从开发角度和应用角度来看,三层架构比双层或单层结构都有更大的优势。

三层结构适合群体开发,每人可以有不同的分工,协同工作使效率倍增。

开发双层或单层应用时,每个开发人员都应对系统有较深的理解,能力要求很高,开发三层应用时,则可以结合多方面的人才,只需少数人对系统全面了解,从一定程度工降低了开发的难度。

三层架构属于瘦客户的模式,用户端只需一个较小的硬盘、较小的内存、较慢的CPU就可以获得不错的性能。

相比之下,单层或胖客户对面器的要求太高。

三层架构的另一个优点在于可以更好的支持分布式计算环境。

逻辑层的应用程序可以有多个机器上运行,充分利用网络的计算功能。

分布式计算的潜力巨大,远比升级CPU有效。

三层架构的最大优点是它的安全性。

用户端只能通过逻辑层来访问数据层,减少了入口点,把很多危险的系统功能都屏蔽了。

开发人员可以只关注整个结构中的其中某一层,因此三层架构的有点也可总结为以下几个方面:

●可以很容易的用新的实现来替换原有层次的实现;

●可以降低层与层之间的依赖;

●有利于标准化;

●有利于各层逻辑的复用。

2.三层架构在本系统中的实现过程

在图书管理本系统中,我们实现了三层架构,以增强系统的安全性。

首先数据层在SQLServer中进行设计并实现,其次业务逻辑层在Model中进行实现,然后在DAO及BLL中实现访问层。

3.数据库概念设计

3.1系统结构

3.2数据流图

 

3.3实体联系图

3.4登录E-R图

注:

登录界面上需要输入以上这三个参数。

3.5管理员E-R图

注:

管理员具有以上六种功能,其中更改用户,及可从读者状态切换到管理员状态,或者切换不同的读者状态。

 

3.6查询E-R图

 

3.7借还E-R图

 

4.本系统中所用的数据表

表1图书表

表2图书性质表

表3借阅信息表

表4图书分类表

表5图书馆表

表6出版社表

表7读者基本信息表

表8用户信息表

表9读者类别信息表

五、系统操作手册

图1系统主界面

图2系统主界面,登陆操作

图3登陆主界面

图4以管理员身份登陆后的主页面

图5以管理员身份进行采编图书功能

图6以管理员身份进行读者管理功能

图7以管理员身份进行借书功能

注:

借书成功

注:

借书失败

图8以管理员身份进行查询功能

图9以读者身份登陆系统

图10以读者身份进入读者主页面

图11以读者身份在系统可分别进行上图所示的三项功能,比如我们可以进行查看超期记录的功能!

(如下图所示)

以上这些就是我们此次课设所作系统大致所实现的功能!

六、小组感受和体会

为期一个学期的数据库课程的学习在李老师严谨而又不失幽默的结束语中宣告了课堂学习的正式结束,然而,考试的结束和课程设计的开始也预示着我们对于数据库这门核心课程实际学习的正式开始。

课本上的理论知识只是入门的基础,实际的应用才是对我们学习成果的检验,是我们为以后更加深入的学习而迈出的第一步。

在开始课程设计之前,我们多少有点心虚,实践毕竟远难于理论,但同时我们也有着迎接新挑战的兴奋和对知识学以致用的欣喜。

本次数据库课程设计以小组的形式展开,题目是“图书管理系统”,是数据库在软件工程中的一种初级和简单的应用。

我们小组一共四个人,分别是白希策、陈明阳、刘文可、张文杰。

通过第一次简单的小组会议我们确定了由技术相对较强的陈明阳担任组长,并要求每个人下去收集资料。

在组长的带领下,小组成员各司其职,相互协作,相互探讨,共同完成了这次的数据库课程设计。

在确定组长之后不久,我们响应组长的号召,召开了小组的第二次会议,在这次会议中,我们把各自收集的资料集合到一起整理出了一份与此次课程设计有关的比较完整的全部资料,然后制定了一份进度计划表,按照“数据字典的编制实体关系图的绘制和表的设计数据库编码C#编码系统整合系统测试和修改文档完善”这一流程来逐步的完成,最后我们确定了初步的小组分工,编码方面:

陈明阳负责“书籍采编”模块,白希策负责“还书”模块,刘文可负责“书籍查询”和“读者管理”模块,张文杰负责“借书”模块;文档的完善方面:

陈明阳负责《系统需求说明》和《图书管理系统数据字典》,白希策负责《图书管理重难点说明》和《图书管理系统界面设计》,刘文可负责《图书管理系统建模》,张文杰负责《图书管理系统测试文档》和《图书管理系统使用说明》。

在第二次会议之后,小组成员就按照任务分工开始了各自的任务,在这个期间我们虽然没有召开过正式的会议,但是我们在机房时会不时的相互谈论,在设计自己模块的时候征求组员的建议,不懂的地方会相互请教,在这一阶段,组长陈明阳给予了小组很大的帮助。

虽然我们有四个人,但是在整个课程设计的过程中并非一帆风顺,我们遇到了很多的问题,有技术上的也有非技术上的,整个设计和编码的过程是边做边修改,每次小组一起讨论时总会发现自己的那部分忽略和很多细节上的问题,一直到最后的系统定型,讨论和修改的过程始终跟随着我们,促进着我们的不断完善和进步。

在我们共同的努力下,终于完成了这次课程设计,虽然没有做到十分的完美,但是我们都觉得我们这次课程设计的目的达到了,这些天的辛苦真的很值得。

我们最大的收获不仅在于这次宝贵的实践经验加深了我们的数据库和C#功底,更在于我们体会到了团队合作的好处和乐趣,更加懂得去和他人合作,在合作的过程中吸收知识加深友谊。

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

当前位置:首页 > 解决方案 > 学习计划

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

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