第二章-关系数据库
1.关系(数据)模型的组成
概念数据模型(Conceptual Data Model),简称概念模型,是面向数据库用户的现实世界的模型,主要用来描述世界的概念化结构,它使数据库的设计人员在设计的初始阶段,摆脱计算机系统及DBMS的具体技术问题,集中精力分析数据以及数据之间的联系等,与具体的数据库管理系统(Database Management System,简称DBMS)无关。
①数据结构 ②数据操作 ③数据完整性约束
2.关系数据模型的优点
①结构简单;
②适合于集合操作;
③有标准语言;
(1)关系模型与非关系模型不同,它有严格的数学理论根据。
(2)数据结构简单、清晰,用户易懂易用,不仅用关系描述实体,而且用关系描述实体间的联系,此外,对数据的操作结果也是关系。
(3)关系模型的存取路径对用户透明,从而具有更高的数据独立性、更好的安全保密性,也简化了程序员的工作和数据库建立和开发的工作。
关系模型的缺点是查询效率不如非关系模型。因此,为了提高性能,必须对用户的查询进行优化,增加了开发数据库管理系统的负担。
在你数据量大的时候,而且涉及多表查询时,速度确实很慢。
3.关系代数的运算
关系代数的运算分为两类:一是传统的集合运算;二是专门的关系运算。其中集合运算符包括并(∪)、差(-)、交(∩)和笛卡儿积(×);专门的关系运算符包括投影(π)、选择(σ)和连接(⋈)和除(÷)。其中==并、差、笛卡儿积、投影和选择==5种运算为基本的运算,其他3种运算均可以用5种基本运算来表达。
graph TD
关系代数的运算-->集合运算
关系代数的运算-->关系运算
集合运算-->并
集合运算-->差
集合运算-->交
集合运算-->笛卡儿积
关系运算-->投影
关系运算-->选择
关系运算-->连接
关系运算-->除
- 关系运算中花费时间可能最长的运算是笛卡尔积=;
- 关系模式的任何属性不可再分;
4.笛卡儿积、自然连接、等值连接的区别
笛卡尔积的符号是x 自然连接的符号是⋈
5.设关系 R 和关系 S 的属性元数个数分别是 3 和 4,关系 T 是 R 与 S的笛卡尔积, 即:T=R×S,则关系 T 的属性元数个数是
7
广义笛卡尔积的定义如下:设关系R、S的元数分别为r、s,定义R和S的笛卡尔积是一个(r+s)元数的集合,每一个元组的前r个分量来自R,后s个分量来自S。由上面的定义我们可知对于元数分别为3和4的关系R、S的广义笛卡尔积形成的关系T,其元数为3+4=7。
6.设有关系R和S,在下列的关系运算中,哪一种运算不要求:“R和S具有相同的元组,且它们对应属性的数据类型也相同”
D
- A.R1+R2
- B.R1-R2
- C.R1∩R2
- D.R1×R2
由关系代数运算的定义可以得知,笛卡尔积不需要两个关系具有相同的元数和相同的数据类型。特别需要注意的是:在进行两个关系的并操作时,要求 R和S具有相同的关系模式。
7.元组的定义
元组是关系数据库中的基本概念,是事物特征的组合,可以描述一个具体的事物。 关系是一张表,表中的每行(即数据库中的每条记录)就是一个元组,元组的集合称为关系,每列就是一个属性。 在二维表里,元组也称为行,属性为列。
8.元数的定义
元数 即关系模型中属性的个数,也可以说表中列的个数。
例如:在关系模型——学生(学号,姓名,年龄,性别,班级)中,元数为5。
9.关系系统
对这些运算不要求用户定义任何物理存取路径
对关系系统的最低要求:不支持关系数据结构的系统显然不能称为关系系统
仅支持关系数据结构,但没有选择、投影和连接运算功能的系统仍不能算作关系系统。
graph LR
关系系统-->表式系统
表式系统-->支持关系数据结构,即表
关系系统-->最小关系系统
最小关系系统-->支持关系数据结构,选择投影连接关系操作
关系系统-->关系完备的系统
关系完备的系统-->支持关系数据结构,所有的关系代数操作
关系系统-->全关系系统
全关系系统-->支持关系模型的所有特征,特别是数据结构中域的概念
10.填空
- 同一个关系模型的任两个元组值不能全同
- 一个关系中的各元组前后顺序可以任意颠倒,不影响关系
- 组成关系模型二维表的最小数据单位是字段
- 根据关系模式的完整性规则,一个关系中的“主码”不能为空,且只能有一个,候选码可以有多个,但一个主码可以有多个列组成,叫主属性
- 在关系R(R#,RN,S#)和S(S#,SN,SD)中,R的主码是R#,S的主码是S#,则S#在R中称为外码
- 关系模型中,一个关键字可由一个或多个其值能唯一标识该关系模式中任何元组的属性组成
- 一个关系数据库文件中的各条记录前后顺序可以任意颠倒,不影响库中的数据关系;
- 关系数据库中可命名的最小数据单位是属性名
11.叙述等值连接与自然连接的区别和联系
- 自然连接一定是等值连接,但等值连接不一定是自然连接;
- 等值连接要求相等的分量,不一定是公共属性;而自然连接要求相等的分量必须是公共属性;
- 等值连接不把重复的属性除去;而自然连接要把重复的属性除去;
12.将关系代数中的五种基本运算用元组关系演算表达式表示
1)并: R∪S={t|R(t)∨S(t)}
2)差: R-S={t|R(t)∨┐S(t)}
3)选择: σF(R)={t|R(t) ∧F’} (其中,F’是与F等价的公式)
4)投影: ∏i1,i2,…,ik(R)={t|(u)(R(u)∧t[1]=u[i1]∧t[2]=u[i2]…∧t[k]=u[ik])}
5)笛卡尔积: R×S={t|(u)(v)(R(u)∧S(v)∧t[1]=u[1]∧…∧t[k1]=u[k1]∧t[k1+1]=v[1]∧…∧t[k1+k2]=v[k2])} (设R为k1元关系,S为k2元关系)。