图书馆管理系统课程设计报告_第1页
图书馆管理系统课程设计报告_第2页
图书馆管理系统课程设计报告_第3页
图书馆管理系统课程设计报告_第4页
图书馆管理系统课程设计报告_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

目目 录录 第一章 课程设计目的与要求 .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 21 第一章 课程设计目的与要求 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 实现简单的调用。 二、要求 课程设计过程中,要严格遵守课程设计的时间安排,听从指导教师的指导。正确地 完成上述内容,规范完整地撰写出课程设计报告。 31 第二章 课程设计内容 2.1 数据库设计数据库设计 图书管理系统主要设计目的是利用数据库软件编制一个管理软件,用以实现图书、 读者以及日常工作等多项管理。同时对整个系统的分析、设计过程给出一个完整论证。 图书管理系统是一种基于集中统一规划的数据库数据管理新模式。在对图书、读者 的管理,其实是对图书、读者数据的管理。本系统的建成无疑会为管理者对图书管理系 统提供极大的帮助。 2.1.1 需求分析 数据需求数据需求 需求分析是指准确了解和分析用户的需求,这是最困难、最费时、最复杂的一步, 但也是最重要的一步。它决定了以后各步设计的速度和质量。 根据系统的需求,首先将要记录的信息分类,要记录的信息如下。 1.图书管理 在图书管理中,主要是对“图书库”中的书籍进行管理,如新增图书更新、修改图 书信息、提供图书查询和删除图书 3.图书借阅管理 图书借阅管理就是对借书者的借书和还书进行管理,当借书者借书时,随即对“图 书库” 、 “借书库”和“借书证库”进行相应的管理,并把相关信息提供给图书管理和借 书证管理;还书,则除了上述的几个功能外,还要对还书库进行更新和记录。 4.管理员管理 管理员管理则是根据需要对各个管理员进行管理,并记录和反馈管理员信息。 事务需求事务需求 经过实际考察、咨询和分析,高等院校图书管理系统主要应该具有以下功能模块, 如下所示。 (1) 任何人都可对图书信息进行查阅。 41 (2) 在用户信息管理部分,要求如下: 可以浏览用户自身信息。 可以修改自身登陆密码、和其他(除用户编号外)用户基本信息。 可以查询自身借阅信息及图书信息等 (3) 在管理员信息管理部分,要求如下: 可以浏览所有用户信息。 可以浏览管理员自身信息。 可以对所有用户信息进行维护,包括查询、修改、添加及删除等操作。 可以修改自身登陆密码、和其他(除管理员编号外)管理员基本信息。 可以添加管理员。 可以对所有用户的借阅信息进行维护,包括查询、修改、添加及删除等操作。 可以对图书信息进行维护,包括查询、修改、添加及删除等操作等。 用户登录 用 户 信 息 管 理 图 书 信 息 管 理 借 阅 信 息 管 理 管 理 者 信 息 管 理 注 销 系统业务逻辑关系 2.1.2 概念设计 概念结构设计是指对用户的需求进行综合、归纳与抽象,形成一个独立于具体 DBMS 的概念模型,是整个数据库设计的关键。概念设计生成 E-R 图。 51 图书 图书编号书名丛书类别作者 出版社 出版日期 图书简介 用户 用户编号姓名出生日期密码 电子邮件 联系地址 联系电话 性别 个人简介 借阅 超出还书天数 应还书时间 借书时间 图书馆管理 E-R 图 2.1.3 逻辑设计 (1) 用户信息:包括用户编号、姓名、密码、性别、出生日期、联系方式(联系电 话、电子邮件、联系地址) 、用户简介等。 (2) 书籍信息:包括图书编号、书名、丛书类别、作者、出版社、出版时间、图书 简介等。 (3) 借阅信息:包括用户编号、图书编号、借书日期、应归还日期、超出还书天数 等。 (4) 管理者信息:包括管理者编号、姓名、密码、性别、出生日期、联系方式(联 系电话、电子邮件、联系地址) 、管理员简介等。 根据这些需要,本系统需要“用户信息”表, “图书信息”表, “借阅信息”表和“管 理者信息”表。 61 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 (男,女), /性别 71 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 语句即可创建管理员信息表相关表格,创建后的管理员信息表窗口 设计如图所示: 81 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) 创建视图创建视图 创建视图可以屏蔽数据的复杂性,使用户不必了解数据库的结构,就可以方便地使用 和管理数据,简化数据权限管理。可以使用户只关心她感兴趣的某些特定数据和他们所 负责的特定任务,而那些不需要的或者无用的数据则不在视图中显示,在某些情况下由 91 于表结构的变化对应用程序产生不良的影响,因此视图提供了简单而有效地安全机制。 创建视图如下所示: 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) 索引的创建索引的创建 创建索引可以大大提高系统的性能。第一,通过创建唯一性索引,可以保证每一行数 据的唯一性。第二,可以大大加快数据的检索速度,这也是所以的最主要原因。第三, 可以加速表与表之间的连接,特别是实现数据的参考完整性方面特有意义。第四,在使 21 用 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.22.2 程序设计 .1 系统流程图系统流程图 在本系统中准备通过如下窗体来实现数据维护的功能。 (1) 主窗体:管理着各个子窗体。 (2)“用户”子窗体:管理用户信息、显示图书及借阅信息 (3)“管理员”子窗体:管理用户、图书及借阅信息。 系统流程图如图所示: 31 启动界面 登陆 允许登陆? 书籍信息 管理员信息 用户信息 借阅信息 图书信息 系统流程图 .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 & 41 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 功能显示 运行程序后首先显示主窗体,如图所示。 主界面 单击“图书查询” ,就会弹出登录框。 51 图书查询界面 在查询编辑框中填入要查询的关键字,在查询类型选择相应的查询方式,若要查询 所有图书(包括借出图书)则将所有勾选,若只查询未借出图书则将所有前面的勾去掉, 然后点击搜索即可。点击退出即可回到主界面。 在主界面点击登陆则弹出登陆对话框 登陆界面 在登录对话框中输入用户编号和密码,选择“普通用户” ,单击“登陆”按钮,就会 61 对用户身份进行认证,如果认证通过,那么就会弹出用户窗体。 用户窗体(用户基本信息) 普通用户可以修改自己的用户信息,可以修改其登录密码等,还可以查看所借 书目等。 借书记录可以显示个人借书的具体情况如借书的编号、书名、借书时间、应还 书时间以及超过的天数等信息,点击注销即可返回主窗口。 在登录对话框中输入管理员编号和密码,选择“管理员” ,单击“登陆”按钮, 就会对管理员身份进行认证,如果认证通过,那么就会出现用户窗体。 71 管理员可以添加、修改和删除图书的权利。图书信息中的图书编号必须填写, 这是区分一本书的惟一标示。其它还要填

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论