自学考试04735数据库系统原理复习题资料全Word格式.docx
- 文档编号:17569389
- 上传时间:2022-12-07
- 格式:DOCX
- 页数:32
- 大小:41.96KB
自学考试04735数据库系统原理复习题资料全Word格式.docx
《自学考试04735数据库系统原理复习题资料全Word格式.docx》由会员分享,可在线阅读,更多相关《自学考试04735数据库系统原理复习题资料全Word格式.docx(32页珍藏版)》请在冰豆网上搜索。
属性—字段(数据项)
实体集—文件
实体标识符—关键码
5.实体之间联系的元数:
与一个联系有关的实体集个数。
常用二元联系。
二元联系的类型有三种:
一对一联系、一对多联系、多对多联系。
6.一对一联系:
如果实体集E1中每个实体至多和实体集E2中的一个实体有联系,反之亦然,那么实体集E1和E2的联系称为“一对一联系”,记为“1:
1”。
7.一对多联系:
如果实体集E1中每个实体与实体集E2中任意个(零个或多个)实体间有联系,而E2中每个实体至多和E1中一个实体有联系,那么称E1对E2的联系是“一对多联系”,记为“1:
N”。
8.多对多联系:
如果实体集E1中每个实体可以与实体集E2中任意个(零个或多个)实体间有联系,反之亦然,那么称E1和E2的联系是“多对多联系”,记为“M:
三、数据抽象的级别
1.数据模型:
描述数据库的结构和定义,对现实世界的数据进行抽象。
2.从现实世界的信息到数据库存储的数据以及用户使用的数据是一个逐步抽象过程,根据数据抽象的级别定义了四种模型:
概念模型、逻辑模型、外部模型和内部模型。
3.概念模型:
表达用户需求观点的数据全局逻辑结构的模型。
4.逻辑模型:
表达计算机实现观点的DB全局逻辑结构的模型。
5.外部模型:
表达用户使用观点的DB局部逻辑结构的模型。
6.内部模型:
表达DB物理结构的模型。
7.数据抽象的过程、即数据库设计的过程具体步骤:
1)根据用户需求,设计数据库的概念模型;
2)根据转换规则,把概念模型转换成数据库的逻辑模型;
3)根据用户的业务特点,设计不同的外部模型,给程序员使用;
4)数据库实现时,要根据逻辑模型设计其内部模型。
通常分为概念设计、逻辑设计(2和3步)和物理设计三个阶段。
8.常用的概念模型是实体联系(ER)模型,ER模型主要用ER图来表示。
9.逻辑模型的分类:
层次模型、网状模型、关系模型等。
10.层次模型:
用树型(层次)结构表示实体及实体间联系的数据模型。
11.1969年,美国IBM公司的IMS系统是典型的层次模型系统。
12.网状模型:
用有向图结构表示实体及实体间联系的数据模型。
13.1969年,CODASYL组织提出DBTG报告中的数据模型是网状模型的主要代表。
14.关系模型:
是由若干个关系模式组成的集合。
关系模式即记录类型,它的实例称为关系,每个关系实际上是一张二维表格。
15.1970年,美国IBM公司的E.F.Codd连续发表论文,提出关系模型,奠定了关系数据库的理论基础。
关系数据库是目前的主流数据库。
16.外部模型中的模式称为视图。
17.三级模式:
从用户(或应用程序)到数据库之间,DB的数据结构描述有三个层次:
1)外模式:
用户与数据库系统的接口,是用户用到的那部分数据的描述。
外模式由若干个记录类型组成。
2)逻辑模式:
是数据库中全部数据的整体逻辑结构的描述。
3)内模式:
是数据库在物理存储方面的描述。
注意:
外模式是逻辑模式的子集。
18.两级映像:
1)外模式/逻辑模式映像:
存在于外模式和逻辑模式之间,用于定义外模式和逻辑模式之间的对应性。
2)逻辑模式/内模式映像:
存在于逻辑模式和内模式之间,用于定义逻辑模式和内模式之间的对应性。
19.数据库系统的三级模式、两级映像结构使数据库系统达到了高度的数据独立性。
20.数据独立性:
是指应用程序与数据库的数据结构之间相互独立,在修改数据结构时,尽可能不修改应用程序。
分为逻辑数据独立性和物理数据独立性。
21.逻辑数据独立性:
如果数据库的逻辑模式要修改,那么只要对外模式/逻辑模式映像作相应的修改,可以使外模式和应用程序尽可能保持不变。
这样就认为数据库达到了逻辑数据独立性。
22.物理数据独立性:
如果数据库的内模式要修改,即数据库的物理结构有所变化,那么只要对逻辑模式/内模式映像作相应的修改,可以使逻辑模式尽可能保持不变。
也就是对内模式的修改尽量不影响逻辑模式,当然对外模式和应用程序的影响更小,这样就认为数据库达到了物理数据独立性。
四、数据库管理系统(DBMS)
1.DBMS的主要功能:
数据库的定义功能(DBMS提供DDL定义数据库的三级模式、两级映像等)、数据库的操纵功能(DBMS提供DML实现对数据的操作,基本的数据操作有检索和更新两类)、数据库的保护功能、数据库的维护功能、数据字典。
五、数据库系统(DBS)
1.DBS的组成:
是数据库、硬件、软件和数据库管理员的集合体。
2.软件包括DBMS、OS、各种主语言和应用开发支撑软件等程序。
其中,DBMS是DBS的核心软件,要在OS支持下才能工作。
3.数据库管理员(DBA):
是控制数据整体结构的一组人员,负责DBS的正常运行,承担创建、监控和维护数据库结构的责任。
第二章数据库设计和ER模型
一、数据库系统生存期
1.数据库系统生存期:
数据库应用系统从开始规划、设计、实现、维护到最后被新的系统取代而停止使用的整个期间。
2.数据库系统生存期分七个阶段:
规划、需求分析、概念设计、逻辑设计、物理设计、实现、运行维护。
3.规划阶段三个步骤:
系统调查、可行性分析、确定数据库系统总目标。
4.需求分析阶段:
主要任务是系统分析员和用户双方共同收集数据库系统所需要的信息内容和用户对处理的需求,并以需求说明书的形式确定下来。
5.概念设计阶段:
产生反映用户单位信息需求的概念模型。
与硬件和DBMS无关。
6.逻辑设计阶段:
将概念模型转换成DBMS能处理的逻辑模型。
外模型也将在此阶段完成。
7.物理设计阶段:
对于给定的基本数据模型选取一个最适合应用环境的物理结构的过程。
数据库的物理结构主要指数据库的存储记录格式、存储记录安排和存取方法。
8.数据库的实现:
包括定义数据库结构、数据装载、编制与调试应用程序、数据库试运行。
二、ER模型的基本概念
1.ER模型的基本元素是:
实体、联系和属性。
2.实体:
是一个数据对象,指应用中可以区别的客观存在的事物。
实体集:
是指同一类实体构成的集合。
实体类型:
是对实体集中实体的定义。
一般将实体、实体集、实体类型统称为实体。
3.联系:
表示一个或多个实体之间的关联关系。
联系集:
是指同一类联系构成的集合。
联系类型:
是对联系集中联系的定义。
一般将联系、联系集、联系类型统称为联系。
4.同一个实体集内部实体之间的联系,称为一元联系;
两个不同实体集实体之间的联系,称为二元联系,以此类推。
5.属性:
实体的某一特性称为属性。
在一个实体中,能够惟一标识实体的属性或属性集称为实体标识符。
6.ER模型中,方框表示实体、菱形框表示联系、椭圆形框表示属性、实体与联系、实体与其属性、联系与其属性之间用直线连接。
实体标识符下画横线。
联系的类型要在直线上标注。
联系也有可能存在属性,但联系本身没有标识符。
例:
假设一个学生可选多门课程,而一门课程又有多个学生选修,一个教师可讲多门课程,一门课程至多只有一个教师讲授。
ER图如下:
7.概念设计三个步骤:
设计局部ER模型、设计全局ER模型和全局ER模型的优化。
三、关系模型的基本概念
1.关系模型的定义:
用二维表格表示实体集,用关键码表示实体之间联系的数据模型。
2.在关系模型中,字段称为属性,字段值称为属性值,记录类型称为关系模式。
记录称为元组,元组的集合称为关系或实例。
有时习惯称关系为表或表格,元组为行,属性为列。
关系中属性个数称为元数,元组个数称为基数。
3.关键码(简称键):
由一个或多个属性组成。
4.超键:
在关系中能惟一标识元组的属性集称为关系模式的超键。
5.候选键:
不含有多余属性的超键。
6.主键:
用户选作元组标识的候选键。
一般如不加说明,键是指主键。
7.外键:
如果模式R中属性集K是其他模式的主键,那么K在模式R中称为外键。
8.值域:
关系中每一个属性都有一个取值范围,称为属性的值域。
每一个属性对应一个值域,不同的属性可对应于同一值域。
9.关系的定义:
关系是一个属性数目相同的元组的集合。
10.关系的性质:
关系是一种规范化了的二维表格。
1)关系中每一个属性值都是不可分解的;
2)关系中不允许出现重复元组;
3)关系没有行序;
4)元组中的属性在理论上也是无序的,但使用时按习惯考虑列的顺序。
11.关系数据库中的数据与更新操作必须遵循三类完整性规则:
实体完整性规则、参照完整性规则、用户定义的完整性规则。
12.实体完整性规则:
要求关系中元组在组成主键的属性上不能有空值。
13.参照完整性规则:
如果属性集K是关系模式R1的主键,K也是关系模式R2的外键,那么在R2关系中,K的取值只允许两种可能,或者为空值,或者等于R1关系中某个主键值。
这条规则的实质是“不允许引用不存在的实体”。
其中,R1称为参照关系;
R2称为依赖关系。
这条规则在具体使用时,有三点变通:
1)外键和相应的主键可以不同名,只要定义在相同值域上即可;
2)R1和R2可以是同一个关系模式,此时表示了同一个关系中不同元组之间的联系;
3)外键值是否允许空,应视具体问题而定。
14.用户定义的完整性规则:
用户针对具体的数据约束,设置的完整性规则,由系统来检验实施。
四、ER模型到关系模型的转换
1.ER图转换成关系模式集的算法:
1)实体类型的转换:
将每个实体类型转换成一个关系模式,实体的属性即为关系模式的属性,实体标识符即为关系模式的键。
2)联系类型的转换:
主要掌握二元联系类型的转换。
a)若实体间联系是1:
1,可以在两个实体类型转换成的关系模式中任意一个关系模式的属性中加入另一个关系模式的键(作为外键)和联系类型的属性。
b)若实体间联系是1:
N,则在N端实体类型转换成的关系模式中加入1端实体类型的键(作为外键)和联系类型的属性。
c)若实体间联系是M:
N,则将联系类型也转换成关系模式,其属性为两端实体类型的键(作为外键)加上联系类型的属性,而键为两端实体键的组合。
下面是教学管理的一个可能的ER图。
图中,有三个实体类型:
系、教师和课程;
有四个联系类型:
主管、聘用、开设和任教。
根据转换算法,把该图转换成关系模式集的步骤如下:
第一步:
把三个实体类型转换成三个关系模式(注意关系模式的表示方法):
系(系编号,系名,电话)
教师(教工号,姓名,性别,职称)
课程(课程号,课程名,学分)
第二步:
对于1:
1联系,可以在“系”模式中加入教工号(教工号为外键)。
N联系“聘用”,可以在“教师”模式中加入系编号和聘期两个属性(系编号为外键);
N联系“开设”,可以在“课程”模式中加入系编号(系编号为外键)。
这样第一步得到的三个模式改变成如下形式(注意:
外键通常使用波浪线表示):
系(系编号,系名,电话,主管人的教工号)
教师(教工号,姓名,性别,职称,系编号,聘期)
课程(课程号,课程名,学分,系编号)
第三步:
对于M:
N联系“任教”,则生成一个新的关系模式:
任教(教工号,课程号,教材)
这样,转换成的四个关系模式如下:
2.采用ER模型的逻辑设计步骤
1)导出初始关系模式集:
把概念设计的结果(即全局ER模型)转换成初始关系模式集。
2)规范化处理
3)模式评价
4)模式修正
5)设计外模式
第三章关系模式设计理论
一、关系模式的设计准则
1.数据冗余:
同一个数据在系统中多次重复出现。
2.关系模式设计不当引起的异常问题:
数据冗余、操作异常(包括修改异常、插入异常和删除异常)
3.关系模式的非形式化设计准则
1)关系模式的设计应尽可能只包含有直接联系的属性,不要包含有间接联系的属性。
也就是,每个关系模式应只对应于一个实体类型或一个联系类型。
2)关系模式的设计应尽可能使得相应关系中不出现插入异常、删除和修改等操作异常现象。
3)关系模式的设计应尽可能使得相应关系中避免放置经常为空值的属性。
4)关系模式的设计应尽可能使得关系的等值连接在主键和外键的属性上进行,并且保证以后不会生成额外的元组。
4.习惯使用的一些符号:
1)英文字母表首部的大写字母“A,B,C,…”表示单个的属性。
2)英文字母表尾部的大写字母“…,U,V,W,X,Y,Z”表示属性集。
3)大写字母R表示关系模式,小写字母r表示其关系。
4)关系模式的简化表示方法:
R(A,B,C,…)或R(ABC…)
5)属性集X和Y的并集简写为XY。
二、函数依赖
1.函数依赖(FD)的定义:
设有关系模式R(U),X和Y是属性集U的子集,函数依赖是形成X→Y的一个命题,只要r是R的当前关系,对r中任意两个元组t和s,都有t[X]=s[X]蕴涵t[Y]=s[Y],那么称FDX→Y在关系模式R(U)中成立。
说明:
1)t[X]表示元组t在属性集X上的值,其余类同。
2)X→Y读作“X函数决定Y”或“Y函数依赖于X”。
3)FD是对关系模式R的一切可能的关系r定义的。
对于当前关系r的任意两个元组,如果X值相同,则要求Y值也相同,即有一个X值就有一个Y值与之对应,或者说Y值由X值决定。
3.FD的逻辑蕴涵:
设F是在关系模式R上成立的函数依赖的集合,X→Y是一个函数依赖。
如果对于R的每个满足F的关系r也满足X→Y,那么称F逻辑蕴涵X→Y,记为F|=X→Y。
4.设F是函数依赖集,被F逻辑蕴涵的函数依赖全体构成的集合,称为函数依赖集F的闭包,记为F+。
即F+={X→Y|F|=X→Y}
5.FD的推理规则(Armstrong公理)
设U是关系模式R的属性集,F是R上成立的只涉及到U中属性的函数依赖集。
7.对于FDX→Y,如果YX,那么称X→Y是一个“平凡的FD”,否则称为“非平凡的FD”。
通常研究非平凡FD。
X→X,X→φ,φ→φ,XY→X都是平凡函数依赖;
X→XY则是非平凡函数依赖。
9.属性集的闭包
10.设F是属性集U上的FD集,X上U的子集,那么(相对于)属性集X的闭包用X+表示,它是一个从F集使用FD推理规则推出的所有满足X→A的属性A的集合:
X+={属性A|F|=X→A}
11.X→Y能用FD推理规则推出的充分必要条件是YX+,从而避开求F+,使问题得到简化。
13.如果关系模式R(U)上的两个函数依赖集F和G,有F+=G+,则称F和G是等价的函数依赖集。
三、关系模式的分解特性
示。
四、范式
1.范式:
衡量关系模式好坏的标准。
2.数据库设计中最常用的是3NF和BCNF。
3.第一范式(1NF):
如果关系模式R的每个关系r的属性值都是不可分的原子值,那么称R是第一范式的模式。
满足1NF的关系称为规范化的关系,否则称为非规范化的关系。
1NF是关系模式应具备的最起码的条件。
4.局部依赖和完全依赖:
对于FDW→A,如果存在XW有X→A成立,那么称W→A是局部依赖(A局部依赖于W);
否则称W→A是完全依赖。
5.主属性和非主属性:
如果A是关系模式R的候选键中的属性,那么称A是R的主属性;
否则称A是R的非主属性。
6.第二范式(2NF):
如果关系模式是1NF,且每个非主属性完全函数依赖于候选键,那么称R是第二范式(2NF)的模式。
7.分解成2NF模式集的算法:
设关系模式R(U),主键是W,R上还存在FDX→Z,并且Z是非主属性和X
W,那么W→Z就是一个局部依赖。
此时应把R分解成两个模式:
R1(XZ),主键是X;
R2(Y),其中Y=U-Z,主键仍是W,外键是X(参照R1)。
如果R1和R2还不是2NF,则重复上述过程,一直到数据库模式中的每一个关系模式都是2NF为止。
8.如果X→Y,Y→A,且Y→X和AY,那么称X→A是传递依赖(A传递依赖于X)。
9.第三范式(3NF):
如果关系模式R是2NF,且每个非主属性都不传递依赖于R的候选键,那么称R是第三范式(3NF)的模式。
10.分解成3NF模式集的算法:
设关系模式R(U),主键是W,R上还存在FDX→Z。
并且Z是非主属性,ZX,X不是候选键,这样W→Z就是一个传递依赖。
如果R1和R2还不是3NF,则重复上述过程,一直到数据库模式中的每一个关系模式都是3NF为止。
11.如果R是3NF模式,那么R也是2NF模式。
如果R是2NF模式,那么R也是1NF模式。
12.BC范式(BCNF):
如果关系模式R是1NF,且每个属性都不传递依赖于R的候选键,那么称R是BCNF的模式。
13.如果R是BCNF模式,那么R也是3NF模式。
14.分解成BCNF模式集的算法能保持无损分解,但不一定能保持FD集。
而分解成3NF模式集的算法既能保持无损分解,又能保持FD集。
15.关系模式由1NF分解为2NF,消除了非主属性对键的局部函数依赖;
由2NF分解为3NF,消除了非主属性对键的传递函数依赖;
而BCNF则消除了每一属性对键的传递函数依赖。
16.关系模式设计理论主要用于数据库的逻辑设计过程中。
第四章关系运算
要求、目标:
一、简介
1.关系模型的三个组成部分:
数据结构、数据操纵和数据完整性规则。
2.数据结构:
数据库中全部数据及其相互联系都被组织成“关系”(二维表格)的形式。
关系模型基本的数据结构是关系。
3.数据操纵:
关系模型提供一组完备的高级关系运算,以支持对数据库的各种操作。
关系运算分成关系代数和关系演算两类。
4.数据完整性规则:
数据库中数据必须满足实体完整性、参照完整性和用户定义的完整性等三类完整性规则。
5.关系数据库的数据操纵语言(DML)的语句分成查询语句和更新语句两大类。
查询语句用于描述用户的各种检索要求;
更新语句用于描述插入、删除、修改等操作。
前者是基础。
6.关系查询语言分两类:
关系代数语言(查询操作以集合操作为基础)和关系演算语言(查询操作以谓词演算为基础)
S
2=1
答案:
R∞S
10.自然连接:
公共属性只出现一次的等值(公共属性值全部相等)连接。
记为:
一般自然连接使用在R和S有公共属性的情况中。
如果两个关系没有公共属性,那么其自然连接就转化为笛卡儿积操作。
12.关系代数表达式:
由五个基本操作经过有限次复合的式子称为代数表达式。
这种表达式的运算结果仍是一个关系。
可以用关系代数表达式表示各种数据查询操作。
教学数据库中的四个关系如下:
教师关系T(T#,TNAME,TITLE)
课程关系C(C#,CNAME,T#)
学生关系S(S#,SNAME,AGE,SEX)
选课关系SC(S#,C#,SCORE)
使用关系代数表达式表达下列每个查询语句。
1)检索学习课程号为C2课程的学生学号与成绩。
πS#,SCORE(σC#=‘C2‘(SC))或π1,3(σ2=‘C2‘(SC))
2)检索学习课程号为C2课程的学生学号和姓名。
πS#,SNAME(σC#=‘C2‘(S∞SC))
3)检索至少选修LIU老师所授课程中一门课程的学生学号与姓名。
πS#,SNAME(σTNAME=‘LIU‘(S∞SC∞C∞T))
4)检索选修课程号为C2或C4课程的学生学号。
πS#(σC#=‘C2‘∨C#=‘C4‘(SC))
5)检索至少选修课程号为C2和C4课程的学生学号。
π1(σ1=4∧2=‘C2‘∧5=‘C4‘(SC×
SC))
6)检索不学C2课程的学生姓名与年龄。
πSNAME,AGE(S)-πSNAME,AGE(σC#=‘C2‘(S×
7)检索学习全部课程的学生姓名。
πSNAME(S∞(πS#,C#(SC)÷
πC#(C)))
8)检索所学课程包含学号为S3学生所学课程的学生学号。
πS#,C#(SC)÷
πC#(σS#=‘S3‘(SC))
总结:
查询语句的关系代数表达式的一般形式是:
π…(σ…(R×
S))或π…(σ…(R∞S))
即首先把查询涉及到的关系取来,执行笛卡儿积或自然连接操作得到一张大的表格,然后对大表格执行水平分割(选择操作)和垂直分割(投影操作)。
但这种形式不适用于否定或全部值的查询。
这时要用差或除法操作。
13.外连接:
如果R和S做自然连接时,把原该舍弃的元组也保留在新关系中,同时在这些元组新增加的属性上填上空值(Null),这种操作称为“外连接”操作。
14.左外连接:
如果R和S做自然连接时,只把R中原该舍弃的元组放到新关系中,那么这种操作称为“左外连接”操作。
15.右外连接:
如果R和S做自然连接时,只把S中原该舍弃的元组放到新关系中,那么这种操作称为“右外连接”操作。
16.外部并:
两个关系R和S做并操作时,如果它们的关系模式不同,构成的新关系的属性由R和S的所有属性组成(公共属性只取一次),新关系的元组由属于R或属于S的元组构成,同时元组在新增加的属性上填上空值,那么这种操作称为“外部并”操作。
三、关系演算
关系演算又可分为元组关系演算和域关系演算,前者以元组为变量,后者以属性(域)为变量。
四、关系代数表达式的优化
1.目的:
提高系统效率。
2.三条启发式规则:
1)尽可能早地执行选择操作;
2)尽可能早地执行投影操作;
3)避免直接做笛卡儿积,把笛卡儿积操作之前和之后的一连串选择和投影合并起来一起做。
第五章SQL语言
一、SQL简介
1.SQL:
结构化查询语言,关系数据库的标准语言。
2.SQL数据库的体系结构
SQL数据库的体系结构基本上也是三级结构,但术语与传统的关系模型术语不同。
在SQL中,关系模式称为“基本表”,存储模式称为“存储文件
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 自学考试 04735 数据库 系统 原理 复习题 资料