数据库知识点总结.docx
《数据库知识点总结.docx》由会员分享,可在线阅读,更多相关《数据库知识点总结.docx(12页珍藏版)》请在冰豆网上搜索。
数据库知识点总结
期末复习顺便总结下,书本为高等教育出版社的《数据库系统概论》。
第一章知识点
数据库是长期储存之计算机内的、有组织的、可共享的大量数据的集合。
1,数据库数据特点P4
永久存储,有组织,可共享。
2,数据独立性及其如何保证 P10,P34
逻辑独立性:
用户的应用程序与数据库的逻辑结构互相独立。
(内模式保证)
物理独立性:
用户的应用程序与存储在磁盘上的数据库中的数据相互(外模式保证)
3,数据模型的组成要素P13
数据结构、数据操作、完整性约束。
4,用ER图来表示概念模型P17
实体、联系和属性。
联系本身也是一种实体型,也可以有属性。
第二章
1,关系的相关概念(如关系、候选码、主属性、非主属性) P42-P44
单一的数据结构----关系。
现实世界的实体以及实体间的各种联系均用关系来表示。
域是一组具有相同数据类型的值的集合。
若关系中的某一属性组的值能唯一地标识一个元组,则称该属性组为候选码
关系模式的所有属性组是这个关系模式的候选码,称为全码
若一个关系有多个候选码,则选定其中一个为主码
候选码的诸属性称为主属性
不包含在任何侯选码中的属性称为非主属性
2关系代数运算符 P52
自然连接是在广义笛卡尔积R×S中选出同名属性上符合相等条件元组,再进行投影,去掉重复的同名属性,组成新的关系。
给定关系r(R)和s(S), S⊂R,则r÷s是最大的关系t(R-S)满足txs⊆r
3,关系代数表达式
第三章
操 作 对 象
操 作 方 式
创 建
删 除
修 改
模式
CREATESCHEMA
DROPSCHEMA
表
CREATETABLE
DROPTABLE
ALTERTABLE
视 图
CREATEVIEW
DROPVIEW
索 引
CREATEINDEX
DROPINDEX
1,SQL的特点P79-P80
1.综合统一
2.高度非过程化
3.面向集合的操作方式
4.以同一种语法结构提供多种使用方式
5.语言简洁,易学易用
2,基本表的定义、删除和修改P84-P87
PRIMARYKEY
PRIMARYKEY (Sno,Cno)
UNIQUE
FOREIGNKEY (Cpno) REFERENCES Course(Cno)
ALTERTABLE <表名>
[ ADD <新列名><数据类型>[完整性约束]]
[ DROP <完整性约束名>]
[ ALTERCOLUMN<列名><数据类型>];
DROPTABLE <表名>[RESTRICT|CASCADE];
3,索引的建立与删除P89-P90
CREATE[UNIQUE][CLUSTER]INDEX <索引名>
ON <表名>(<列名>[<次序>][,<列名>[<次序>]]…);
唯一索引 UNIQUE、非唯一索引或聚簇索引CLUSTER
DROPINDEX <索引名>;
4,数据查询P91-P114
唯一 DISTINCT
确定范围 BETWEENAND,NOTBETWEENAND
确定集合 IN,NOTIN
字符匹配 LIKE,NOTLIKE
空值 ISNULL,ISNOTNULL
多重条件(逻辑运算) AND,OR,NOT
ORDERBY子句 升序:
ASC;降序:
DESC;缺省值为升序
聚集函数:
计数
COUNT([DISTINCT|ALL]*)COUNT([DISTINCT|ALL]<列名>)
计算总和
SUM([DISTINCT|ALL]<列名>)
计算平均值
AVG([DISTINCT|ALL]<列名>)
最大最小值
MAX([DISTINCT|ALL]<列名>)MIN([DISTINCT|ALL]<列名>)
GROUPBY子句分组&& HAVING短语
左外连接 LEFTOUTJOIN XXX ON (XX.A=XXX.A)
5,数据更新P115-P118
INSERT
INTO <表名>[(<属性列1>[,<属性列2>…)]
VALUES (<常量1>[,<常量2>] … )/或子查询
UPDATE <表名>SET <列名>=<表达式>[,<列名>=<表达式>]…
[WHERE <条件>];DELETE FROM <表名> [WHERE <条件>];
6,视图的P118-126
CREATE VIEW
<视图名> [(<列名> [,<列名>]…)]
AS <子查询> --子查询不允许含有ORDERBY子句和DISTINCT短语
[WITH CHECK OPTION]; DROP VIEW <视图名>;
第四章、第五章
1,授权与回收P137-P140
GRANT语句的一般格式:
GRANT<权限>[,<权限>]... --ALLPRIVILIGES [ON <对象名>]TO<用户>[,<用户>]... --PUBLIC [WITHGRANTOPTION]; --允许他再将此权限授予其他用户
REVOKE语句的一般格式为:
REVOKE<权限>[,<权限>]... [ON <对象名>]FROM<用户>[,<用户>]...; --级联(CASCADE)收回
2,数据库角色P142-P143
角色是权限的集合
一、角色的创建
CREATE ROLE <角色名>
二、给角色授权
GRANT <权限>[,<权限>]… ON 对象名 TO<角色>[,<角色>]…
三、将一个角色授予其他的角色或用户
GRANT <角色1>[,<角色2>]…TO <角色3>[,<用户1>]… [WITHADMINOPTION]
四、角色权限的收回
REVOKE<权限>[,<权限>]…ON<对象类型><对象名>FROM<角色>[,<角色>]…
3,数据库的三类完整性及其实现P152-P158
实体完整性
CREATE TABLE中用PRIMARYKEY定义
参照完整性
在CREATE TABLE中用FOREIGNKEY短语定义哪些列为外码
用REFERENCES短语指明这些外码参照哪些表的主码
用户定义的完整性
CREATETABLE时定义
列值非空(NOTNULL)列值唯一(UNIQUE)检查列值是否满足一个布尔表达式(CHECK)
CONSTRAINT约束CONSTRAINT<完整性约束条件名>[PRIMARYKEY短语
|FOREIGNKEY短语 |CHECK短语]
使用ALTERTABLE语句修改表中的完整性限制
可以先删除原来的约束条件,再增加新的约束条件
ALTERTABLEStudent
DROPCONSTRAINTC1;
ALTERTABLEStudent
ADDCONSTRAINTC1CHECK(SnoBETWEEN900000AND999999)
第六章
关系模式 是一个五元组:
R(U,D,DOM,F)
1,函数依赖和码的定义P172-P174
数据依赖:
一个关系内部属性与属性之间的约束关系。
最重要的数据依赖:
函数依赖和多值依赖
函数依赖:
一个属性或一组属性的值可以决定其它属性的值。
函数依赖:
平凡函数依赖与非平凡函数依赖
在关系模式R(U)中,对于U的子集X和Y,
如果X→Y,但Y不属于X,则称X→Y是非平凡的函数依赖
若X→Y,但Y属于X, 则称X→Y是平凡的函数依赖
在R(U)中,如果X→Y,并且对于X的任何一个真子集X',都有X'
Y,则称Y对X完全函数依赖,记作:
X
Y。
若X→Y,但Y不完全函数依赖于X,则称Y对X部分函数依赖,记作X
Y。
在R(U)中,如果X→Y,(YX),YX,Y→Z,则称Z对X传递函数依赖。
加上条件Y→X,是因为如果Y→X,则X←→Y,实际上是
是直接函数依赖而不是传递函数依赖。
2,1NF,2NF,3NF P175-P176
如果一个关系模式R的所有属性都是不可分的基本数据项,则R∈1NF
第一范式是对关系模式的最起码的要求
若R∈1NF,且每一个非主属性完全函数依赖于码,则R∈2NF。
每一个非主属性既不部分依赖于码也不传递依赖于码,则R∈3NF
3,函数依赖公理系统(Armstrong公理系统P183,闭包P184,最小覆盖P186)
Armstrong公理系统
A1.自反律(Reflexivity):
若Y属于XU,则X→Y为F所蕴含。
属于
A2.增广律(Augmentation):
若X→Y为F所蕴含,且Z属于U,则XZ→YZ为F所蕴含。
A3.传递律(Transitivity):
若X→Y及Y→Z为F所蕴含,则X→Z为F所蕴含。
(导出规则):
合并规则:
由X→Y,X→Z,有X→YZ。
(A2,A3)
伪传递规则:
由X→Y,WY→Z,有XW→Z。
(A2,A3)
分解规则:
由X→Y及Z属于Y,有X→Z。
(A1,A3)
在关系模式R中为F所逻辑蕴含的函数依赖的全体叫作F的闭包,记为F+。
设F为属性集U上的一组函数依赖,X 属于U,XF+={A|X→A能由F根据Armstrong公理导出},XF+称为属性集X关于函数依赖集F的闭包
F+=G+的充分必要条件是F 属于 G+,和G 属于 F+
最小依赖集
(1)F中任一函数依赖的右部仅含有一个属性。
(2)F中不存在这样的函数依赖X→A,使得F与F-{X→A}等价。
(3)F中不存在这样的函数依赖X→A,X有真子集Z使得F-{X→A}∪{Z→A}与F等价。
4,模式分解(模式分解的准则及定义P189-P190,模式分解方法P191)
模式的分解要保持无损联接性和函数依赖性。
算法见教材...
第七章
1,数据库设计的基本步骤P201
需求分析概念结构设计 逻辑结构设计 物理结构设计 数据库实施 数据库运行和维护
2,概念结构设计的方法和步骤P209-P211
设计概念结构的4类方法
自顶向下 首先定义全局概念结构的框架,然后逐步细化
自底向上 首先定义各局部应用的概念结构,然后将它们集成起来,得到全局概念结构
逐步扩张 首先定义最重要的核心概念结构,然后向外扩充,以滚雪球的方式逐步生成其他概念结构,直至总体概念结构
混合策略 将自顶向下和自底向上相结合,用自顶向下策略设计一个全局概念结构的框架,以它为骨架集成由自底向上策略中设计的各局部概念结构。
3,E-R图向关系模型的转换P224-P225
属性不能再具有需要描述的性质。
属性不能与其他实体具有联系。
这种转换一般遵循如下原则:
⒈一个实体型转换为一个关系模式。
⒉一个m:
n联系转换为一个关系模式。
⒊一个1:
n联系可以转换为一个独立的关系模式,也可以与n端对应的关系模式合并。
⒋一个1:
1联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。
⒌三个或三个以上实体间的一个多元联系转换为一个关系模式。
⒍同一实体集的实体间的联系,即自联系,也可按上述1:
1、1:
n和m:
n三种情况分别处理。
⒎具有相同码的关系模式可合并。
4,物理设计(关系模式存取方法的选择P228-P230,数据库的存取结构P230-P231)
常用存取方法
1、索引方法 B+树索引方法
查询条件,聚集函数,连接操作
2、聚簇(Cluster)方法
连接操作,相等比较,重复率高
3、HASH方法
大小可预知,DBMS提供动态存取方法
确定数据库的物理结构
⒈确定数据的存储结构⒉设计数据的存取路径⒊ 确定数据的存放位置(存取时间 存储空间利用率 维护代价)⒋ 确定系统配置
第十一章
事务(Transaction)是用户定义的一个数据库操作序列,这些操作要么全做,要么全不做,是一个不可分割的工作单位;
事务是恢复和并发控制的基本单位;
1,事务的特性P279
事务的ACID特性:
原子性(Atomicity)一致性(Consistency)隔离性(Isolation)持续性(Durability)
2,并发控制不当导致的问题P294
1)丢失修改(LostUpdate)
2)读“脏数据” (dirtyread)
3)不可重复读(Non-repeatableRead)
3,封锁P295-296
封锁具有3个环节:
第一个环节是申请加锁; 第二个环节是获得锁; 第三个环节是释放锁。
基本的封锁类型有两种:
排它锁(ExclusiveLocks,简称X锁)和共享锁(ShareLocks,简称S锁)。
解决活锁问题的方法是采用先来先服务。
解决死锁方法:
(1)预防死锁的发生;
(2)允许发生死锁,然后采用一定手段定期诊断系统中有无死锁,若有则解除之。
预防死锁的方法:
一次封锁法, 顺序封锁法
死锁的诊断:
超时法,事务等待图法
4,并发调度的可串行性P299-P230
定义:
多个事务的并发执行是正确的,当且仅当其结果与按某一次序串行地执行这些事务时的结果相同。
冲突操作是指不同的事务对同一个数据的读写操作和写写操作。
不同事务的冲突操作不能交换。
同一事务的两个操作不能交换。
冲突可串行化调度是可串行化调度的充分条件,不是必要条件。
5,两段锁协议P301-P302
两段锁协议:
指所有事务必须分两个阶段对数据项加锁和解锁。
第一阶段是获得封锁,也称为扩展阶。
第二阶段是释放封锁,也称为收缩阶段。
事务遵守两段锁协议是可串行化调度的充分条件,而不是必要条件。
THANKS!
!
!
致力为企业和个人提供合同协议,策划案计划书,学习课件等等