数据库系统概论部分知识点总结.docx
《数据库系统概论部分知识点总结.docx》由会员分享,可在线阅读,更多相关《数据库系统概论部分知识点总结.docx(13页珍藏版)》请在冰豆网上搜索。
数据库系统概论部分知识点总结
1、表中的一条记录就是一个实例,反映数据库某一时刻的状态。
2、数据库整体结构
3、数据(Data)是数据库中存储的基本对象
数据的定义:
描述事物的符号记录
数据的种类:
文本、图形、图像、音频、视频、学生的档案记录、货物的运输情况等
数据的特点:
数据与其语义是不可分的
4、数据库的定义:
数据库(Database,简称DB)是长期储存在计算机内、有组织的、可共享的大量数据的集合。
5、数据库的基本特征:
a)数据按一定的数据模型组织、描述和储存
b)可为各种用户共享
c)冗余度较小
d)数据独立性较高
e)易扩展
6、什么是DBMS:
位于用户与操作系统之间的一层数据管理软件。
是基础软件,是一个大型复杂的软件系统
7、DBMS的用途:
科学地组织和存储数据、高效地获取和维护数据
8、DBMS的主要功能:
▪数据定义功能
提供数据定义语言(DDL)
定义数据库中的数据对象
▪数据组织、存储和管理
分类组织、存储和管理各种数据
确定组织数据的文件结构和存取方式
实现数据之间的联系
提供多种存取方法提高存取效率
▪数据操纵功能
提供数据操纵语言(DML)
实现对数据库的基本操作(查询、插入、删除和修改)
▪数据库的事务管理和运行管理
数据库在建立、运行和维护时由DBMS统一管理和控制
保证数据的安全性、完整性、多用户对数据的并发使用
发生故障后的系统恢复
▪数据库的建立和维护功能(实用程序)
数据库初始数据装载转换、数据库转储
介质故障恢复、数据库的重组织
性能监视分析等
▪其它功能
DBMS与网络中其它软件系统的通信
两个DBMS系统的数据转换
异构数据库之间的互访和互操作
9、数据库系统(DatabaseSystem,简称DBS):
在计算机系统中引入数据库后的系统构成
10、数据库系统的构成:
a)数据库
b)数据库管理系统(及其开发工具)
c)应用系统
d)数据库管理员
11、数据库中实现的是数据的真正结构化
a)数据的结构用数据模型描述,无需程序定义和解释
b)数据可以变长
c)数据的最小存取单位是数据项
12、整体数据的结构化是数据库的主要特征之一
13、文件系统阶段:
a)记录内有结构。
b)数据的结构是靠程序定义和解释的。
c)数据只能是定长的。
d)可以间接实现数据变长要求,但访问相应数据的应用程序复杂了。
e)文件间是独立的,因此数据整体无结构。
f)可以间接实现数据整体的有结构,但必须在应用程序中对描述数据间的联系。
g)数据的最小存取单位是记录。
14、数据库管理阶段的特点:
a)共享性:
数据库系统从整个角度看待和描述数据,数据面向整个系统,可以被多个用户、多个应用所共享。
减少数据冗余,节约存储空间;避免了数据之间的不相容性和不一致性;使系统易于扩充。
b)独立性:
物理独立性,指应用程序与存储在磁盘上数据库中的数据是相互独立的。
当数据的物理存储改变了,应用程序不用改变;逻辑独立性,指用户的应用程序与数据库的逻辑结构是相互独立的。
数据的逻辑结构改变了,用户程序也可以不变。
数据独立性是由DBMS的二级映像功能来保证的
c)统一管理:
(1)数据的安全性(Security)保护
保护数据,以防止不合法的使用造成的数据的泄密和破坏。
(2)数据的完整性(Integrity)检查
将数据控制在有效的范围内,或保证数据之间满足一定的关系。
(3)并发(Concurrency)控制
对多用户的并发操作加以控制和协调,防止相互干扰而得到错误的结果。
(4)数据库恢复(Recovery)
将数据库从错误状态恢复到某一已知的正确状态。
15、在数据库中用数据模型这个工具来抽象、表示和处理现实世界中的数据和信息。
16、通俗地讲数据模型就是现实世界的模拟
17、数据模型分为两类(分属两个不同的层次):
(1)概念模型也称信息模型,它是按用户的观点来对数据和信息建模,用于数据库设计。
(2)逻辑模型和物理模型
逻辑模型主要包括网状模型、层次模型、关系模型、面向对象模型等,按计算机系统的观点对数据建模,用于DBMS实现。
物理模型是对数据最底层的抽象,描述数据在系统内部的表示方式和存取方法,在磁盘或磁带上的存储方式和存取方法。
18、数据模型的组成要素:
数据结构、数据操作、完整性约束条件
19、什么是数据结构:
描述数据库的组成对象,以及对象之间的联系
20、数据结构是对系统静态特性的描述
21、数据操作:
对数据库中各种对象(型)的实例(值)允许执行的操作及有关的操作规则
22、数据模型对完整性约束条件的定义:
a)反映和规定本数据模型必须遵守的基本的通用的完整性约束条件。
例如在关系模型中,任何关系必须满足实体完整性和参照完整性两个条件。
b)提供定义完整性约束条件的机制,以反映具体应用所涉及的数据必须遵守的特定的语义约束条件。
23、客观存在并可相互区别的事物称为实体。
可以是具体的人、事、物或抽象的概念。
24、实体所具有的某一特性称为属性。
一个实体可以由若干个属性来刻画。
25、唯一标识实体的属性集称为码。
26、属性的取值范围称为该属性的域。
27、用实体名及其属性名集合来抽象和刻画同类实体称为实体型。
28、同一类型实体的集合称为实体集。
29、联系:
现实世界中事物内部以及事物之间的联系在信息世界中反映为实体内部的联系和实体之间的联系。
30、实体内部的联系通常是指组成实体的各属性之间的联系;实体之间的联系通常是指不同实体集之间的联系。
31、用E-R图来描述现实世界的概念模型
32、型(Type):
对某一类数据的结构和属性的说明
33、值(Value):
是型的一个具体赋值
34、模式(Schema):
数据库逻辑结构和特征的描述,是型的描述,反映的是数据的结构及其联系,模式是相对稳定的
35、实例(Instance):
模式的一个具体值,反映数据库某一时刻的状态,同一个模式可以有很多实例,实例随数据库中的数据的更新而变动
36、数据库系统的三级模式结构
37、一个数据库只有一个模式
38、模式:
描述的是数据的全局逻辑结构。
全局逻辑结构是数据库的核心和关键;独立与数据库的其他层次;设计数据库模式结构时应首先确定数据库的逻辑模式。
39、映象定义通常包含在各自外模式的描述中
40、模式的地位:
是数据库系统模式结构的中间层
41、外模式:
数据库用户(包括应用程序员和最终用户)使用的局部数据的逻辑结构和特征的描述
42、同一外模式也可以为某一用户的多个应用系统所使用。
一个应用程序只能使用一个外模式
43、外模式的用途
a)保证数据库安全性的一个有力措施
b)每个用户只能看见和访问所对应的外模式中的数据
44、内模式(也称存储模式):
是数据物理结构和存储方式的描述,是数据在数据库内部的表示方式。
记录的存储方式(顺序存储,按照B树结构存储,按hash方法存储)
索引的组织方式
数据是否压缩存储
数据是否加密
数据存储记录结构的规定
45、内模式:
依赖于它的全局逻辑结构;独立于数据库的用户视图,即外模式;独立于具体的存储设备;将全局逻辑结构中所定义的数据结构以及关系按照一定的物理存储策略进行组织,达到较好的时间和空间效率
46、一个数据库只有一个内模式
47、外模式:
面向具体的应用程序;定义在逻辑模式之上;独立于存储模式和存储设备;当应用需求发生变化时,相应的外模式不能满足其视图需求时,该外模式就需做相应的改动;设计外模式时,需考虑到应用的扩充性。
48、三级模式是对数据的三个抽象级别
49、数据库中模式/内模式映象是唯一的
50、外模式/模式映象保证了数据的逻辑独立性:
当模式改变时,数据库管理员修改有关的外模式/模式映象,使外模式保持不变;应用程序是依据数据的外模式编写的,从而应用程序不必修改,保证了数据与程序的逻辑独立性,简称数据的逻辑独立性。
51、模式/内模式保证了数据的物理独立性:
当数据库的存储结构改变了(例如选用了另一种存储结构),数据库管理员修改模式/内模式映象,使模式保持不变;应用程序不受影响。
保证了数据与程序的物理独立性,简称数据的物理独立性。
52、数据库的二级映像
a)保证了数据库外模式的稳定性
b)从底层保证了应用程序的稳定性,除非应用需求本身发生变化,否则应用程序一般不需要修改
53、数据与程序之间的独立性,使得数据的定义和描述可以从应用程序中分离出去。
53、DBA:
具体职责:
a)决定数据库中的信息内容和结构
b)决定数据库的存储结构和存取策略
c)定义数据的安全性要求和完整性约束条件
d)数据库的改进和重组
e)监控数据库的使用和运行
`周期性转储数据库
1.数据文件
2.日志文件
系统故障恢复
介质故障恢复
监视审计文件
54、系统分析员:
a)负责应用系统的需求分析和规范说明
b)与用户及DBA协商,确定系统的硬软件配置
c)参与数据库系统的概要设计
55、数据库设计人员:
a)参加用户需求调查和系统分析
b)确定数据库中的数据
c)设计数据库各级模式
d)设计和编写应用系统的程序模块
e)进行调试和安装
56、应用程序员:
设计和编写应用系统的程序模块;进行调试与安装
57、单一的数据结构----关系
58、逻辑结构----二维表
59、域是一组具有相同数据类型的值的集合。
60、笛卡尔积中每一个元素(d1,d2,…,dn)叫作一个n元组(n-tuple)或简称元组(Tuple)
61、笛卡尔积元素(d1,d2,…,dn)中的每一个值di叫作一个分量
62、D1×D2×…×Dn的子集叫作在域D1,D2,…,Dn上的关系,表示为R(D1,D2,…,Dn),其中R为关系名,n为目或度
63、若关系中的某一属性组的值能唯一地标识一个元组,则称该属性组为候选码
64、关系模式的所有属性组是这个关系模式的候选码,称为全码(All-key)
65、若一个关系有多个候选码,则选定其中一个为主码(Primarykey)
66、候选码的诸属性称为主属性(Primeattribute)
67、不包含在任何侯选码中的属性称为非主属性(Non-Primeattribute)
68、任意两个元组的候选码不能相同
69、分量必须取原子值
70、关系数据库的型:
关系数据库模式对关系数据库的描述。
71、关系数据库的值:
关系模式在某一时刻对应的关系的集合,简称为关系数据库
72、实体完整性和参照完整性:
关系模型必须满足的完整性约束条件称为关系的两个不变性,应该由关系系统自动支持
73、用户定义的完整性:
应用领域需要遵循的约束条件,体现了具体领域中的语义约束
74、实体完整性规则(EntityIntegrity):
若属性A是基本关系R的主属性,则属性A不能取空值
75、设F是基本关系R的一个或一组属性,但不是关系R的码。
如果F与基本关系S的主码Ks相对应,则称F是基本关系R的外码
76、关系模型应提供定义和检验这类完整性的机制,以便用统一的系统的方法处理它们,而不要由应用程序承担这一功能
77、关系代数运算:
并、差、交、笛卡尔积
78、专门的关系运算:
a)选择(限制):
从关系R中选取使逻辑表达式F为真的元组,从行的角度进行的运算。
σF(R)={t|tR∧F(t)='真'}。
如:
σSdept='IS'(Student)或σ5='IS'(Student)得到一个结果为Sdept值只为IS的结果集
b)投影:
投影操作主要是从列的角度进行运算,投影之后不仅取消了原关系中的某些列,而且还可能取消某些元组(避免重复行)。
πA(R)={t[A]|tR}
如:
πSname,Sdept(Student)或π2,5(Student)得到结果为只含字段Sname和Sdept的结果集。
c)连接(θ连接):
等值连接,从关系R与S的广义笛卡尔积中选取A、B属性值相等的那些元组,即等值连接为;自然连接,两个关系中进行比较的分量必须是相同的属性组,在结果中把重复的属性列去掉。
一般的连接操作是从行的角度进行运算
自然连接还需要取消重复列,所以是同时从行和列的角度进行运算
d)除:
除操作是同时从行和列角度进行运算
79、SQL语言:
数据定义语言(DDL),数据操纵语言(DML),数据控制语言(DCL)
80、SQL支持关系数据库三级模式结构:
81、数据库中只存放视图的定义而不存放视图对应的数据,视图是一个虚表,用户可以在视图上再定义视图
82、如果完整性约束条件涉及到该表的多个属性列,则必须定义在表级上,否则既可以定义在列级也可以定义在表级。
83、CREATETABLESC(
SnoCHAR(9),
CnoCHAR(4),
GradeSMALLINT,
PRIMARYKEY(Sno,Cno),
/*主码由两个属性构成,必须作为表级完整性进行定义*/
FOREIGNKEY(Sno)REFERENCESStudent(Sno),
/*表级完整性约束条件,Sno是外码,被参照表是Student*/
FOREIGNKEY(Cno)REFERENCESCourse(Cno)
/*表级完整性约束条件,Cno是外码,被参照表是Course*/
);
84、修改基本表:
ALTERTABLE<表名>
[ADD<新列名><数据类型>[完整性约束]]
[DROP<完整性约束名>]
[ALTERCOLUMN<列名><数据类型>];
85、定义基本表:
CREATETABLE<表名>
(<列名><数据类型>[<列级完整性约束条件>]
[,<列名><数据类型>[<列级完整性约束条件>]]…
[,<表级完整性约束条件>]);
86、
87、删除基本表:
DROPTABLE<表名>[RESTRICT|CASCADE];
a)RESTRICT:
删除表是有限制的。
欲删除的基本表不能被其他表的约束所引用
如果存在依赖该表的对象,则此表不能被删除
b)CASCADE:
删除该表没有限制。
在删除基本表的同时,相关的依赖对象一起删除
88、DBMS自动选择是否使用索引以及使用哪些索引,索引是关系数据库的内部实现技术,属于内模式的范畴
89、RDBMS中索引一般采用B+树、HASH索引来实现
a)B+树索引具有动态平衡的优点
b)HASH索引具有查找速度快的特点
90、在最经常查询的列上建立聚簇索引(CLUSTER)以提高查询效率,一个基本表上最多只能建立一个聚簇索引,经常更新的列不宜建立聚簇索引,删除索引时,系统会从数据字典中删去有关该索引的描述。
91、HAVING短语与WHERE子句的区别:
a)作用对象不同
b)WHERE子句作用于基表或视图,从中选择满足条件的元组
c)HAVING短语作用于组,从中选择满足条件的组
92、数据删除(Delete):
DeleteFromrWhereP,从关系r中删除满足P的元组,只是删除数据,而不是删除关系的定义(DROPTABLER)
93、数据插入(Insert):
InsertIntoStudent(sno,sname,sage)Values(‘95002’,‘李四’,26)
InsertIntoS2Select*FromS1WhereSAGE>20
94、数据更新(Update):
UpdateStudentSetsdept=‘MA’Wheresno=‘95001’
UpdateSCSetgrade=(Selectavg(grade)FromSCWherecno=‘C05’)
Wherecno=‘C05’先做AVG,再做UPDATE
95、DBMS执行对视图的查询时,首先进行有效性检查。
检查查询中涉及的表、视图等是否存在。
如果存在,则从数据字典中取出视图的定义,把定义中的子查询和用户的查询结合起来,转换成等价的对基本表的查询,然后再执行修正了的查询。
96、设计一个好的关系数据库系统,关键是要设计一个好的数据库模式(数据库逻辑设计问题
97、函数依赖就是属性间的逻辑依赖关系
98、设R(U)是一个关系模式,U是R的属性集合,X和Y是U的子集.对于R(U)的任何一个可能的关系r,如果r中不存在在X上的属性值相同两个元组,而在Y上的属性值不同,则称X函数决定Y,或Y函数依赖于X,
99、函数依赖是属性之间的一种联系,体现在属性值是否相等。
由上面的定义可以知道,如果X→Y,则r中任意两个元组,若它们在X上的属性值相同,那么在Y上的属性值一定也相同。
函数依赖反映了(描述了)现实世界的一种语义。
函数依赖是指关系R模式的所有关系元组均应满足的约束条件,而不是关系模式中的某个或某些元组满足的约束条件
100、在R(U)中,如果X→Y,并且对于X的任何一个真子集X,都有X′→Y,则称Y对X完全函数依赖;若X→Y,但Y不完全函数依赖于X,则称Y对X部分函数依赖;
101、若属性X和Y之间有“多对多”的联系,则X与Y之间不存在任何函数依赖.
102、XY,但Y应该是不属于X则称XY是非平凡的函数依赖。
XY,但YX则称XY是平凡的函数依赖。
103、在关系模式R中的每一个具体关系r中,如果每个属性值都是不可再分的基本数据项,则称R是第一范式的关系,记作R∈1NF.
104、若关系模式R∈1NF,且每个非主属性都完全依赖于R的码,则R∈2NF.从1NF中消除非主属性对候选码的部分函数依赖,则获得2NF关系.
105、若关系模式R∈2NF,且每个非主属性都不传递依赖于R的任意候选码,则R∈3NF.从2NF关系中,消除非主属性对码的传递依赖函数而获得3NF关系,每个非主属性既不部分依赖,也不传递依赖于R的任何候选码.
106、练习题规范化:
107、数据库设计方法(步骤):
需求分析、概念结构设计、逻辑结构设计、物理结构分析、数据库实施和数据库运行和维护。
108、系统需求调查的方法
a) 跟班作业
b)开调查会
c)请专人介绍
d)询问
e)设计调查表请用户填写
f)查阅数据记录
109、数据字典是系统中各类数据描述的集合(元数据),包括数据项、数据结构、数据流、数据存储、处理过程。
110、自底向上的设计方法(一般采用此方法),即首先定义各局部应用的概念结构,然后将它们集成起来,得到全局概念结构的设计方法。
111、“属性”必须是不可分割的数据项,不能包含其它属性。
能够作为属性的,应尽量作为属性
112、事务(Transaction)是访问并可能更新数据库中各种数据项的一个程序执行单元(unit)。
它是一个不可分割的工作单位,恢复和并发控制的基本单位。
113、事务的ACID特性:
a)原子性(Atomicity)
b)一致性(Consistency)
c)隔离性(Isolation)
d)持续性(Durability)
114、并发控制的主要技术
a)有封锁(Locking)
b)时间戳(Timestamp)
c)乐观控制法
115、封锁就是事务T在对某个数据对象(例如表、记录等)操作之前,先向系统发出请求,对其加锁,加锁后事务T就对该数据对象有了一定的控制,在事务T释放它的锁之前,其它的事务不能更新此数据对象。
116、基本封锁类型
a)排它锁(ExclusiveLocks,简记为X锁)
b)共享锁(ShareLocks,简记为S锁)
117、避免活锁:
采用先来先服务的策略
118、产生死锁的原因是两个或多个事务都已封锁了一些数据对象,然后又都请求对已为其他事务封锁的数据对象加锁,从而出现死等待。
119、预防死锁的方法
a)一次封锁法
b)顺序封锁法
120、死锁的诊断
a)超时法
b)事务等待图法
121、冲突操作是指不同的事务对同一个数据的读写操作和写写操作
122、两段锁协议指所有事务必须分两个阶段对数据项加锁和解锁
a)在对任何数据进行读、写操作之前,事务首先要获得对该数据的封锁
b)在释放一个封锁之后,事务不再申请和获得任何其他封锁
123、事务遵守两段锁协议是可串行化调度的充分条件,而不是必要条件。
124、封锁对象的大小称为封锁粒度(Granularity)
125、封锁粒度与系统的并发度和并发控制的开销密切相关。
a)封锁的粒度越大,数据库所能够封锁的数据单元就越少,并发度就越小,系统开销也越小;
b)封锁的粒度越小,并发度较高,但系统开销也就越大
126、分布式数据库由一组数据组成,这些数据物理上分布在计算机网络的不同结点(亦称场地)上,逻辑上是属于同一个系统。
127、区分一个系统是若干集中式数据库的简单连网还是分布式数据库系统的技术要点在于:
系统是否支持全局应用
128、分布式数据库不仅要求数据的物理分布,而且要求这种分布是面向处理、面向应用的