图书管理系统后台数据库设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
图书管理系统后台数据库设计
1.系统功能描述 (1)
2.需求分析阶段 (1)
2.1需求信息的收集 (1)
2.1.1调查的目的 (1)
2.1.2调查的内容 (1)
2.1.3调查方式 (1)
2.2需求信息的分析整理 (2)
2.2.1业务流程分析 (2)
2.2.2分析结果的描述 (2)
2.3评审 (2)
3.概念结构设计阶段 (2)
3.1概念模型 (2)
3.2概念设计的主要步骤 (3)
4.逻辑结构设计 (3)
4.1 E—R模式向关系模式的转换 (4)
4.1.1 关系模式集及关系模式集的具体关系 (4)
4.1.2 表的具体信息 (4)
4.2 关系图 (6)
5.创建数据库和表 (6)
5.1创建数据库 (6)
5.2创建表 (7)
5.2.1用SQL语句建立学生表 (7)
5.2.2用SQL语句建立借书登记表 (7)
5.2.3用SQL语句建立图书编目表 (7)
6.SQL查询 (8)
6.1查询学生表的所有信息 (8)
6.2查询所以图书的作者和编号 (8)
6.3 查询所以男生的信息 (9)
6.4 查询所以学生的借书情况 (9)
6.5 查询所以学生的姓名和班级和所借的书名 (10)
总结 (11)
参考文献 (11)
致谢 (12)
1.系统功能描述
SQL SERVER 是一个杰出的数据库平台,能够满足各种类型的企、事业单位,对构建网络数据库的需求,同时还具有功能哭库强大、安全可靠等特点,可用于大型连机事务处理,数据仓库、电子商务等.它与计算机系统紧密集成,具有方便易用的界面并提供了一套完整的工具和实用程序,大大减轻了管理员的工作量,使用户对数据库的操作变的非常简单,使许多以前需要手工景象吃力的复杂任务现在可以通过图形化界面和向导工具来轻松的完成.
SQL SERVER 提供的服务工具能够帮助系统管理员达到这个目标。
通过大量的系统介绍了数据库及其相关的原理与应用实际,以原理为基础,以应用为目标,将原理与应用有机的结合。
2.需求分析阶段
要设计一个性能良好的数据库系统,明确应用环境对系统的要求是首要的和最基本的。
需求分析阶段应该对系统的整个应用情况作全面的,详细的调查,确定企业的目标,收集支持系统总目标的基础数据和对这些数据的要求,明确用户的需求,并把这些要求写出用户和数据库设计者都能接受的文档。
需求分析大致可以分为三步来完成,即需求信息的收集,分析整理和评审。
在调查研究之前,要做好充分的准备工作。
要明确调查的目的,调查的内容和调查的方式。
2.1需求信息的收集
2.1.1调查的目的
首先,要了解组织的机构设置,主要业务活动和职能。
其次,要明确组织的目标,大致工作流程和任务范围划分。
2.1.2调查的内容
外部要求:信息的性质,响应的时间,安全性和完整性要求。
业务现状:这是调查的重点,包括信息的种类,信息的流程,信息的处理方式。
2.1.3调查方式
跟班作业,小组交谈,请熟悉调查对象的人填写调查表。
2.2需求信息的分析整理
要把收集到的信息转化为狭义阶段设计工作可用的形式信息,必须对需求信息作分析整理工作:
2.2.1业务流程分析
一般采用数据流分析方,分析结果一数据流图表示
2.2.2分析结果的描述
对需求分析的内容整理成清单,分类编写。
2.3评审
3.概念结构设计阶段
在概念设计阶段中,设计人员从用户的角度看待数据从处理要求和约束,产生一个反映用户观点的概念模型。
然后再把模型转化成逻辑模式。
将概念设计从设计过程中独立开来。
3.1概念模型
图3.1E—R图
3.2概念设计的主要步骤
概念设计的任务一般可分为三步来完成:进行数据抽象,设计局部概念模式;将局部概念模式综合成全局概念模式;评审。
4.逻辑结构设计
逻辑设计的目的是把概念设计阶段设计好的E—R图转换为与选用的具体机器上的DBMS所支持的数据模型相符合的逻辑结构(包括数据模式和外模式)。
4.1 E—R模式向关系模式的转换
4.1.1 关系模式集及关系模式集的具体关系学生(证件号,姓名,性别,班级,籍贯,电话)
图书(图书编号,图书名,作者,出版社, 类别,单价)
借阅(证件号,图书编号,借期,还期)
4.1.2 表的具体信息
学生表
表4.1.2.1借书登记表
表4.1.2.2图书编目表
表4.1.2.3
4.2 关系图
5.创建数据库和表5.1创建数据库
create database 图书
on primary
(
name=图书_data,
filename=’D:\ 图书.mdf’, size=2,
mazsize=unlimited, filegrowth=10%)
log on
(
name=图书_log,
filename=’D: 图书.ldf’, size=5,
maxsize= unlimited,
filegrowth=20%
)
5.2创建表
5.2.1用SQL语句建立学生表
create table学生表
(
证件号char(10) not null primary key , 姓名char(10),
性别char(2),
班级char(10),
籍贯char(20) ,
电话char(25)
)
5.2.2用SQL语句建立借书登记表create table借书登记表
(
证件号char(10) not null primary key, 图书编号char(10) not null primary key , 借期 datetime(8) ,
还期 datetime(8)
)
5.2.3用SQL语句建立图书编目表create table 图书编目表
(
图书编号char(10) not null primary key, 图书名char(15) ,
出版社char(10),
作者char(10) ,
类别char(20) ,
单价money(8)
)
6.SQL查询
6.1查询学生表的所有信息
程序清单如下:
select *
from 学生表
查询结果如下:
6.2查询所以图书的作者和编号程序清单如下:
select 作者, 图书编号
from 图书编目表
查询结果如下:
6.3 查询所以男生的信息
程序清单如下:
select *
from 学生表
where 性别=’男’
查询结果如下:
6.4 查询所以学生的借书情况
程序清单如下:
select 学生表.证件号, 姓名,借书登记表. 图书编号, 借期 ,还期from 学生表, 图书编目表, 借书登记表
where 学生表.证件号=借书登记表.证件号
and 图书编目表.图书编号=借书登记表.图书编号
查询结果如下:
6.5 查询所以学生的姓名和班级和所借的书名程序清单如下:
select 姓名,班级,图书名
from 学生表, 借书登记表, 图书编目表
where 学生表.证件号=借书登记表.证件号
and 图书编目表.图书编号=借书登记表.图书编号
查询结果如下:
总结
这次课程设计主要是针对这个学期所学的SQL SERVER 2000 的知识,对所学知识的统筹,一,数据库设计,需求分析,根据设计任务给出的题目,查找相关资料,结合自己的生活经验,对数据库进行分析。
二,概念结构设计,在需求分析的基础上,设计E—R模型,详细描述实体的属性和实体之间的联系,消灭不必要的冗余。
三,逻辑结构设计,实现E—R图向关系模型的转换,特别注意实体的1:n联系,优化数据模型。
详细生命实体,实体属性和实体之间的关系。
四,使用SQL语句创建数据库。
五,使用SQL语句创建数据库六,设计查询语句,执行查询。
这次我们是以2人一小组,我和徐益威分为一小组,因为之前我们准备比较充分,所以刚上第一节课之前我们就分工好了,她主要负责设计部分,而我则从设计报告入手,交叉部分再相互协商,我这边报告大体做的是从准备工作时就有所考虑了,所以还算比较顺利。
可是出现了不少的问题,我们找老师讨教,老师耐心为我们解答了不足之处,并介意改进之处。
最后又由于机子中病毒了,我两不的不重新再做一次。
我们又利用晚饭时间进行了讨论,初步定下了下节课的计划,按计划我们很快完成了设计,虽然老师不是太满意,我们也挑战了n次,但结果是我们完成了。
通过几次课程设计我能真正懂得团体的重要性,并能将学过的知识比较系统地运用起来,更能出色的完成老师叫给我们的任务。
参考文献
[1]、李春宝《数据库原理习题与解析》清华大学出版社 2004—9出版
[2]、李伟红《SQL SERVER 2000实用教程》中国水利水电出版社2006—1出版
[3]、丁宝康《数据库原理》经济科学出版社 2000—3出版
致谢
在本次课程设计过程中,我们参考了大量的相关技术资料,老师给予了大量的指导和帮助,许多同学也给予了他们的经验,在此深表谢意。
不过限于我们的水平,文中如果有欠妥的地方,敬请老师以及各位读者指出,我们定当改正。
再次感谢在本文的编写过程中给予我们指导以及帮助的人们。