《数据库课程设计——图书管理系统的开发任务书(共24页).doc》由会员分享,可在线阅读,更多相关《数据库课程设计——图书管理系统的开发任务书(共24页).doc(24页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上数据库原理及应用课程设计设计说明书图书管理系统的开发学生姓名邵旭东学号班级信管071成绩指导教师陈 波计算机科学与技术系2009年12月25日专心-专注-专业数据库原理及应用课程设计评阅书题 目图书管理系统的开发学生姓名邵旭东学号指导教师评语及成绩成绩: 教师签名: 年 月 日答辩教师评语及成绩成绩: 教师签名: 年 月 日教研室意见总成绩: 室主任签名: 年 月 日注:指导教师成绩60%,答辩成绩40%,总成绩合成后按五级制记入 课程设计任务书2009 2010 学年第一学期专业: 信管071 学号: 姓名: 邵旭东 课程设计名称: 数据库原理及应用课程设计 设计题
2、目: 图书管理系统的开发 完成期限:自 2009年 12 月14 日至 2009 年 12 月 25 日共 2 周设计依据、要求及主要内容(可另加附页):实验要求:图书编号可参考国家统一的图书编码方法,再完成基本功能模块的情况下,尽量使系统能具有通用性。图书管理系统主要涉及的数据表有图书基本信息表,借书卡信息表,借阅信息表,图书分类信息表等等。主要功能模块有:1) 图书基本情况的录入、修改、删除等基本操作。2) 办理借书卡模块。3) 实现借书功能。4) 实现还书功能。5) 能方便的对图书进行查询。6) 对超期的情况能自动给出提示信息。7) 具有数据备份和数据恢复功能 指导教师(签字): 教研室
3、主任(签字): 批准日期: 年 月 日摘 要设计了一个图书管理系统,本系统分为两个端口,分别为用户操作端和管理员操作段。主要实现了以下功能:1.图书基本情况的录入、修改、删除等基本操作。2.办理借书卡。3.实现借书功能。4.实现还书功能。5.对图书进行查询。6.对超期的情况自动给出提示信息。主要采用了采用SQL Server 2005和Visual Studio2005 WinForm技术实现,界面清楚,操作简单。关键字:图书管理系统;SQL Server 2005;WinForm 目 录6.21.课题描述1.1课题介绍设计了一个图书管理系统,本系统是由用户使用的图书查询、个人密码修改和后台管
4、理员使用的用户管理、图书管理、借阅管理系统等组成的。一个图书管理系统应该提供如下功能: 注册用户的管理包括普通用户注册、管理员注册、个人资料修改、过期用户的删除等功能。要求系统根据用户的级别使用户拥有不同的权限,可以实现用户数据库的增加、查询和修改等功能。书籍分类的增加、查询和修改功能。所有的书籍都可以按照一定的方式实现分类。每个分类中的图书都应该可以在这个系统中进行图书的增加、修改或者删除。注册用户可以查询图书馆图书的信息。管理员能够管理图书管里的书籍,包括图书信息的录入、错误图书信息的修改以及过期图书信息的删除等。图书查询、用户改密当用户借阅图书以后之后,生成一张借阅表表,用户可以查阅自己
5、借阅图书的信息,以及图书的到期时间。用户和管理员可以修改自己的密码,以增强该系统的安全性。1.2相关技术介绍 WinFormWinForm是.Net开发平台中对Windows Form的一种称谓。.Net 为开发WinForm的应用程序提供了丰富的Class Library(类库)。这些WinFrom 类库支持RAD(快速应用程序开发),这些类库被封装在一个名称空间之中,这个名称空间就是System.Windows.Forms。在此名称空间中定义了许多类,在开发基于.Net的GUI应用程序的时候,就是通过继承和扩展这些类才使得我们的程序有着多样的用户界面。 2. SQL Server2005S
6、QL Server 2005 是一个全面的数据库平台,使用集成的商业智能 (BI) 工具提供了企业级的数据管理。SQL Server 2005 数据库引擎为关系型数据和结构化数据提供了更安全可靠的存储功能,使您可以构建和管理用于业务的高可用和高性能的数据应用程序。SQL Server 2005 数据引擎是本企业数据管理解决方案的核心。此外 SQL Server 2005 结合了分析、报表、集成和通知功能。这使您的企业可以构建和部署经济有效的 BI 解决方案,帮助您的团队通过记分卡、Dashboard、Web services 和移动设备将数据应用推向业务的各个领域。与 Microsoft Vi
7、sual Studio、Microsoft Office System 以及新的开发工具包(包括 Business Intelligence Development Studio)的紧密集成使 SQL Server 2005 与众不同。无论您是开发人员、数据库管理员、信息工作者还是决策者,SQL Server 2005 都可以为您提供创新的解决方案,帮助您从数据中更多地获益。2概念结构2.1数据流图图书管理系统业务流程图如图2.1所示图2.1图书管理系统业务流程图图书管理系统基本模型如图2.2所示图2.2图书管理系统基本模型图图书管理系统数据流图如图2.3所示图2.3图书管理系统数据流图2.2
8、图书管理系统的主要数据字典a)图书信息b)借阅信息c)用户信息d)管理员信息2.3实体图实体关系图:简记E-R图是指以实体、关系、属性三个基本概念概括数据的基本结构,从而描述静态数据结构的概念模式BOOKbookIdbookPrice bookPubISBNbookWritterbookName图2.3图书信息实体图UseruserIduserTel userPwduserNameuserEmailuserSexuserAge 图2.4用户信息实体图borrowuserIdbookIdborrowDate图2.5借阅信息实体图2.4系统E-R图系统E-R如图2.9所示图2.9 系统E-R图3逻
9、辑结构设计1)关系模型:管理员(用户名,登录密码)图书(图书分类号,ISBN,图书名,作者,出版社, 价格)用户(编号,登录密码,姓名,性别,联系电话,年龄, Email,)借阅(图书编号,顾客编号,管理员编号,借阅日期,归还时间,是否超期)2)功能结构图如图3.2所示图3.2 图书管理销售系统功能图4物理结构设计建立图书表如下图4.1所示: 图书表 图4.1建立用户表如下图4.2所示:用户表 图4.2 建立借阅表如下图4.3所示:建立管理员表如下图4.4所示: 借阅表 4.3 管理员表 4.4 5实现设计5.1软件系统的模块结构图系统的模块结构如图5.1所示图5.1 软件系统的模块结构图5.
10、2软件系统主控程序的程序流程图主控程序流程图如图5.2所示图5.2软件系统的程序流程图6.程序运行结果6.1.管理员登录在登录界面可以选择登录权限,如普通用户、管理员,以下为管理员登录的代码及效果图:图4.1CREATE PROC dbo.pro_AdminEnteruserName nvarchar(20),userPwd nvarchar(6),message nvarchar(100) OUTPUTasDECLARE count intBEGIN SELECT count=count(*) from TB_administrator where admin=userName if(cou
11、nt0) SET message=登录成功 else SET message=密码错误END6.2.图书管理界面管理员登录进去之后,进入图书管理界面,关键代码以及效果图下图所示: 图4.2图书信息录入,代码及图书信息如下所示CREATE PROC dbo.pro_insertbookId nvarchar(20),ISBN nvarchar(40),bookName nvarchar(50),bookWritter nvarchar(30),bookPub nvarchar(50),bookPrice money, message nvarchar(100) OUTPUTasDECLARE S
12、UM intBEGIN select SUM=count(*) from TB_book where bookId = bookId if(SUM0) SET message=此书已存在 else BEGINInsert Into TB_book values(bookId,ISBN,bookName,bookWritter,bookPub,bookPrice)SET message=插入成功ENDEND 图4.3 图书信息修改,代码如下所示create proc dbo.pro_updatebookId nvarchar(20),ISBN nvarchar(40),bookName nvar
13、char(50),bookWritter nvarchar(30),bookPub nvarchar(50),bookPrice money,message nvarchar(100) outputasdeclare sum intBEGINSELECT sum=count(*) from TB_book where bookId=bookIdIF (sum1)BEGINSET message=次数不存在ENDELSEBEGINUPDATE TB_book SET bookId=bookId,ISBN=ISBN,bookName=bookName,bookWritter=bookWritter
14、,bookPub=bookPub,bookPrice=bookPrice where bookId=bookIdSET message=修改成功ENDEND 图书信息删除,代码如下所示CREATE PROC dbo.pro_deletebookId nvarchar(20),message nvarchar(100) OUTPUTASDECLARE sum intDECLARE ERROR INTBEGINSELECT sum=count(*) from TB_book WHERE bookId=bookId if(sum1)SET message=此书不存在 ELSE DELETE TB_b
15、orrow where bookId=bookId BEGINDELETE FROM TB_book where bookId=bookId SET message=删除成功END END 图书借阅,代码如下所示create proc dbo.pro_borrowuserId varchar(20),bookId varchar(20),message varchar(100) outputasbegin declare sum int declare books int declare borrowdate varchar(20) declare num int select num=cou
16、nt(*) from TB_user where userId=userIdIF (NUM4)set message = 您借阅的书已超过4本,不能再借elsebeginselect sum = count(*) from TB_borrow where bookId = bookIdif (sum 1) begin set borrowdate =getdate() insert into TB_borrow values(userId,bookId,borrowdate) set message = 借书成功 end else set message = 次数已被借 endendend 还
17、书功能,代码如下所示CREATE PROC dbo.pro_backbookId nvarchar(20),message nvarchar(100) outputasBEGINDECLARE sum intSELECT sum=count(*) from TB_borrowwhere bookId=bookIdif(sum1) BEGINSET message=此书未被借ENDELSEBEGINDELETE FROM TB_borrow where bookId=bookIdSET message=还书成功ENDEND6.3.用户管理界面用户管理界面及部分代码如下图所示: 图4.4用户信息添
18、加,代码如下图所示CREATE PROC dbo.pro_userInsertuserId nvarchar(20),userName nvarchar(10),userSex nvarchar(2),userAge int,userEmail nvarchar(20),userTel nvarchar(15),message nvarchar(100) OUTPUTasDECLARE Num intBEGIN IF(userAge 80)BEGINSET message = 年龄不符合条件returnEND ELSEBEGIN select Num=count(*) from TB_user
19、 where UserId=userId or userName=userName if (Num0)SET message=此用户已存在 elseBEGINinsert into TB_user values(userId,userName,userSex,userAge,userEmail,userTel,DEFAULT)SET message=插入成功END ENDEND 用户信息修改,代码如下图所示:CRETAE PROC dbo.pro_userUpdateuserId nvarchar(20),userName nvarchar(10),userSex nvarchar(2),us
20、erAge int,userEmail nvarchar(20),userTel nvarchar(15),message nvarchar(100) OUTPUTasdeclare sum intBEGINSELECT sum=count(*) from TB_user where userId=userId if(sum1) BEGINSET message=此用户不存在ENDelseBEGINUPDATE TB_user SET userName=userName,userSex=userSex,userAge=userAge,userEmail=userEmail,userTel=us
21、erTel where userId=userIdSET message=修改成功ENDEND 用户信息删除,代码如下图所示CREATE PROC dbo.pro_userDeleteuserId nvarchar(10),message nvarchar(100) OUTPUTASDECLARE sum intBEGINselect sum=count(*) from TB_user where userId=userId if(sum1) SET message=此用户不存在 else delete from TB_borrow where userId=userId beginDELET
22、E FROM TB_user where userId=userId SET message=删除成功 endEND6.4.密码修改界面修改界面以及部分重要代码如下所示 图4.56.5.退出系统退出系统代码如下所示using System;using System.Collections.Generic;using System.Text;using System.Windows.Forms;namespace Library public static class CloseForm public static bool flag = false; public static void Cl
23、oseingForm(Object sender, FormClosingEventArgs e) if (flag = false) DialogResult rs = MessageBox.Show(您确定要退出系统?, 系统询问, MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (rs = DialogResult.Yes) flag = true; Application.Exit(); else e.Cancel = true; 总 结本次课程设计是在陈波老师的悉心指导和热心帮助下完成的,陈老师认真负责的工作态度,严谨的教学
24、精神和深厚的理论水平都使我受益匪浅。并且在系统的设计开发过程中,注重了科学的软件设计思路。首先在总体设计上,采用了模块化和分层的设计思想,使整个系统流程清晰、逻辑合理,为系统的实现创造了良好的条件。另外,在安全性上,数据库采用SQL Server数据库加密和用户密码加密,使系统更安全。通过这次课程设计,我对数据库的设计更全面的了解和掌握,将所学的知识运用到实践当中。数据库设计分为三个阶段,分别是:收集和分析用户要求、建立E R模型和数据库模式设计。主要任务是创建数据库模式。数据库逻辑设计中的第一阶段收集和分析用户需求是按以下四步进行的:分析用户活动,确定系统范围,分析用户活动所涉及的数据和分析
25、系统数据。数据流图是一种从数据和对数据的加工两方面表达系统工作过程的图形表示法。含有四种基本成分:带箭头的线段表示数据及其流动方向,圆形框表示对数据的加工,卡片形框表示文件,方框表示源点和终点。画数据流图应遵循:由外向内、自顶向下原则进行。参考文献1 苗雪兰,刘瑞新,宋歌数据库系统原理及应用教程(第三版)M机械工业出版社,20082 陈明. 软件工程M. 北京:中央广播电视大学出版, 2001 3 王利. 数据库基础与应用M. 北京:中央广播电视大学出版社,2002.4 4 张海藩软件工程导论M北京:清华大学出版社,2003 5 萨师煊, 王珊数据库系统概论M 北京:高等教育出版社,20036 薛华成管理信息系统(第四版)M北京:清华大学出版社,2004