数据库原理与应用(MySQL版) 课件 第3章 关系数据库.pptx
第3章关系数据库数据库原理与应用1
本章内容3.1关系数据模型3.2关系模型的基本术语与形式化定义3.3完整性约束3.4关系代数2
3.1关系数据模型3.1.1关系数据结构3.1.2关系操作3.1.3数据完整性约束3
3.1.1数据结构关系数据模型源于数学。用二维表来组织数据,这个二维表在关系数据库中就称为关系。关系数据库就是表或者说是关系的集合。关系系统要求让用户所感觉的数据库就是一张张表。在关系系统中,表是逻辑结构而不是物理结构。4
3.1.2关系操作传统的关系运算:并(Union)交(Intersection)差(Difference)广义笛卡尔乘积(ExtendedCartesianProduct)专门的关系运算:选择(Select)投影(Project)连接(Join)除(Divide)5
关系操作(续)查询(Query)插入(Insert)删除(Delete)修改(Update)关系模型的操作对象是集合,而不是行。集合处理能力是关系系统区别于其他系统的一个重要特征。6
关系操作与非关系操作的比较非关系模型各个数据记录之间是通过指针等方式连接的,当要定位到某条记录时,需要用户自己按指针的链接方向逐层查找。关系数据模型是按集合进行操作,用户只需指定数据的定位条件,数据库管理系统就可以自动定位到该数据记录。7
查找计算机学院软件工程教研室张海涛8
查找计算机系学号为202101003的学生学号姓名性别所在学院202101001李勇男计算机202101002刘晨男计算机202101003王敏女计算机202101004张小红女计算机202102001张海男经济管理202102002刘琳女经济管理9
3.1.3数据完整性约束数据完整性是指保证数据正确性的特征。包括两个方面:与现实世界中应用需求的数据的相容性和正确性;数据库内数据之间的相容性和正确性。如:学生的学号必须是惟一的。性别只能是‘男’和‘女。10
本章内容3.1关系数据模型3.2关系模型的基本术语与形式化定义3.3完整性约束3.4关系代数11
1.基本术语关系:关系就是二维表。并满足如下性质:关系表中的每一列都是不可再分的基本属性;表中的行、列次序并不重要。属性:表中的每一列是一个属性值集,列可以命名,称为属性名。值域:属性的取值范围。如,性别只能是‘男’和‘女’两个值。12
基本术语(续)元组:表中的每一行称作是一个元组。分量:元组中的每一个属性值称为元组的一个分量。关系模式:是关系的“型”或元组的结构共性的描述。设关系名为R,属性分别为A1,A2,…,An,则关系模式可以表示为:R(A1,A2,…,An)13
基本术语(续)关系数据库:对应于一个关系模型的所有关系的集合。候选键:能够惟一标识关系中的一个元组的一个属性或最小属性组。主键:当一个关系中有多个候选键时,可以从中选择一个作为主码。每个关系只能有一个主键。主属性:包含在任一候选键中的属性。非主属性:不包含在任一候选键中的属性。14
2.形式化定义关系的形式化定义——笛卡尔积设D1,D2,…,Dn为任意集合,定义笛卡尔积D1,D2,…,Dn为:D1×D2×…×Dn={(d1,d2,…,dn)|di∈Di,i=1,2,…,n}其中每一个元素(d1,d2,…,dn)称为一个n元组,简称元组。元组中每一个di称为是一个分量。15
笛卡儿乘积示例D1={计算机,经济管理}D2={李勇,王敏,张海}D3={男,女}则D1×D2×D3笛卡尔积为:D1×D2×D3={(计算机,李勇,男),(计算机,李勇,女),(计算机,王敏,男),(计算机,王敏,女),(计算机,张海,男),(计算机,张海,女),(经济管理,李勇,男),(经济管理,李勇,女),(经济管理,王敏,男),(经济管理,王敏,女),(经济管理,张海,男),(经济管理,张海,女)}16
笛卡尔积实际上就是一个二维表17
关系的形式化定义笛卡尔积D1,D2,…,Dn的任意一个子集称为D1,D2,…,Dn上的一个n元关系。把关系看成二维表,给表中的每个列取一个名字,称为属性。一个关系中的属性的名字必须是唯一的。属性Di(i=1,2,…,n)的取值范围称为该属性的值域。18
对关系的限定关系中的每个分量必须是不可再分的最小属性。表中列的数据类型是固定的。不同列的数据可以取自相同的值域。关系表中行、列的顺序不重要。同一个关系中的元组不能重复。19
本章内容3.1关系数据模型3.2关系模型的基本术语与形式化定义3.3完整性约束3.4关系代数20
3.3完整性约束3.3.1实体完整性3.3.2参照完整性3.3.3用户定义的完整性21
3.3.1