武汉大学数据库系统概论 第十六讲 范式及无损分解.pdf

武汉大学数据库系统概论 第十六讲 范式及无损分解.pdf

ID:51506982

大小:956.43 KB

页数:37页

时间:2020-03-25

武汉大学数据库系统概论 第十六讲 范式及无损分解.pdf_第1页
武汉大学数据库系统概论 第十六讲 范式及无损分解.pdf_第2页
武汉大学数据库系统概论 第十六讲 范式及无损分解.pdf_第3页
武汉大学数据库系统概论 第十六讲 范式及无损分解.pdf_第4页
武汉大学数据库系统概论 第十六讲 范式及无损分解.pdf_第5页
资源描述:

《武汉大学数据库系统概论 第十六讲 范式及无损分解.pdf》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第十六讲范式及无损分解1本讲主要目标学完本讲后,你应该能够了解:1.第二范式、第三范式、BC范式的定义,以及范式之间的包含关系;2.对于一个关系模式,判断其最高属于第几范式,并使用基本的模式分解方法,将1NF分解为2NF,将2NF分解为3NF;3.分解的无损连接性和保持函数依赖性的概念;4.使用规范化方法设计数据库的逻辑结构时,并不是要使得到的数据库模式都达到最高范式,而是还需要平衡查询效率和更新代价。2一.范式:2NF、3NF和BCNF二.多值依赖三.范式:4NF四.无损分解五.规范化回顾六.其它设计考虑3范式:2NF、3NF和BCNF4范式:2NF、3NF和B

2、CNF1.范式(NormalForms)范式的定义:关系数据库中符合某一级别的关系模式的集合。所谓“第几范式”,是表示关系的某一种级别,R为第几范式就可以写成R∈xNF各范式之间的联系有5NF4NFBCNF3NF2NF1NF并不总是需要达到最高范式5范式:2NF、3NF和BCNF2.实例例,有一个关系模式S-L-C(S#,SD,SL,C#,G),其中S#为学生的学号,SD为学生所在系,SL为学生的住处,并且每个系的学生住在同一个地方,C#为课程号,G为成绩。这里键为(S#,C#)。函数依赖有:FS#→SD,(S#,C#)→G图示S#→SL,PS#S

3、D(S#,C#)→SDGSD→SL,PC#SL(S#,C#)→SL6范式:2NF、3NF和BCNF3.第一范式(INF)第一范式(FirstNormalForm,简写为1NF)——如果一张表不含有多值属性(有时称为重复字段)和内部结构(比如记录类型)的列,则称该表为第一范式关系模式S-L-C(S#,SD,SL,C#,G)∈1NF关系模式S-L-C存在更新异常、插入异常和删除异常7范式:2NF、3NF和BCNF4.第二范式(2NF)第二范式(SecondNormalForm,简称2NF)——若R∈INF,且每一个非主属性完全函数依赖于键,则R∈2NF。S#SDS

4、-L-C:GC#SL分析:存在非主属性对键的部分函数依赖结果:S-L-C∈1NF,但S-L-C∉2NF分解:将S-L-C分解为:S-L(S#,SD,SL),和S-C(S#,C#,G)8范式:2NF、3NF和BCNF4.第二范式(2NF)S-CS-LS#S#SDGC#SL分析:S-C的键为(S#,C#),S-L的键为S#,不存在非主属性对键的部分函数依赖。结果:S-C∈2NF;S-L∈2NFS-C和S-L中消除了1NF问题:中的某些更新异常,但仍然存在更新异常9范式:2NF、3NF和BCNF4.第二范式(2NF)在S-L(S#,SD,SL)和S-C(S#

5、,C#,G)中☆一个学生修很多课程√☆一个系有很多学生,且×同系学生住在一个地方☆一个学生转系√☆一个学生转系×☆插入一个尚未选课的学√生信息☆一个新系创建但新生尚×未注册☆一个学生只选修了一门√×课,但现在决定不选了☆一个系所有学生毕业了结论:2NF可以消除一些1NF中存在的更新异常,但不能彻底消除更新异常10范式:2NF、3NF和BCNF5.第三范式(3NF)第三范式(ThirdNormalForm,简称3NF)——若R∈2NF,且每一个非主属性不传递函数依赖于键,则R∈3NF。S-CS-LS#S#SDGC#SL分析:S-C的键为(S#,C#),不存在非主属

6、性对键的传递函数依赖。S-L的键为S#,存在非主属性对键的传递函数依赖S#→SL。结果:S-C3NF;S-L3NF分解:将S-L分解为:S-D(S#,SD)和D-L(SD,SL)11范式:2NF、3NF和BCNF5.第三范式(3NF)S-DD-LS#SDSDSL分析:S-D的键为S#,D-L的键为SD,不存在非主属性对键的传递函数依赖。结果:S-D∈3NF;D-L∈3NF问题:S-D和D-L中消3NF存在更除了前面的更新异常吗?新异常了吗?12范式:2NF、3NF和BCNF5.第三范式(3NF)在S-D(S#,SD)和D-L(SD,SL)中:☆一个系

7、有很多学生,且√同系学生住在一个地方3NF不能√彻底消☆一个学生转系除更新☆一个新系创建但新生尚√异常未注册☆一个系所有学生毕业了√结论:3NF可以消除一些2NF中存在的更新异常,13范式:2NF、3NF和BCNF6.Boyce-Codd范式(BCNF)Boyce-Codd范式(Boyce-CoddNormalForm,简称BCNF)———R∈INF,且每一个决定因素都包含键,则R∈BCNF。在S-D(S#,SD)和D-L(SD,SL)中:S-D∈BCNF,D-L∈BCNF所有的3NF都是BCNF?14范式:2NF、3NF和BCNF6.Boyce-Codd范式(B

8、CNF)例

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。