178.关系数据库理论基础 (8)

【例2.4】 对于关系模式—分班(学号, 班级号, 班长),容易知道学号→ 班级号,班级号→ 班长,又因为班级号

178.关系数据库理论基础

学号,于是学号 

178.关系数据库理论基础

班长。

 

•         2.4.2 候选码和主码

    定义2.7   在关系模式R(U)中,假设A ⊆ U,如果A 

178.关系数据库理论基础

U,则A称为关系模式R(U)的一个候选码;候选码可能有多个,从候选码中选择一个用于唯一标识关系中的每一个元组,则该候选码称为主码(Primary key)。

Ø 含在任何候选码中的属性称为主属性(Prime attribute),不包含在任何码中的属性称为非主属性(Nonprime attribute)。通常将主码和候选码都简称为码。最简单的情况,单个属性构成码;最极端的情况,一个关系模式的所有属性构成码,称为全码(All key)。

Ø 对于候选码和主码,需要说明几点:

•          为正确理解候选码A,应该紧紧抓住其以下两个特性:

                  A可以函数决定U,即A→U。 

                  A具有极小性,即A的任何真子集都不可能函数决定U。

•          候选码可能有多个。如果有多个候选码,则它们的地位是平等的,任何一个都可以被设置为主码。在应用当中,一般是根据实际需要来将某一个候选码设置为主码。

 

 

 

     定理2.1    在关系模式R(U)中,对任意A, B ⊆U且A ∪ B = U,如果A     B,则有A 

178.关系数据库理论基础

U,从而A是关系模式R(U)的一个候选码。

  【例2.5】 考虑如表2.16所示的学生成绩关系模式,其中U = {学号, 姓名,系别,成绩}。对于属性“学号”,容易验证:学号 

178.关系数据库理论基础

 {姓名,系别,成绩},而{学号}∪{姓名,系别,成绩} = U。根据定理2.1,“学号”是学生成绩关系模式的一个候选码。

 

 

•          2.4.3 函数依赖的性质(Armstrong公理系统)

Ø 1974年Armstrong首次提出了这样的一套推理规则,由此构成的系统就是著名的Armstrong公理系统。

Ø 在关系模式R(U)中,假设A, B, C, D为U的任意子集。在Armstrong公理系统中,基于函数依赖集F的推理规则可以归结为以下3条:

ü 自反律:若C ⊆ B,则B→C为F所蕴含(平凡函数依赖)。

ü 增广律:若B → C为F所蕴含,则B∪D→C∪D为F所蕴含。

ü 传递律:若B→C且C→D为F所蕴含,则B→D为F所蕴含。

 

 

Ø 基于上述的推理规则,进一步得到下列的推理规则:

ü 自合规则:B→B。

ü 合并规则:若B→C且B→D,则B→C∪D。

ü 分解规则:若B→C∪D,则B→C且B→D。

ü 符合规则:若A→B且C→D,则A∪C→B∪D。

ü 伪传递规则:由B→C,A∪C→D,有A∪B→D。

 

 定理2.2   在关系模式R(U)中,B及B1, B2,…, Bn是U的子集,则B→B1∪B2∪…∪Bn成立的充分必要条件是B→Bi成立,其中i = 1,2,…,n。

 

 

 

2.5 关系模式的范式

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zzfxwz.html