1、广工数据库课程设计成绩课 程 设 计 课程名称_ 数据库系统课程设计_题目名称_图书馆管理系统_学生学院_计算机学院_专业班级_11级网络工程 班_学 号_311100 _学生姓名_ _指导教师_ 宋 玮_2013 年 12 月 评价标准分数比例(%)成绩论文论文结构包含:相关技术介绍、需求分析、概念结构设计、逻辑结构设计、数据库物理设计、数据库实施、系统测试方案和测试报告、系统的主要功能和使用说明、系统安装说明。要求论文完整、内容详细,格式规范。40程序系统运行正确;功能完善:有增、删、改、查功能,有基本的报表、查询、统计和输入、输出功能;工作量充分;系统实现技术的难度。30数据库设计E-R
2、图设计正确;数据库逻辑结构设计规范化;数据库物理设计合理。30总评成绩 优 良 中 及格 不及格总分摘 要图书馆管理系统广泛地应用于学校、工业、商业、企业、事业等单位,几乎每个进行了信息化建设的单位都具有图书馆管理系统。一个图书馆管理系统应该提供包括读者信息管理、图书信息管理、出版社信息管理、用户信息管理、借还书、报表显示以及综合查询等功能。图书馆管理系统作为数据库信息管理系统应用的一种,其开发流程与其他系统类似,包括需求分析、系统建模、数据库分析和设计以及各功能模块的设计和代码实现等。随后我将会分几小节分别进行详细的介绍。关键词:图书馆、管理系统、数据库目 录1 前言12 系统所用工具概述1
3、 2.1 SQL Server 2005 概述.1 2.2 Visual Studio 2005 工具概述.2 2.3 开发环境概述.33 需求分析4 3.1 需求与可行性分析.4 3.1.1 详细需求分析4 3.1.2 可行性分析4 3.2 数据流图.4 3.2.1 顶级数据流图4 3.2.2 一级数据流图5 3.3 系统流程分析.54 系统概要模块设计6 4.1 系统模块总览.6 4.2 系统子模块一览.7 4.2.1 登录模块7 4.2.2 人员模块7 4.2.3 图书模块8 4.2.4 系统管理模块8 4.2.5 系统反馈模块85 数据库概念结构设计9 5.1 系统E-R图.9 5.2
4、 各个实体的属性图.96 数据库逻辑结构设计107 数据库物理结构设计12 7.1 创建数据库.12 7.2 建立索引.12 7.3 配置SQL Server 数据源.13 7.4 数据库备份方案.14 7.5 数据库还原方案.148 数据库实施.15 8.1 创建数据库SQL脚本文本.15 8.2 创建数据库对象的SQL脚本文本.169 系统实现的关键程序代码.17 9.1 连接数据库的公共模块.18 9.2 登录模块代码.19 9.3 整体系统的入口定义代码.2110 用户界面的设计与实现.21参考文献.241 前言随着计算机及网络技术的高速发展,数字化、网络化的信息革命从根本上推动了图书
5、馆的发展进程,计算机日益成为图书馆的主要设备。目前很多大型的图书馆已经有一整套比较完整的信息管理系统,但在一些小型的图书馆中,大部分工作仍然需要由手工完成,工作起来效率比较低,管理员不能及时了解图书馆内各类图书的借阅情况,读者需要的图书难以在短时间内找到,不便于动态、及时地图书结构。为了更好地满足当前读者的借阅需求,解决手工管理中存在的许多问题,越来越多的中小型图书馆正在逐步向计算机信息化转变。计算机信息化管理以其存储信息量大、速度快、便于管理等优点受到更多用户的青睐。2 系统所用工具概述2.1 SQL Server 2005概述SQL Server 是一个全面的、集成的、端到端的数据解决方案
6、,它为企业中的用户提供了一个安全、可靠和高效的平台用于企业数据管理和商业智能应用。SQL Server 2005 为IT专家和信息共作者带来了强大的、熟悉的工具,同时减少了在从移动设备到企业数据系统的多平台上创建、部署、管理及使用企业数据和分析应用程序的复杂度。 通过全面的功能集、和现有系统的集成性、以及对日常任务的自动化管理能力,SQL Server 2005 为不同规模的企业提供了一个完整的数据解决方案。图1显示了SQL Server 2005数据平台的组成架构。图1 SQL Server 2005数据平台的组成架构SQL Server 数据平台包括以下工具:关系型数据库:安全、可靠、可伸
7、缩、高可用的关系型数据库引擎,提升了性能且支持结构化和非结构化(XML)数据。复制服务:数据复制可用于数据分发、处理移动数据应用、系统高可用、企业报表解决方案的后备数据可伸缩存储、与异构系统的集成等,包括已有的Oracle数据库等。通知服务:用于开发、部署可伸缩应用程序的先进的通知服务能够向不同的连接和移动设备发布个性化、及时的信息更新。集成服务:可以支持数据仓库和企业范围内数据集成的抽取、转换和装载能力。分析服务:联机分析处理(OLAP)功能可用于多维存储的大量、复杂的数据集的快速高级分析。报表服务:全面的报表解决方案,可创建、管理和发布传统的、可打印的报表和交互的、基于Web的报表。管理工
8、具:SQL Server 包含的集成管理工具可用于高级数据库管理和调谐,它也和其他微软工具,如MOM和SMS紧密集成在一起。标准数据访问协议大大减少了SQL Server和现有系统间数据集成所花的时间。此外,构建于SQL Server内的内嵌Web service支持确保了和其他应用及平台的互操作能力。开发工具:SQL Server 为数据库引擎、数据抽取、转换和装载(ETL)、数据挖掘、OLAP和报表提供了和Microsoft Visual Studio 相集成的开发工具,以实现端到端的应用程序开发能力。SQL Server中每个主要的子系统都有自己的对象模型和API,能够以任何方式将数据系
9、统扩展到不同的商业环境中。2.2 VisualStudio2005工具概述Microsoft Visual Studio(简称VS)是美国微软公司的开发工具包系列产品。VS是一个基本完整的开发工具集,它包括了整个软件生命周期中所需要的大部分工具,如UML工具、代码管控工具、集成开发环境(IDE)等等。所写的目标代码适用于微软支持的所有平台,包括Microsoft Windows、Windows Phone、Windows CE、.NET Framework、.NET Compact Framework和Microsoft Silverlight。而Visual Studio .NET是用于快速
10、生成企业级ASP.NET Web应用程序和高性能桌面应用程序的工具。Visual Studio包含基于组件的开发工具(如Visual C#、Visual J#、Visual Basic和Visual C+),以及许多用于简化基于小组的解决方案的设计、开发和部署的其他技术。Visual Studio.NET是.NET平台下最为强大的开发工具,无论是软件服务商,还是企业应用程序的部署与发布,Visual Studio.NET都可以提供近乎完美的解决方案。Visual Studio.NET提供了包括设计、编码、编译调试、数据库联接操作等基本功能和基于开放架构的服务器组件开发平台、企业开发工具和应用程
11、序重新发布工具以及性能评测报告等高级功能。Microsoft Visual Studio 2005支持.Net Frame Work 2.0。 微软在2006年年初公布了Visual Studio的免费版本Visual Studio 2005 Express。包含常会使用到的Visual Basic 2005 Express。相关技术支持信息请参阅Microsoft MSDN,或是Visual Studio 2005的中文网站。Visual Studio 2005 SP1发布于2006年12月14日,该安装包安装过程很长(约需要1至2个小时),安装过程中需要临时存储空间较大(约1GB)。Vis
12、ual Studio 2005 SP1 Update for Windows Vista发布于2007年6月3日,安装前仍需要安装Visual Studio 2005 SP1。本次更新用于处理Visual Studio中受Windows Vista增强功能所影响的领域。2.3 开发环境概述 2.3.1 用户对象 中小型图书馆,数据量在1000以下,每秒访问量20左右,稳定性要求适中,维护水平一般; 2.3.2 软件环境 操作系统:Windows 7 旗舰版 SP1, 开发环境:SQL Server 2005 + Visual Studio 2005,.NET Framework 2.0; 2.
13、3.3 硬件环境 AMD 双核 CPU 1.65GHz,2GB内存,个人计算机。3 需求分析3.1需求与可行性分析 3.1.1 详细需求分析经过对几个大型的图书管日常工作的调查研究及管理流程的分析,要求本系统具有以下功能: 员工登录,登陆成功后方可对图书管理系统进行操作; 员工可以对客户信息进行管理; 需要添加员工信息; 员工可以添加图书信息; 员工可以查看图书租借的历史记录; 功能强大的查询功能,以方便管理员查询各种信息; 统一、友好的操作界面,庸医保证系统的易用性。 3.1.2 可行性分析 根据调查得知,以前的图书馆采取手工方式对图书借阅信息进行管理,将一般的借阅情况记录在借书证上,再将图
14、书的数目和内容记录在文件中,这样图书馆的工作人员只能是对当时的借阅信息比较清楚,时间一长,再进行查询时,就得在众多的资料中翻阅、查找,既费时又费力。如果要对很长时间以前的图书信息进行更改就更加困难了。手工操作使得图书借阅信息的管理工作混乱而又复杂。 基于这些问题,有必要建立一个图书管理系统,使图书馆的日常管理工作规范化、系统化、程序化,避免管理的随意性,提高信息管理的速度和准确性,能够及时、准确、有效地查询图书借还情况。3.2数据流图 3.2.1 顶级数据流图根据软件系统与外部之间的关系确定顶级数据流图中的外部实体以及它们与软件系统之间的数据流。基于对图书馆管理系统的初步需求分析结果,它的顶级
15、数据流图如图2:控制面板 显示器图书馆管理系统 用户账号密码 数据传送 显示信息数据传送设备 图2 顶级数据流图3.2.2 一级数据流图将顶级数据流图细分可得图3 显示面板系统配置配置命令 配置数控制面板 账号密码再次设定 配置信息 显示信息登录口令核对 信息显示 用户命令 口令有效/无效 系统登录/退出用户命令处理 口令 账号密码正确 登录/退出 登录/退出时信息显示 图3一级数据流图3.3系统流程分析 前面的分析中已经定义了系统各个功能模块,属于静态建模的范围。在系统运行时刻的动态模型应该由系统流程决定。从上面的功能描述中,可以把图书馆管理系统分为5个模块:身份验证模块,人员管理模块,图书
16、管理模块,系统管理模块和系统反馈模块。在每个模块下又提供更为具体的功能。详细的图书馆管理系统的模块关系图如图4所示。人员管理模块用户验证 登录成功反馈信息退出系统图书管理模块登录界面 登 录系统管模块理 失 败 图4 系统流程示意图4 系统概要模块设计4.1 系统模块总览通过对员工培训管理系统的功能分析,可以定义出系统的功能模块图,如图5所示:系统反馈模块图5 图书馆管理系统总模块示意图其中定义的功能模块包括以下方面。 用户身份验证:是图书馆管理系统的安全模块,起到隔离非授权用户登录的作用。如果用户身份验证非法,则会提示相关信息,并继续回到登录界面;否则,用户身份验证成功,进入管理系统执行相关
17、操作。 人员管理模块:有2个方面的内涵,一是系统的用户管理,这包括用户的登录ID所对应的密码(授权);一是管理成员的基本信息,包括的内容有员工编号、姓名、年龄、性别、联系电话、所在城市、籍贯、工资、参加工作时间以及岗位等信息。 图书管理模块:是系统的核心,它包括有4个方面的子模块,分别是库存管理、借书管理、还书管理、历史记录等书籍信息。库存管理模块包含两个次一级的模块:图书添加/删除以及退出库存管理。 系统管理模块:是系统的重要组成部分。它提供了系统操作的基本功能。 系统反馈模块:是信息的显示板。它展示了人员、图书等相关信息。4.2 系统子模块一览 4.2.1 登录模块 登录模块主要用于管理员
18、登录,如果该管理员登录成功,则可以对系统的相关信息进行操作,直到关闭系统,退出程序;如果该管理员登录失败,则返回到该登录模块重新登录。其执行流程如图6所示:程序结束程序开始关闭程序打开程序登录成功登录失败图书管理系统用户验证登录模块图6 登录模块的执行流程 4.2.2 人员模块人员模块主要是对客户和员工的管理。在这个模块中,管理员可以添加、修改、删除员工信息;员工可以增加、更新、删除以及查询客户信息。其功能模块图如图7所示:更新员工添加员工删除员工查询客户删除客户添加客户更新客户客户管理人员模块员工管理图7 人员模块功能图 4.2.3 图书模块 图书模块是整个图书系统的核心模块,该模块包括图书
19、管理、租借图书、归还图书以及图书借还的历史记录信息。其功能图如图8所示:添加图书库存管理借书管理退出管理图书模块还书管理历史管理图8 图书模块功能图 4.2.4 系统管理模块 系统管理模块是该图书馆管理系统的重要组成模块。它提供的基本的系统操作功能,包括日记、文档管理等。该模块的执行流程如图9所示:否是处理相关程序系统主界面图9 系统管理模块的执行流程 4.2.5 系统反馈模块 系统反馈模块是图书馆管理系统的信息显示板。它向用户提供最直接的信息显示,是用户快速获取信息的界面。它的执行流程如图10所示:是显示相应信息信息操作?处理相关程序系统主界面图10 系统管理模块的执行流程5 数据库概念结构
20、设计5.1 系统E-R图采用E-R图的分析方法,首先对局部视图进行分析设计,然后再实现视图集成。在视图集成时,注意要尽量消除冲突和冗余。在这里直接给出视图集成后的E-R图,如图11所示:管 理管理管理 1 N书本员 工客户 N 1 1 NN 租借M图11图书馆管理系统E-R图上班日期5.2 各个实体的属性图 如图12所示:添加客户时间图书馆藏量客户编号图书编号出租号出借时间租借已归还数量尚未归还数量归还时间图12 各实体详细属性图*说明:(1)管理员具有所有权限;而普通员工不能查看员工管理模块; (2)用同一图书编号或者书名来代表全部数量(即:数据库有5本),每一本不再标识;*6 数据库逻辑结
21、构设计根据E-R图,就可以创建以下数据表: 客户信息表客户信息表(tab_Customer)存储了用户的姓名、联系电话等,如表1所示,表1 客户信息表字段数据类型是否为空备注CustomerIdint否主键,客户编号,自动增长列Namevarchar(50)否客户姓名Phonevarchar(50)是联系电话AddTimedatetime是添加客户时间AdminIdint否外键,管理员编号,受管理的 员工信息表员工信息表(tab_Employee)主要存储员工的个人信息,例如编号、姓名、年龄、性别、工资、上班日期和登录密码等,如表2所示:表2 客户信息表字段数据类型是否为空备注Employee
22、Idint否主键,员工编号,自动增长列Namevarchar(50)否员工姓名PassKeyvarchar(50)否员工密码Ageint是员工年龄Sexvarchar(4)是员工性别Phonevarchar(50)是联系电话Cityvarchar(50)是所在城市Addressvarchar(50)是籍贯Salaryvarchar(50)是工资HireDatedatetime是上班日期BossIdint否外键,参考本表员工编号,上一级编号,自动增长列 书本信息表书本信息表(tab_BookInfo)主要用于存储图书信息,包括图书编号、图书名称、作者、出版社、出版日期等,如表3所示:表3 图书信
23、息表字段数据类型是否为空备注BookIdint否主键,图书编号,自动增长列BookNamevarchar(50)否图书名称Authorvarchar(50)否作者Publishvarchar(50)否出版社PublishTimedatetime是出版时间BookCountint否图书数量AdminIdint否外键,入库员编号,自动增长列 图书租借表图书出租表(tab_BookSaleList)主要用于存储出租图书和归还图书的信息,例如用户的租借信息,如表4所示:表4 图书租借表字段数据类型是否为空备注BListIdint否主键,出租图书编号,自动增长列BookIdint否外键,图书编号Cust
24、omerIdint否外键,客户编号BorrowTimedatetime是图书出借时间ReturnTimedatetime是图书归还时间CurrentCountint是出租的数量,尚未归还ReturnCountint是归还的数量 说明:数据库中还存在一张规模比较小的表,主要用来实现保持数据库操作系统的数据库数据一致性的(加锁机制)。这里不再列出。7 数据库物理结构设计7.1创建数据库首先启动SQL Server 2005 企业管理器,增加一数据库名为BookSale的数据库,该数据库的登陆账号为sa,密码为huangweihao。然后根据上面的分析,通过查询分析器执行相应的SQL语句为BookS
25、ale数据库创建相应的4个数据表,表间关系如图13所示:图13 图书馆管理系统关系图7.2建立索引 打开相应的表节点,选择“索引”-“右键”-“新建索引”来创建索引以提高查询效率。 1、 为tab_Customer表建立索引,索引名:Customer_Index,索引列:CustomerId、Name、AdminId;2、 为tab_Employee表建立索引,索引名:Employee_Index,索引列:EmployeeId、Name、BossId;3、 为 tab_BookInfo 表建立索引,索引名:BookInfo_Index, 索引列:BookId、BookName、Author、P
26、ublish;4、 为tab_BookSaleList表建立索引,索引名:BookSaleList_Index,索引列:BListId、BookId、CustomerId、CurrentCount。如果要创建唯一索引,可以选择“创建UNIQUE”复选框;如果要创建聚集索引,但已经存在了其他的聚集索引,就会提示用户不能再创建新的聚集索引。设置完成后,单击“关闭”。7.3配置SQL Server数据源1.选择“开始”,“程序”,“Microsoft Visual Studio 2005”,打开“Visual Studio 2005”,之后打开里面的“服务器资源管理器”将会看到如图14所示的情景:图14 服务器资源图(VS2005自带ODBC管理器)右键数据连接,点击“添加连接(A)”,选择“Microsoft SQL Server”再点击确定,打开“添加链接”对话框;2.在“服务器名:”下拉框中的列表中选择服务器为SQL Server的当前实例(我的是2012-20130911GG)。3.然后点选“使用SQ
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1