【计算机】04 关系的规范理论.pptVIP

  • 51
  • 0
  • 约1.21万字
  • 约 46页
  • 2018-02-26 发布于江苏
  • 举报
【计算机】04 关系的规范理论

第4章 关系的规范理论 学习要点 1、候选键、替代键和外来键 2、完全函数依赖、部分函数依赖、传递函数依赖 3、1NF、2NF和3NF 4、关系模式的分解 第4章 关系的规范理论 4.1 关系中的键 4.2 函数依赖 4.3 规范化和范式 4.4 关系模式的分解 第4章 关系的规范理论 4.1 关系中的键 在讨论关系的性质时,曾指出在任何关系中,不能有两个元组完全相同。确定了主键的值,就能惟一地确定一个元组。例如图4-1中所示的三个关系: P(产品号,产品名,产品型号) GP(零件号,零件名,零件重量,单价) PGP(产品号,零件号,数量) 4.1 关系中的键 关系P的主键是产品号,关系GP的主键是零件号,它们均只含一个属性。关系PGP的主键含有两个属性(产品号和零件号)。因为仅用产品号或零件号都不能确定数量,即不能惟一地识别一个元组。由此可知,主键可为单个属性,也可为属性组。在特殊情况下,主键可以由整个元组组成。例如在关系R(演奏者,作品,听众)中,假设一个演奏者可以演奏多个作品;某一作品可以被多个演奏者演奏;听众也可以欣赏不同演奏者的不同作品,则该关系的主键就是由整个元组组成的,称为全键(All-key)。 4.1.1 候选键(Candidate Key) 凡在一个关系中具有主键特性的属性或属性组,均称为候选键。因为它们都具有被选为主键的条件,所以一个关系可能有多个候选键,但只能选其中的一个为主键。 候选键中包含的属性称为主属性(Primary Attribute),其余的属性称为非主属性(Nonprimary Attribute)。 4.1.1 候选键 【例4-1】在职工关系ZG(姓名,性别,年龄)中,增加一个属性“职工号”,即得到一个新关系: ZG(职工号,姓名,性别,年龄) 又假定职工号与职工姓名是一一对应的,即没有两个职工的姓名相同,则“职工号”和“姓名”两个属性都是候选键。 4.1.2 替代键(Alternate Key) 对于某一指定的关系可能存在多个候选键,但只能选其中的一个为主键。在确定主键后,其余的候选键都是替代键,替代键在需要时可代替主键。在用DDL对关系进行描述时应指明哪个是主键,哪些是替代键。如果仅有一个候选键,就只指明主键。 4.1.2 替代键 【例4-2】用DDL定义职工关系。 RELATION ZG(职工号,姓名,性别,年龄) PRIMARY KEY (职工号) ALTERNATE KEY (姓名) 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 外来键 末行描述的主键显然是外来键。 在关系描述中指明关系的主键,目的是让DBMS对送入主键的值做出必要的约束。DBMS一般都规定输入主键属性组的值不允许包含“空值”,因为不能用空值来识别任何元组。例如,在关系PGP中,当输入一个元组时,不论产品号还是零件号都禁止为“空”。这一规定有时被称为“第一完整性原则”。 4.2 函数依赖 关系中的元组可以用它的主键来识别,即有了主键的值,就能确定元组中其他属性的值。例如在例4-1中,职工的“职工号”确定了,其姓名、性别和年龄也随之确定了。因而称“职工号”为决定因素,它“函数决定”姓名等属性的内容,而姓名等属性的内容则“函数依赖”于“职工号”,可记做: 职工号→(姓名,性别,年龄) 用形式化的方式表示,关系R可以记为: RU,F 4.2 函数依赖

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档