数据库第二章关系数据库.ppt
文本预览下载声明
第二章 关系数据库;本章内容;2.1.1 关系;关系:D1×D2×…×Dn 的子集叫做在域 D1,D2,…,Dn上的关系(Relation) ,表示为:
R(D1, D2 …, Dn)
R是关系名,n为关系的目。
关系是笛卡尔积的有限子集,所以关系也是一个二维表。
若关系中的某一个或多个属性的集合能唯一地标识一个元组,则称该属性或属性组为超码。
如果构成超码属性组的任意真子集都不能成为超码,这样的最小超码称为候选码。
若一个关系有多个候选码,则选定其中一个为主码。候选码的诸属性称为主属性。
不包含在任何候选码中的属性称为非主属性或非码属性。;D1=导师集合 ={ 张清玫,刘逸 }
D2=专业集合={计算机专业,信息专业}
D3=研究生集合={李勇,刘晨,王敏}
则D1,D2,D3的笛卡尔积为:
D1×D2×D3 =
{(张清玫,计算机专业,李勇),(张清玫,计算机专业,刘晨),
(张清玫,计算机专业,王敏),(张清玫,信息专业,李勇),
(张清玫,信息专业,刘晨),(张清玫,信息专业,王敏),
(刘逸,计算机专业,李勇),(刘逸,计算机专业,刘晨),
(刘逸,计算机专业,王敏),(刘逸,信息专业,李勇),
(刘逸,信息专业,刘晨),(刘逸,信息专业,王敏) }; 导师;在表2.1 的笛卡尔积中取出一个子集来构造关系
由于一个研究生只能师从于一个导师,学习某一个专业,所以笛卡尔积中的许多元组没有实际意义,从中取出有实际意义的元组来构造关系。
SAP(导师,专业,研究生)
假设:导师与专业:1:1,导师与研究生:1:n,于是SAP关系包含符合实际情况的三个元组
{ (张清玫,信息专业,李勇),
(张清玫,信息专业,刘晨),
(刘 逸,信息专业,王敏) };假设研究生不会重名,则研究生属性的每一个值都唯一地标识了一个元组,因此可以作为SAP关系的主码。;关系可以有三种类型:
基本关系(基本表或基表)
实际存在的表,是实际存储数据的逻辑表示
查询表
查询结果对应的表
视图表
由基本表或其他视图表导出的表,是虚表,不对
应实际存储的数据;基本关系具有的性质
① 列是同质的,每一列中的分量是同一类型的数据,来自同一个域。
② 不同的列可出自同一个域,其中的每一列称为一个属性,不同的属性要给予不同的属性名。
③ 列的顺序无所谓,列的次序可以任意交换。
④ 任意两个元组的候选码不能相同。
⑤ 行的顺序无所谓,行的次序可以任意交换。
⑥ 分量必须取原子值,每一个分量都必须是不可分的数据项。;关系与二维表的对应;2.1.2 关系模式;定义:关系的描述称为关系模式。它可以形式化地表示为:
R(U,D,dom,F)
其中R为关系名,U为组成该关系的属性名集合,D为属性组U中属性所来自的域,dom为属性向域的映象集合,F为属性间数据的依赖关系集合。
关系模式简记为
R(U)或R(A1,A2,…,An)
其中R为关系名, A1,A2,…,An为属性名。而域名及属性向域的映象常常直接说明为属性的类型、长度。; 关系模式与关系
关系模式是型,关系是值。
关系是关系模式在某一时刻的状态或内容。
关系模式是静态的、稳定的。
关系是动态的、随时间变化的。;2.2 关系操作;2.2.1 基本的关系操作;2.2.2 关系数据语言的种类;2.3 关系的完整性;2.3.1 实体完整性; 不是西北农林科技大学的学生,能选课吗?
学校没有开设的课程,学生能选吗?;学生;要求1:选课的学生是在校的学生
要求2:学生选的课程是学校开设的课程;;外码:设F是基本关系R的一个或一组属性,但不是关系R的主码。如果F与基本关系S的主码Ks相对应,则称F是基本关系R的外码。;;参照完整性规则:若属性F是基本关系R的外码,它与基本关系S的主码Ks相对应,则对于R中每个元组在F上的值必须为:
或者取空值
或者等于S中某个元组的主码值;;2.3.3 用户定义的完整性;2.4 关系代数;2.4 关系代数;2.4 关系代数;2.4.1 传统的集合运算;1. 并、差、交;A;A;A;2.广义笛卡尔积;A;2.4.2 专门的关系运算; 选择操作是在关系R中选择满足给定条件的诸元组,其表示形式为:
?F(R)={t|t∈R ∧F(t)=‘真’}
F:选择条件,是一个关系表达式,基本形式为:
X1θY1
其中:
θ:运算符(>,≥,<,≤,=或)
X1,Y1等:属性名、常量、简单函数;属性名也可以用它的序号来代替
在基本的选择条件上可以进一
显示全部