图书馆管理系统课程设计报告.doc
《图书馆管理系统课程设计报告.doc》由会员分享,可在线阅读,更多相关《图书馆管理系统课程设计报告.doc(16页珍藏版)》请在咨信网上搜索。
目 录 第一章 课程设计目的与要求 2 1.1课程设计目的 2 1.2课程设计环境 2 1.3课程设计内容及要求 2 第二章 课程设计内容 3 2.1数据库设计 3 2.1.1需求分析 3 2.1.2概念设计 4 2.1.3逻辑设计 5 2.1.4物理设计 6 2.1.5数据库实现 6 2.2 程序设计 2 2.2.1系统流程图 2 2.2.2数据库存储过程 3 第三章 课程设计总结 8 参考文献 8 第一章 课程设计目的与要求 1.1课程设计目的 1、掌握运用数据库原理进行系统分析和设计的方法; 2、掌握关系数据库的设计方法; 3、掌握利用SQL Server 2000技术; 4、掌握应用程序对数据库的访问方法。 1.2课程设计环境 硬件:计算机一台。 软件: Windows XP、SQL Server 2000、Microsoft Visual Basic 6.0 1.3课程设计内容及要求 一、内容 1.要求根据数据库原理,按照数据库系统设计的步骤和规范,完成各阶段的设计内容。 2.需求分析具体实现 3.在sql server2000 上实现设计的数据库模型。 4.对应用程序进行概要设计。 5.用VB实现简单的调用。 二、要求 课程设计过程中,要严格遵守课程设计的时间安排,听从指导教师的指导。正确地完成上述内容,规范完整地撰写出课程设计报告。 第二章 课程设计内容 2.1数据库设计 图书管理系统主要设计目的是利用数据库软件编制一个管理软件,用以实现图书、读者以及日常工作等多项管理。同时对整个系统的分析、设计过程给出一个完整论证。 图书管理系统是一种基于集中统一规划的数据库数据管理新模式。在对图书、读者的管理,其实是对图书、读者数据的管理。本系统的建成无疑会为管理者对图书管理系统提供极大的帮助。 2.1.1需求分析 数据需求 需求分析是指准确了解和分析用户的需求,这是最困难、最费时、最复杂的一步,但也是最重要的一步。它决定了以后各步设计的速度和质量。 根据系统的需求,首先将要记录的信息分类,要记录的信息如下。 1.图书管理 在图书管理中,主要是对“图书库”中的书籍进行管理,如新增图书更新、修改图书信息、提供图书查询和删除图书 3.图书借阅管理 图书借阅管理就是对借书者的借书和还书进行管理,当借书者借书时,随即对“图书库”、“借书库”和“借书证库”进行相应的管理,并把相关信息提供给图书管理和借书证管理;还书,则除了上述的几个功能外,还要对还书库进行更新和记录。 4.管理员管理 管理员管理则是根据需要对各个管理员进行管理,并记录和反馈管理员信息。 事务需求 经过实际考察、咨询和分析,高等院校图书管理系统主要应该具有以下功能模块,如下所示。 (1) 任何人都可对图书信息进行查阅。 (2) 在用户信息管理部分,要求如下: l 可以浏览用户自身信息。 l 可以修改自身登陆密码、和其他(除用户编号外)用户基本信息。 l 可以查询自身借阅信息及图书信息等 (3) 在管理员信息管理部分,要求如下: l 可以浏览所有用户信息。 l 可以浏览管理员自身信息。 l 可以对所有用户信息进行维护,包括查询、修改、添加及删除等操作。 l 可以修改自身登陆密码、和其他(除管理员编号外)管理员基本信息。 l 可以添加管理员。 l 可以对所有用户的借阅信息进行维护,包括查询、修改、添加及删除等操作。 l 可以对图书信息进行维护,包括查询、修改、添加及删除等操作等。用户登录 用户信息管理 图书信息管理 借阅信息管理 管理者信息管理 注 销 系统业务逻辑关系 2.1.2概念设计 概念结构设计是指对用户的需求进行综合、归纳与抽象,形成一个独立于具体DBMS的概念模型,是整个数据库设计的关键。概念设计生成E-R图。 图书 图书编号 书名 丛书类别 作者 出版社 出版日期 图书简介 用户 用户编号 姓名 出生日期 密码 电子邮件 联系地址 联系电话 性别 个人简介 借阅 超出还书天数 应还书时间 借书时间 图书馆管理 E-R图 2.1.3逻辑设计 (1) 用户信息:包括用户编号、姓名、密码、性别、出生日期、联系方式(联系电话、电子邮件、联系地址)、用户简介等。 (2) 书籍信息:包括图书编号、书名、丛书类别、作者、出版社、出版时间、图书简介等。 (3) 借阅信息:包括用户编号、图书编号、借书日期、应归还日期、超出还书天数等。 (4) 管理者信息:包括管理者编号、姓名、密码、性别、出生日期、联系方式(联系电话、电子邮件、联系地址)、管理员简介等。 根据这些需要,本系统需要“用户信息”表,“图书信息”表,“借阅信息”表和“管理者信息”表。 2.1.4物理设计 数据库物理设计的任务是为上一阶段得到的数据库逻辑模式,即数据库的逻辑结构选择合适的应用环境的物理结构,既确定有效地实现逻辑结构模式的数据库存储模式,确定在物理设备上所采用的存储结构和存取方法,然后对该存储模式进行性能评价、修改设计,经过多次反复,最后得到一个性能较好的存储模式。数据库物理设计内容包括记录存储结构的设计,存储路径的设计。 2.1.5数据库实现 数据库实施是指建立数据库,编制与调试应用程序, 组织数据入库,并进行试运行。 (1). 创建数据库 (1) 打开SQL工具“查询分析器” (2) 在查询窗口中键入下列SQL语句 create database BookSystem 执行上述SQL语句即可新建一名为BookSystem的数据库 (2).创建数据表 一个完整的数据库不可缺少的就是数据表,若干个数据表的集合成一个数据库。数据表主要用来存放一定格式的记录,数据表中的行被称为记录,列被称为字段。创建数据表的过程其实就是定义字段的过程。 在此图书管理系统中需要创建四个表,即用户信息表、管理员信息表、图书信息表和用户借书记录表。 创建数据库后,为BookSystem数据库添加数据表,步骤如下。 (1) 新建查询窗口 (2) 在查询窗口中键入下列SQL语句 create table Users( //创建用户信息表 Uid char(20) primary key, //用户编号 Uname varchar(20) not null, //姓名 Upwd varchar(16), //登陆密码 Usex char(2) check (Usex in ('男','女')), //性别 Uborn datetime, //出生日期 Utel char(13), //联系电话 Uemail varchar(30), //电子邮件 Uaddr varchar(50), //联系地址 Uremark varchar(300) //用户简介 ) 执行上述SQL语句即可创建户信息窗口相关表格,创建后的用户信息窗口设计如图所示: create table Managers( //创建管理员信息表 Mid char(20) primary key, //管理员编号 Mname varchar(20) not null, //姓名 Mpwd varchar(16), //登陆密码 Msex char(2) check (Msex in ('男','女')),//性别 Mborn datetime, //出生日期 Mtel char(13), //联系电话 Memail varchar(30), //电子邮件 Maddr varchar(50), //联系地址 Mremark varchar(300) //管理员简介 ) 执行上述SQL语句即可创建管理员信息表相关表格,创建后的管理员信息表窗口设计如图所示: create table Books( //创建图书信息表 Bid char(10) primary key, //图书编号 Bname varchar(50) not null, //书名 Bclass varchar(30), //图书分类 Bwriter varchar(50), //作者 Bbookman varchar(26), //出版社 Bborn datetime, //出版日期 Binstr varchar(500) //图书简介 ) 执行上述SQL语句即可创建图书信息表相关表格,创建后的图书信息表窗口设计如图所示: create table UB( //创建用户借书记录 Uid char(20), //用户编号 Bid char(10), //图书编号 Borrow_time datetime, //借书日期 Return_time datetime, //应还书日期 Over_time smallint, //超出还书天数 primary key (Uid,Bid),//定义主键 foreign key (Uid) references Users(Uid),//外来键 foreign key (Bid) references Books(Bid)//外来键 ) 执行上述SQL语句即可创建用户借书记录相关表格,创建后的用户借书记录设计如图所示: (3).创建视图 创建视图可以屏蔽数据的复杂性,使用户不必了解数据库的结构,就可以方便地使用和管理数据,简化数据权限管理。可以使用户只关心她感兴趣的某些特定数据和他们所负责的特定任务,而那些不需要的或者无用的数据则不在视图中显示,在某些情况下由于表结构的变化对应用程序产生不良的影响,因此视图提供了简单而有效地安全机制。创建视图如下所示: create view as select * from Books where Bid=@id create view as select * from Books where Bname=@name create view as select * from Managers where Mid=@id create view as select * from Managers where Mname=@name create view as select Uid,Bid,Borrow_time,Return_time from UB where Uid=@name create view as select Uid,Bid,Borrow_time,Return_time from UB where Bid=@id (4).索引的创建 创建索引可以大大提高系统的性能。第一,通过创建唯一性索引,可以保证每一行数据的唯一性。第二,可以大大加快数据的检索速度,这也是所以的最主要原因。第三,可以加速表与表之间的连接,特别是实现数据的参考完整性方面特有意义。第四,在使用ORDER BY和GROUP BY子句进行数据检索时,同样可以显著减少查询中分组和排序的时间。第五,通过使用索引,可以在查询过程中,使用优化隐藏器,提高系统性能。创建索引如下所示: CREATE UNIQUE CLUSTERED INDEX [PK__Books__7C8480AE] ON [dbo].[Books] ([Bid]) WITH DROP_EXISTING ON [PRIMARY] CREATE UNIQUE CLUSTERED INDEX [PK__Managers__79A81403] ON [dbo].[Managers] ([Mid]) WITH DROP_EXISTING ON [PRIMARY] CREATE UNIQUE CLUSTERED INDEX [PK_UB] ON [dbo].[UB] ([Uid], [Bid]) WITH DROP_EXISTING ON [PRIMARY] CREATE UNIQUE CLUSTERED INDEX [PK_Users] ON [dbo].[Users] ([Uid]) WITH DROP_EXISTING ON [PRIMARY] 2.2 程序设计 2.2.1系统流程图 在本系统中准备通过如下窗体来实现数据维护的功能。 (1) 主窗体:管理着各个子窗体。 (2)“用户”子窗体:管理用户信息、显示图书及借阅信息 (3)“管理员”子窗体:管理用户、图书及借阅信息。 系统流程图如图所示: 启动界面 登陆 允许登陆? 书籍信息 管理员信息 用户信息 借阅信息 图书信息 系统流程图 2.2.2数据库连接过程 Option Explicit Public constr As String '数据库连接信息 Public rst As ADODB.Recordset '数据库内的记录 Public con As ADODB.Connection Public Sub connect_db() constr = "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=BookSystem;Data Source=" '数据库引擎+路径 Set con = New ADODB.Connection '新建一个数据库连接 con.CursorLocation = adUseClient '用于客户端(ADOR)Recordset对象,游标库属性必须为adUseClient con.ConnectionString = constr '连接信息 con.Open End Sub Public Sub sel_table(table_name As String, where_str As String) Dim sql As String Set rst = New ADODB.Recordset sql = "select * from " & table_name & " " & where_str & "" rst.Open sql, con, adOpenDynamic, adLockOptimistic rst.Requery End Sub Public Sub upd_table(table_name As String, set_str As String, where_str As String) Dim sql As String sql = "update " & table_name & " set " & set_str & "where " & where_str & "" con.BeginTrans con.Execute sql con.CommitTrans End Sub Public Sub del_table(table_name As String, where As String) Dim sql As String sql = "delete from " & table_name & " " & where & "" con.Execute sql End Sub Public Sub ins_table(table_name As String, into As String, values As String) Dim sql As String sql = "insert into " & table_name & into & " " & values & "" con.Execute sql End Sub 功能显示 运行程序后首先显示主窗体,如图所示。 主界面 单击“图书查询”,就会弹出登录框。 图书查询界面 在查询编辑框中填入要查询的关键字,在查询类型选择相应的查询方式,若要查询所有图书(包括借出图书)则将所有勾选,若只查询未借出图书则将所有前面的勾去掉,然后点击搜索即可。点击退出即可回到主界面。 在主界面点击登陆则弹出登陆对话框 登陆界面 在登录对话框中输入用户编号和密码,选择“普通用户”,单击“登陆”按钮,就会对用户身份进行认证,如果认证通过,那么就会弹出用户窗体。 用户窗体(用户基本信息) 普通用户可以修改自己的用户信息,可以修改其登录密码等,还可以查看所借书目等。 借书记录可以显示个人借书的具体情况如借书的编号、书名、借书时间、应还书时间以及超过的天数等信息,点击注销即可返回主窗口。 在登录对话框中输入管理员编号和密码,选择“管理员”,单击“登陆”按钮,就会对管理员身份进行认证,如果认证通过,那么就会出现用户窗体。 管理员可以添加、修改和删除图书的权利。图书信息中的图书编号必须填写,这是区分一本书的惟一标示。其它还要填写书名、类型、作者、出版社等信息,填写完毕后点击保存按钮就可以把新添加的图书保存到数据库中了。 管理员窗体(图书信息) 可以添加用户,进入用户信息,可以对数据库中的所有读者进行管理,可以对读者的信息进行添加、修改、删除。首先要选中来确定要删除或修改的用户,也可以使用“查找”来查找用户,找到后就可以对此用户的信息进行修改了,如果不想要这个用户可以单击“删除”按钮来删除这位用户。 管理员有权利来添加和删除用户的借书记录,首先要根据查找来确定用户所借的书,然后确定信息,确认无误后就可以删除此信息说明这本书已经还了,点击添加时,若某本图书已经借出时,则添加时出现此本书已借出的对话框来说明 第三章 课程设计总结 在这次的课程设计中,让我学到了很多在课堂上和书本上学不到的知识,我在这次课程设计中最大的收获有以下几方面: 一、 领略到了数据库设计在计算机领域的重要性。数据库作为一个永久存储形式在应用中发挥着重要的作用。在数据库设计中,我明白了数据库设计不是范式越高越好的,我们要根据我们的应用来决定,一切应该以需求为首要选择。 二、 对编程环境、一些控件的使用和界面的梅花方面更加熟悉。因为《图书管理系统》中设计到很多控件的使用,只有很好的使用这些控件才可以给出一个很好的界面呈现在用户面前。这样更有利于数据库和用户之间的交流。 三、 利用软件工程学开发系统。虽然这个《图书管理系统》是一个小的系统,但从这个小的项目中也让我明白了数据库作为任何一个系统的后台的重要性,在开发系统设计和实现中学到和总结很多经验和教训。 参考文献 [1] 刘健等. SQL Server数据库案例教程.清华大学出版社,2008 [2] 董建全等.数据库实用教程. 清华大学出版社,2007 [3] 王刚等.VB实用案例教程. 清华大学出版社,2005- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 图书馆 管理 系统 课程设计 报告
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【快乐****生活】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【快乐****生活】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【快乐****生活】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【快乐****生活】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文