第4章关系的规范理论 学习要点 1、候选键、替代键和外来键 2、完全函数依赖、部分函数依赖、传递函数 依赖 3、1NF、2NF和3NF 4、关系模式的分解
第4章 关系的规范理论 学习要点 1、候选键、替代键和外来键 2、完全函数依赖、部分函数依赖、传递函数 依赖 3、1NF、2NF和3NF 4、关系模式的分解
第4章关系的规范理论 41关系中的键 42函数依赖 43规范化和范式 44关系模式的分解
第4章 关系的规范理论 4.1 关系中的键 4.2 函数依赖 4.3 规范化和范式 4.4 关系模式的分解
第4章关系的规范理论 41关系中的键 在讨论关系的性质时,曾指出在任何关系 中,不能有两个元组完全相同。确定了主键的 值,就能惟一地确定一个元组。例如图4-1中 所示的三个关系: P(产品号,产品名,产品型号) GP(零件号,零件名,零件重量,单价) PGP(产品号,零件号,数量)
第4章 关系的规范理论 4.1 关系中的键 在讨论关系的性质时,曾指出在任何关系 中,不能有两个元组完全相同。确定了主键的 值,就能惟一地确定一个元组。例如图4-1中 所示的三个关系: P(产品号,产品名,产品型号) GP(零件号,零件名,零件重量,单价) PGP(产品号,零件号,数量)
4.1关系中的键 关系P的主键是产品号,关系GP的主键是零件号, 它们均只含一个属性。关系PGP的主键含有两个属性 (产品号和零件号)。因为仅用产品号或零件号都不 能确定数量,即不能惟一地识别一个元组。由此可知, 主键可为单个属性,也可为属性组。在特殊情况下, 主键可以由整个元组组成。例如在关系R(演奏者,作 品,听众)中,假设一个演奏者可以演奏多个作品;某 作品可以被多个演奏者演奏;听众也可以欣赏不同 演奏者的不同作品,则该关系的主键就是由整个元组 组成的,称为全键(A-key)
4.1 关系中的键 关系P的主键是产品号,关系GP的主键是零件号, 它们均只含一个属性。关系PGP的主键含有两个属性 (产品号和零件号)。因为仅用产品号或零件号都不 能确定数量,即不能惟一地识别一个元组。由此可知, 主键可为单个属性,也可为属性组。在特殊情况下, 主键可以由整个元组组成。例如在关系R(演奏者,作 品,听众)中,假设一个演奏者可以演奏多个作品;某 一作品可以被多个演奏者演奏;听众也可以欣赏不同 演奏者的不同作品,则该关系的主键就是由整个元组 组成的,称为全键(All-key)
4.1.1候选键( Candidate Key) 凡在一个关系中具有主键特性的属性或属 性组,均称为候选键。因为它们都具有被选为 主键的条件,所以一个关系可能有多个候选键, 但只能选其中的一个为主键。 候选键中包含的属性称为主属性 ( Primary Attribute),其余的属性称为非 主属性( Nonprimary Attribute)
4.1.1 候选键(Candidate Key) 凡在一个关系中具有主键特性的属性或属 性组,均称为候选键。因为它们都具有被选为 主键的条件,所以一个关系可能有多个候选键, 但只能选其中的一个为主键。 候选键中包含的属性称为主属性 (Primary Attribute),其余的属性称为非 主属性(Nonprimary Attribute)
4.1.1候选键 【例4-1】在职工关系zG(姓名,性别,年龄) 中,增加一个属性“职工号”,即得到一个新 关系: zG(职工号,姓名,性别,年龄) 又假定职工号与职工姓名是一一对应的, 即没有两个职工的姓名相同,则“职工号”和 “姓名”两个属性都是候选键
4.1.1 候选键 【例4-1】在职工关系ZG(姓名,性别,年龄) 中,增加一个属性“职工号” ,即得到一个新 关系: ZG(职工号,姓名,性别,年龄) 又假定职工号与职工姓名是一一对应的, 即没有两个职工的姓名相同,则“职工号”和 “姓名”两个属性都是候选键
4.12替代键( Alternate Key 对于某一指定的关系可能存在多个候选键, 但只能选其中的一个为主键。在确定主键后, 其余的候选键都是替代键,替代键在需要时可 代替主键。在用DDL对关系进行描述时应指明 哪个是主键,哪些是替代键。如果仅有一个候 选键,就只指明主键
4.1.2 替代键(Alternate Key) 对于某一指定的关系可能存在多个候选键, 但只能选其中的一个为主键。在确定主键后, 其余的候选键都是替代键,替代键在需要时可 代替主键。在用DDL对关系进行描述时应指明 哪个是主键,哪些是替代键。如果仅有一个候 选键,就只指明主键
4.12替代键 例42】用DDL定义职工关系。 RELATIoN ZG(职工号,姓名,性别,年龄) PRIMARY KEY(职工号) ALTERNATE KEY(姓名
4.1.2 替代键 【例4-2】用DDL定义职工关系。 RELATION ZG(职工号,姓名,性别,年龄) PRIMARY KEY (职工号) ALTERNATE KEY (姓名)
4.13外来键( Foreign Key) 当关系中的某(些)属性是由另一个关系的主键 构成时,则该属性(或属性组)称为外来键。 【例4-3】PGP(产品号,零件号,数量)中的“产 品号”和“零件号”分别来自关系P和GP,它们都是 相应关系的主键。故在PGP关系中,“产品号”和 “零件号”为外来键。外来键不直接在关系描述中说 明,但从整个模式描述中可以间接看出。图4-1中的 三个关系可描述如下:
4.1.3 外来键(Foreign Key) 当关系中的某(些)属性是由另一个关系的主键 构成时,则该属性(或属性组)称为外来键。 【例4-3】PGP(产品号,零件号,数量)中的“产 品号”和“零件号”分别来自关系P和GP,它们都是 相应关系的主键。故在PGP关系中, “产品号”和 “零件号”为外来键。外来键不直接在关系描述中说 明,但从整个模式描述中可以间接看出。图4-1中的 三个关系可描述如下:
士 4.1.3外来键 RELATION P(产品号,产品名,产品型号) PRIMARY KEY(产品号) RELATION GP(零件号,零件名,零件重量, 单价) PRIMARY KEY(零件号) RELATION PGP(产品号,零件号,数量) PRIMARY KEY(产品号,零件号
4.1.3 外来键 RELATION P(产品号,产品名,产品型号) PRIMARY KEY(产品号) RELATION GP(零件号,零件名,零件重量, 单价) PRIMARY KEY(零件号) RELATION PGP(产品号,零件号,数量) PRIMARY KEY(产品号,零件号)