722-第六章 关系数据理论2.ppt

  1. 1、本文档共39页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
复习上节课内容 关系模型概念回顾 关系、关系模型、关系数据库、定义 关系模式中可能存在的异常(示例) 数据冗余、插入异常、删除异常、更新复杂 关系模式中存在异常的原因 数据依赖(定义、分类)、函数依赖 关系模式的规范化 函数依赖(平凡、非平凡、完全、部分、传递函数依赖) 例:模式R(Sno,Sname,Sdept,Mname,Cno, Cname, Grade ),根据其语义,有如下函数依赖关系: 语义1:每个学生只会有一个学号; Sno→Sname 语义2:系与学生是一对多的关系;Sno→Sdept 语义3:系与系主任是一对一的关系; Sdept←→Mname 语义4:每门课程只有一个课程号; Cno→Cname 语义5:每个学生学习每门课程有一个成绩;(Sno,Cno)F→Grade 可推出: Sno 传递→ Mname 省略部分函数依赖:如(Sno,Cno)P→Sname等 本次课内容 关系模式相关定义 关系模式规范化 1NF 2NF 3NF BCNF 一、关系模式相关定义 定义6.4:设K为R(U,F)中的属性或属性组合。若K F→ U, 则K称为R的侯选码(Candidate Key);若候选码多于一个,则选定其中的一个做为主码(Primary Key); 主属性与非主属性 包含在任何一个候选码中的属性 ,称为主属性(Prime attribute) 不包含在任何码中的属性称为非主属性(Nonprime attribute)或非码属性(Non-key attribute) 最简单情况:一个属性是码; 最极端情况:整个属性组是码,也称全码(ALL-KEY); 定义6.5 :关系模式 R 中属性或属性组X 并非 R的码,但 X 是另一个关系模式的码,则称 X 是R 的外部码(Foreign key)也称外码; 如在SC(Sno,Cno,Grade)中,Sno不是码,但Sno是关系模式S(Sno,Sdept,Sage)的码,则Sno是关系模式SC的外部码; 主码与外部码一起提供了表示关系间联系的手段。 二、关系模式规范化 关系模式的好与坏,用什么标准衡量?这个标准就是模式的范式(Normal Forms,简记为NF); 范式是符合某一种级别的关系模式的集合; 范式的种类与数据依赖有着直接的联系,基于FD的范式有1NF、2NF、3NF、BCNF等多种。 某一关系模式R为第n范式,可简记为R∈nNF。 各范式之间的关系 如果一个关系满足某个范式要求,则它也会满足较其级别低的所有范式的要求。 一个低一级范式的关系模式,通过模式分解(投影运算)可以转化为若干个高一级范式的关系模式的集合,这个过程叫做规范化; 用几个简单的关系去取代原来结构复杂的关系的过程叫做关系规范化。规范化理论是围绕着范式建立的。 关系规范化 目的: 使结构合理,使数据冗余尽量小,减少插入,删除和更新异常; 方法: 将关系模式投影分解成多个关系模式,但关系模式的分解不是唯一的; 要求: 分解后的关系模式集合应当与原关系模式“等价”,既具有无损连接性,又保持函数依赖特性”. 1)第一范式1NF 第一范式(1NF) 当且仅当一个关系R中,每一个分量都是不可再分的数据项时, R∈1NF ; 要求属性是原子的; 第一范式是对关系模式的最起码的要求。不满足第一范式的数据库模式不能称为关系数据库; 但是满足第一范式的关系模式并不一定是一个好的关系模式。 2)第二范式2NF 定义6.6 若R∈1NF,且每一个非主属性完全函数依赖于码,则R∈2NF ; 例1:判断关系模式S-L-C(Sno, Sdept, Sloc, Cno, Grade)是否满足2NF,其中Sloc为学生住处,假设每个系的学生住在同一个地方; 第一步:判断S-L-C是否为第一范式; 第二步:确定候选码(sno,cno); 第二步:确定所有函数依赖有: sno→sdept,sno →sloc,(sno,cno)P→sdept,(sno,cno)P→sloc ,(sno,cno)F→Grade; 得出结论:和2NF定义相违背,故S-L-C不是2NF; 例2. 判断关系模式 sc(sno,sname,cno,grade)是否满足2NF; 第一步:判断sc是否为第一范式; 第二步:确定候选码(sno,cno); 第三步:确定所有函数依赖有: sno→sname , (sno,cno) P →sname ,(sno,cno) F→grade; 得出结论:和2NF定义相违背,故sc不是2NF; 一个关系模式不是2NF,就会产生以下问题(S-L-C): (1) 插入异常:假设Sno=95102,Sdept=IS,Sloc=N的学生还未选课,因课程号是主属性,因此该学生的信息无法插入SLC。

文档评论(0)

小玉儿 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档