数据库复习资料.docx
《数据库复习资料.docx》由会员分享,可在线阅读,更多相关《数据库复习资料.docx(15页珍藏版)》请在冰豆网上搜索。
数据库复习资料
第一章数据库系统概述
1.数据独立性:
指数据库中的数据与应用程序间相互独立,即数据的逻辑结构,存储结构以及存取方式的改变不影响应用程序。
物理独立性
指用户的应用程序与存储在磁盘上的数据库中数据是相互独立的。
当数据的物理存储改变了,应用程序不用改变。
逻辑独立性
指用户的应用程序与数据库的逻辑结构是相互独立的。
数据的逻辑结构改变了,用户程序也可以不变。
2.数据库系统组成:
数据库(DB)是存储在计算机内、有组织的、可共享的数据集合
数据库管理系统(DatabaseManagementSystem,简称DBMS)是位于用户与操作系统之间的一层数据管理软件。
3.数据库系统的三级模式结构
模式(也称逻辑模式)
数据库中全体数据的逻辑结构和特征的描述
所有用户的公共数据视图,综合了所有用户的需求
外模式(也称子模式或用户模式)
内模式(也称存储模式)
是数据物理结构和存储方式的描述
是数据在数据库内部的表示方式
一个数据库只有一个内模式
数据库系统的二级映象与数据独立性
外模式/模式映象
定义外模式与模式之间的对应关系
每一个外模式都对应一个外模式/模式映象
映象定义通常包含在各自外模式的描述中
模式/内模式映象
模式/内模式映象定义了数据全局逻辑结构与存储结构之间的对应关系。
例如,说明逻辑记录和字段在内部是如何表示的
数据库中模式/内模式映象是唯一的
该映象定义通常包含在模式描述中
DBMS在三级模式之间提供了二级映象功能,保证了数据库系统中的数据能够具有较高的逻辑独立性与物理独立性。
4.数据库系统的三级模式与二级映像的优点:
(1)保证数据的独立性。
(2)简化了用户的接口。
(3)有利于数据的共享。
(4)有利于数据的安全性保密。
DBMS的组成
5.数据模型
三个世界的划分
数据加工经历了现实世界、信息世界和计算机世界三个不同的世界,经历了两级抽象和转换
6.数据模型的分类
概念模型
它是按用户的观点对数据和信息建模
用来描述某个特定组织所关心的信息结构
概念模型属于信息世界中的模型
逻辑模型(或称数据模型)和物理模型
逻辑模型是属于计算机世界中的模型
逻辑模型主要包括层次模型、网状模型、关系模型、面向对象模型等
物理模型描述数据在磁盘或磁带上的存储方式和存取方法
7.数据模型通常由数据结构,数据操作,和数据的完整性约束三个要素组成。
8.数据模型主要有层次模型(树形数据结构),网状模型(有向图结构),关系模型(二维表)和面向对象模型(递归和嵌套结构)。
9.数据库系统的发展:
第一代:
格式化数据模型第二代:
关系数据模型第三代:
面向对象数据模型
第二章关系数据库
1.关系的性质:
关系是一种规范化了的二维表中行的集合
列是同质的,即每一列中的分量必须来自同一个域,必须是同一类型的数据。
不同的列可来自同一个域,每一列称为属性,不同的属性必须有不同的名字。
列的顺序可以任意交换。
关系中元组的顺序(即行序)可任意。
关系中每一分量必须是不可分的数据项。
关系的描述称为关系模式
2.关系的完整性
①实体完整性
主关系键的值不能为空或部分为空
②参照完整性
如果关系R2的外部关系键X与关系R1的主关系键相符,则X的每个值或者等于R1中主关系键的某一个值,或者取空值
③用户定义完整性
针对某一具体关系数据库的约束条件
反映某一具体应用所涉及的数据必须满足的语义要求
关系模型由关系数据结构,关系操作和关系完整性三部分组成。
关系代数的运算按运算符的不同主要分为两类:
3.传统的集合运算
包括并、差、交和笛卡尔积等运算
4.专门的关系运算
包括选取、投影、连接和除法等运算
5.基本的运算
包括并,差,积,选取,投影
附加:
除笛卡尔积运算外,其他的集合运算要求参加运算的关系必须满足相容性。
※考查重点:
关系代数的应用。
第三章关系数据库标准语言——SQL
※考查重点:
数据的查询主要看一下课后习题P135
第四章关系数据库理论
※考查重点:
规范化为第三范式并且要好好看书
第五章数据库保护
1.数据库保护:
为了适应和满足数据共享的环境和要求,DBMS要保证整个系统的正常运转,防止数据意外丢失和不一致性数据的产生,以及当数据库遭受破坏后能迅速的恢复正常,这就是数据库的安全性保护。
数据库的安全性保护功能有安全性控制,完整性控制,并发性控制和数据恢复。
(1)数据库的安全性是指保护数据库以防止非法使用所造成的数据泄露、更改或破坏。
(2)数据库的完整性是指保护数据库中数据的正确性、有效性和相容性,防止错误的数据进入数据库造成无效操作。
数据库的完整性是指防止合法用户使用数据库时向数据库中加入不符合语义的数据。
完整性措施的防范对象是不合语义的数据。
(3)为了充分利用数据库资源,很多时候数据库用户都是对数据库系统并行存取数据,这样就会发生多个用户并发存取同一数据块的情况,如果对并发操作不加控制可能会产生不正确的数据,破坏数据的完整性
(4)系统必须具有检测故障并把数据从错误状态中恢复到某一正确状态的功能,这就是数据库的恢复。
数据库恢复的基本原理就是利用存储在系统其他地方的冗余数据来修复。
完整性规则的组成:
完整性规则有三类
(1)实体完整性
(2)参照完整性(3)用户自定义完整性
2.事务:
是数据库系统中执行的一个工作单位,它是由用户定义的一组操作序列。
事务的特征:
(1)原子性
(2)一致性(3)隔离性(4)持久性
3.封锁:
就是当一个事务在对某个数据对象(可以是数据项、记录、数据集以至整个数据库)进行操作之前,必须获得相应的锁,以保证数据操作的正确性和一致性。
封锁类型有两种
(1)排它型封锁
(2)共享封锁
4.数据库的故障:
可分为以下三类:
事务故障、系统故障和介质故障。
数据库的并发操作导致的数据库不一致性主要有以下三种:
(1)丢失更新
(2)污读(3)不可重读
生成冗余数据常用技术登记日志文件和数据转储
衡量授权机制的两个重要指标:
授权粒度和授权表中允许登记项的范围
第六章数据库设计
数据库设计分为六个阶段:
1.系统需求分析阶段2.概念结构设计阶段3.逻辑结构设计阶段4.物理结构设计阶段5.数据库实施阶段6.数据库运行与维护阶段
(1)需求分析的主要方法有自顶向下和自底向上两种
(2)数据流图
2.E-R模型是最著名、最实用的一种是概念模型。
E-R图中的冲突:
属性冲突,命名冲突和结构冲突
将E-R图转换为关系模型实际上就是将实体、属性和联系转换成关系模式。
ⅰ.如果联系为1:
1,则每个实体的键都是关系的候选键;
ⅱ.如果联系为1:
n,则n端实体的键是关系的键;
ⅲ.如果联系为n:
m,则各实体键的组合是关系的键
3.数据库的物理结构设计:
(1)确定物理结构
(2)评价物理结构
4.数据库实施是指根据逻辑设计和物理设计的结果,在计算机上建立起实际的数据库结构、装入数据、进行测试和试运行的过程。
5.数据库运行和维护阶段的主要任务包括以下三项内容:
(1)维护数据库的安全性与完整性;
(2)监测并改善数据库性能;
(3)重新组织和构造数据库。
※考查重点:
课后习题中的设计题
第七章SQLServer2000高级应用
1.存储过程是一组为了完成特定功能的SQL语句集。
存储过程的优点:
模块化的程序设计,高效率的执行,减少网络流量,可以作为安全机制使用
2.触发器是一种特殊类型的存储过程。
触发器主要是通过事件进行触发而被执行的,而存储过程可以通过存储过程名字而被直接调用。
每个触发器有插入表和删除表两个特殊表在数据库中
3.触发器的种类:
AFTER触发器INSTEADOF触发器
4.触发器的作用:
(1)强化约束
(2)跟踪变化(3)级联运行(4)存储过程的调用
5.备份类型:
数据库备份,事务日志备份,差异备份,文件和文件组备份
6.还原模式:
简单还原,完全还原和批日志还原
附加:
第二章课后答案
三简答题
(1)查询T1老师所授课程的课程号和课程名。
ΠCNO,CN(σTNO=’T1’(TC)*ΠCNO,CN(C))
(2)查询年龄大于18岁男同学的学号、姓名、系别。
ΠSNO,SN,Dept(σAge>18Sex=’男’(S))
(3)查询“李力”老师所授课程的课程号、课程名和课时。
ΠCNO(ΠTNO(σTN=’李力’(T))*TC))*C
(4)查询学号为S1的同学所选修课程的课程号、课程名和成绩。
ΠCNO,CN,Score(σSNO=’S1’(SC)*ΠCNO,CN(C))
(5)查询“钱尔”同学所选修课程的课程号、课程名和成绩。
ΠCNO,CN,Score(ΠSNO(σSN=’钱尔’(S))*ΠCNO,CN(C)*SC)
(6)查询至少选修“刘伟”老师所授全部课程的学生姓名。
ΠSN((ΠSNO,SN(S)*(ΠSNO,CNO(SC)ΠCNO(σTN=’刘伟’(T*TC))))
(7)查询“李思”同学未选修的课程的课程号和课程名。
ΠCNO,CN((ΠCNO(C)-ΠCNO(σSN=’李思’(S)*SC))*C)
(8)查询全部学生都选修了的课程的课程号和课程名。
ΠCNO,CN(C*(ΠSNO,CNO(SC)ΠSNO(S)))
(9)查询选修了课程号为C1和C2的学生的学号和姓名。
(ΠSNo,CNo(SC)ΠCNo(σCNo=’C1’CNo=’C2’(C))*ΠSNo,SN(S)
(10)查询选修全部课程的学生的学号和姓名。
ΠSNO,SN(S*(ΠSNO,CNO(SC)ΠCNO(C)))
(11)查询选修课程包含“程军”老师所授课程之一的学生学号。
ΠSNO(SC*ΠCNO(σTN=’程军’(C)))
(12)查询选修课程包含学号S2的学生所修课程的学生学号。
ΠSNO,CNO(SC)ΠCNO(σCNO=’S2’(SC))
第四章课后答案
三、简答题
7.设有关系模式R(U,F),其中:
U={A,B,C,D,E},F={A→D,E→D,D→B,BC→D,CD→A}
求R的候选码。
(2)根据函数依赖关系,确定关系模式R属于第几范式。
(3)将R分解为3NF,并保持无损连接性。
解:
由于(CE)+=ABCDE,C+=C,E+=BDE,R的候选码是CE。
求出最小依赖集F’={A→D,E→D,D→B,BC→D,CD→A}
将R分解的3NF:
={AD,DE,BD,BCD,ACD}
19.设有关系R,如图所示。
职工号
职工名
年龄
性别
单位号
单位名
E1
ZHAO
20
F
D3
CCC
E2
QIAN
25
M
D1
AAA
E3
SUN
38
M
D3
CCC
E4
LI
25
F
D3
CCC
试问R属于3NF?
为什么?
若不是,它属于第几范式?
并如何规范化为3NF?
解:
R不属于3NF,它是2NF。
因为:
R的候选码为职工号和职工名,而:
职工号→单位号,单位号→职工号,单位号→单位名
所以:
职工号t单位名,即存在非主属性单位名对候选码职工号的传递函数依赖。
规范化后的关系子模式为关系R1与R2。
R1
职工号
职工名
年龄
性别
单位号
E1
ZHAO
20
F
D3
E2
QIAN
25
M
D1
E3
SUN
38
M
D3
E4
LI
25
F
D3
R2
单位号
单位名
D3
CCC
D1
AAA
第五章课后答案
三、设计题
1.一个图书管理系统中有如下信息:
图书:
书号,书名,数量,位置
借书人:
借书证号,姓名,单位
出版社:
出版社名,邮编,地址,电话,E-mail
约定:
任何人可借多种书,任何一种书可为多个人所借,借书证号具有唯一性。
借书和还书时,要登记相应的借书日期和还书日期;一个出版社可以出版多种书籍,同一本书仅为一个出版社所出版,出版社具有唯一性。
根据以上情况,完成如下设计:
(1)构造满足需求的E-R图。
(2)将E-R图转换为等价的关系模式。
(3)指出转换后的每个关系模式的关系键。
解:
(1)满足上述需求的E-R图如图所示。
(2-3)转换为等价的关系模式及关系键如下;
借书人(借书证号,姓名,单位)
图书(书号,书名,数量,位置,出版社名)
出版社(出版社名,电话,邮编,地址,E-mail)
借阅(借书证号,书号,借书日期,还书日期)。
2.图6-21(a)、(b)和(c)所示给出某企业管理系统三个不同的局部E-R图,将其合并成一个全局E-R图,并设置各个实体以及联系的属性(允许增加认为必要的属性,也可将有关基本实体的属性改为联系的属性)。
(a)(b)(c)
图6-21局部的E-R图
各实体构成如下:
部门:
部门号,部门名,电话,地址
职员:
职员号,职员名,职务(干部/工人),年龄,性别
设备处:
单位号,电话,地址
工人:
工人编号,姓名,年龄,性别
设备:
设备号,名称,位置,价格
零件:
零件号,名称,规格,价格
厂商:
单位号,名称,电话,地址
解:
汇总后的E-R图如图所示。
各类实体的属性为:
部门:
部门号,部门名,电话,地址
职工:
职工号,职工名,职务,年龄,性别
设备:
设备号,名称,规格,价格
零件:
零件号,名称,规格,价格
3.某医院病房计算机管理中需要如下信息:
科室:
科室名,科室地址,科室电话,医生姓名
病房:
病房号,床位号,所属科室名
医生:
工作证号,姓名,性别,出生日期,联系电话,职称,所属科室名
病人:
病历号,姓名,性别,诊断记录,主管医生,病房号
其中,一个科室有多个病房、多个医生,一个病房只能属于一个科室,一个医生只属于一个科室,但可负责多个病人的诊治,一个病人的主管医生只有一个。
完成如下设计:
(1)设计该计算机管理系统的E-R图;
(2)将该E-R图转换为关系模型结构;
(3)指出转换结果中每个关系模式的候选码。
解:
(1)本题的E-R图如图所示。
(2)对应的关系模型结构如下:
科室(科名,科地址,科电话)
病房(病房号,床位号,科室名)
医生(工作证号,姓名,性别,出生日期,联系电话,职称,科室名)
病人(病历号,姓名,性别,诊治记录,主管医生,病房号)
(3)每个关系模式的候选码如
(2)所示。
附加:
考试题型:
分为三个大题
一.填空题:
共二十分(每空一分)
二.简答题:
四个小题(每题六分)
共二十四分
三.综合应用题:
四个小题(每题十四分)
共五十六分
成绩评定标准:
考勤10%+(作业+笔记)20%
+期末考试70%=总评100%