数据库范式5nf

Fifth normal form (5NF) is also known as project-join normal form (PJ/NF). It is designed to minimize redundancy in relational databases by separating semantically connected relationships in multiple formats to store multi-valued facts.

第五范式(5NF)也称为投影联合范式(PJ / NF) 。 它旨在通过以多种格式分隔语义连接的关系来存储多值事实,以最大程度地减少关系数据库中的冗余。

A relation R is in 5NF if and only if every non-trivial join dependency in R is implied by the candidate keys of R. A relation break up into two relations must contain lossless join Property, which makes certain that no invalid or extra tuples of attributes are created when relations are again joined together through a natural join.

关系R5NF当且仅当每一个不平凡的连接依赖于RR的候选键暗示。 分解为两个关系的关系必须包含无损连接属性,这可以确保在通过自然连接将关系再次连接在一起时,不会创建任何无效或多余的元组。

Properties:

特性:

A relation R with attributes, its values and tuples is in 5NF if and only if the following conditions are satisfied,

当且仅当满足以下条件时,带有属性,其值和元组的关系R的值为5NF

  1. The relation R should be already in 4NF.

    关系R应该已经在4NF中 。

  2. The relation R cannot be additionally non loss decomposed (join dependency).

    关系R不能另外进行非损耗分解(联接依赖)。

If the relation or table can further decompose to remove redundancy and anomaly, and when the process of rejoining followed the decomposed tables through the means of candidate keys, we should not be losing the original data or any new record set should not arise. Understandably, joining two or more decomposed table should not lose records or create new records.

如果关系或表可以进一步分解以消除冗余和异常,并且当重新连接的过程通过候选键的方式遵循分解后的表时,我们不应丢失原始数据,也不应出现任何新的记录集。 可以理解,联接两个或多个分解表不应丢失记录或创建新记录。

Join dependency

连接依赖

A table or relation can be recreated or re-designed by joining multiple tables and each table of this contain a subset of the attributes and values of the table, then the table is in Join Dependency. It is a generalization of Multivalued Dependency.

可以通过联接多个表来重新创建或重新设计一个表或关系,并且该表或关系的每个表都包含该表的属性和值的子集,然后该表处于联接依赖关系中。 它是多值依赖关系的概括。

If the join of R1 and R2 over S is equal to relation R then we can say that a join dependency exists, where R1 and R2 are the decomposition R1 (P, Q, S) and R2 (Q, T) of a given relation R (P, Q, S, T). As a possibility, R1 and R2 are a lossless decomposition of R.

如果R1R2S上的连接等于关系R,那么我们可以说存在连接依赖关系,其中R1R2是给定关系的分解R1(P,Q,S)R2(Q,T) R(P,Q,S,T) 作为一种可能性,R1R2R的无损分解。

Over a relation R a Join Dependency ⋈ {R1, R2, ..., Rn} is said to hold if R1, R2, ..., Rn is lossless-join decomposition. The *(P, Q, S, T), (S, T) will be a Join Dependency of R if the join of join's attribute is equal to the relation R. Here, *(R1, R2, R3) is used to specify that relation R1, R2, R3 and so on is a Join Dependency of R.

在关系R上 如果R1,R2,...,Rn是无损连接分解则称连接依赖项⋈{R1,R2,...,Rn}成立。 如果联接属性的联接等于关系R ,则*(P,Q,S,T),(S,T)将是R的联接依赖关系。 此处, *(R1,R2,R3)用于指定关系R1,R2,R3等是R的连接依赖关系。

Join Dependency can be associated to 5NF, wherein a relation is in 5NF, only if it is already in 4NF and it cannot be decomposed further.

Join Dependency可以与5NF相关联,其中关系只有在5NF中且不能进一步分解的情况下才在5NF中

Contrarily, in the case of functional dependencies, there is no sound and complete axiomatization for join dependencies, however, axiomatization exists for more expressive dependency languages such as full typed dependencies.

相反,在功能依赖关系的情况下,对于联接依赖关系没有完善的公理化方法,但是,对于更具表现力的依赖关系语言(例如全类型依赖关系)存在公理化方法。

On the other hand, the implication of join dependencies is decidable.

另一方面,联接依赖的含义是可以确定的。

Example:

例:

Consider a table which contains a record of Subject, Professor and Semester in three columns.

考虑一个表,该表在三列中包含SubjectProfessorSemester的记录。

The primary key is the combination of all three columns. Also take an account that the table is in 4NF, as long as there are no multivalued dependencies (2-part join dependencies) in the table: no column (which by itself is not a candidate key or a super key) is a determinant for the other two columns.

主键是所有三列的组合。 还应考虑到该表位于4NF中,只要该表中没有多值依赖项(两部分联接依赖项):没有列(其本身不是候选键或超级键)是其他两列。

If the presence of any properly structured rule is not there to organize the three attributes of the table, it is important to structure them correctly by handling constraint.

如果没有适当的结构化规则来组织表的三个属性,则通过处理约束来正确构造它们很重要。

In the table, Data structure is taught by Madhurima and Sravan in semester 3, Automata by Abhijeet and Sushmita. In this case, the combination of all these fields required to identify valid data.

在表中,Madhurima和Sravan在第3学期讲授了数据结构,Abhijeet和Sushmita讲授了Automata。 在这种情况下,标识有效数据所需的所有这些字段的组合。

So to make the table into 5NF, we can decompose it into three relations,

因此,要使表格变为5NF,我们可以将其分解为三个关系,

table.ok, table.ok tr th, table.ok tr td { border: 1px solid black; width: auto; } table.ok, table.ok tr th, table.ok tr td { border: 1px solid black; width: auto; }

Subject Professor Semester
Maths 2 Saurav 2
Data structure Madhurima 3
Automata Abhijeet 5
Data structure Sravan 3
Automata Sushmita 5
Computer network Karan 2
Digital logical design Abhijeet 5
学科 教授 学期
数学2 绍拉夫 2
数据结构 马杜里玛 3
自动机 阿比耶耶 5
数据结构 斯拉万 3
自动机 舒米塔 5
计算机网络 卡兰 2
数字逻辑设计 阿比耶耶 5
Semester Subject
2 Maths 2
3 Data structure
5 Automata
2 Computer network
5 Digital logical design
学期 学科
2 数学2
3 数据结构
5 自动机
2 计算机网络
5 数字逻辑设计
Subject Professor
Maths 2 Saurav
Data structure Madhurima
Automata Abhijeet
Data structure Sravan
Automata Sushmita
Computer network Karan
Digital logical design Abhijeet
学科 教授
数学2 绍拉夫
数据结构 马杜里玛
自动机 阿比耶耶
数据结构 斯拉万
自动机 舒米塔
计算机网络 卡兰
数字逻辑设计 阿比耶耶
Semester Professor
2 Saurav
3 Madhurima
5 Abhijeet
3 Sravan
5 Sushmita
2 Karan
5 Abhijeet
学期 教授
2 绍拉夫
3 马杜里玛
5 阿比耶耶
3 斯拉万
5 舒米塔
2 卡兰
5 阿比耶耶

翻译自: https://www.includehelp.com/dbms/fifth-normal-form-5nf-dbms.aspx

数据库范式5nf

数据库范式5nf_第五范式(5NF)| 数据库管理系统相关推荐

  1. 数据库范式5nf_第四范式(4NF)| 数据库管理系统

    数据库范式5nf Fourth normal form (4NF) is a normal form used in database normalization, in which there ar ...

  2. 数据库范式的思考以及数据库的设计

    数据库范式--通俗易懂[转] 数据库范式是数据库设计中必不可少的知识,没有对范式的理解,就无法设计出高效率.优雅的数据库.甚至设计出错误的数据库.而想要理解并掌握范式却并不是那 么容易.教科书中一般以 ...

  3. 从第一范式(2nf)到第二范式(3nf)_啥是数据库范式

    前言: 关于数据库范式,时常有听说过,一直没有详细去了解.一般数据库书籍或数据库课程会介绍范式相关内容,范式也经常出现在数据库考试题目中.不清楚你是否对范式有比较清晰的了解呢?本篇文章我们一起来学习下 ...

  4. 【转载】数据库范式那些事

    数据库范式那些事 简介 数据库范式在数据库设计中的地位一直很暧昧,教科书中对于数据库范式倒是都给出了学术性的定义,但实际应用中范式的应用却不甚乐观,这篇文章会用简单的语言和一个简单的数据库DEMO将一 ...

  5. 数据库范式1NF 2NF 3NF BCNF

    设计范式(范式,数据库设计范式,数据库的设计范式)是符合某一种级别的关系模式的集合.构造数据库必须遵循一定的规则.在关系数据库中,这种规则就是范式.关系数据库中的关系必须满足一定的要求,即满足不同的范 ...

  6. oracle 第一范式,数据库范式之第一范式

    数据库范式(Database Normalization) 设计关系数据库时,遵从不同的规范要求,设计出合理的关系型数据库,这些不同的规范要求被称为不同的范式,各种范式呈递次规范,越高的范式数据库冗余 ...

  7. 什么是数据库范式(NF)?从一范式到五范式分别是什么?

    什么是数据库范式(NF)?从一范式到五范式分别是什么? 什么是数据库范式(NF)? 为了建立冗余较小.结构合理的数据库,设计数据库时必须遵循一定的规则.在关系型数据库中这种规则就称为范式.范式是符合某 ...

  8. 数据库范式:1NF、2NF、3NF、BCNF

    首先要明白"范式(NF)"是什么意思.按照教材中的定义,范式是"符合某一种级别的关系模式的集合,表示一个关系内部各属性之间的联系的合理化程度".很晦涩吧?实际上 ...

  9. Phase2 Day19 数据库范式设计 复杂查询

    文章目录 数据库范式设计 范式级别 数据表中的键 从1NF到3NF BCNF 总结 复杂查询 1. 链接查询 1.1 交叉连接 1.2 等值连接 1.2.1 自然连接 1.2.2 USING连接 1. ...

最新文章

  1. CCNP路由实验---12、配置分发列表和被动接口
  2. 逸管家:把握不同行业生命周期,选择正确商业模式
  3. 快手2021年营收810亿元 经调整净亏损188亿元
  4. 中国聚乙烯醇缩丁醛(PVB)树脂市场趋势报告、技术动态创新及市场预测
  5. .NET深入 c#数据类型2
  6. python系统下载-pythonox下载
  7. java编程思想--协变返回类型
  8. Ubuntu系统搭建以太坊开发平台过程
  9. c语言设计评分程序,C语言程序设计课程设计---设计比赛评分系统
  10. 活水渠 - 云影院之云时代看片全攻略
  11. 流失用户召回方法策略,教你如何挽回流失用户
  12. pyltp依存句法分析_NLP(十二)依存句法分析的可视化及图分析
  13. 编程小白碰到丈母娘题目
  14. 腾讯短网址/短链接url.cn生成接口工具推荐
  15. CodeBlocks监视窗口(Watchs)进行调试(引用类型与指针)
  16. 如何获取浏览器的user-agent
  17. Flutter练习:实现自定义的分页指示器
  18. 大数据架构师在关注什么?
  19. 广东全球通下月单向收费并取消长途费
  20. ubuntu查看系统桌面的环境

热门文章

  1. javascript正则检测用户名验证密码邮箱手机号
  2. 用格里高利公式求给定精度的PI值
  3. SOAP Client in Delphi7
  4. 笔迹识别(一 笔迹特征)
  5. 土鸡和土鸡蛋价格一直很高,为何农民说养土鸡不赚钱?
  6. 2018-12 文献阅读:A Survey on Transfer Learning(2009)
  7. 学习PCB之pcb器件的绘制
  8. #gStore-weekly | Centos7系统下gStore在 docker上的安装部署
  9. 2003服务器文件自动只读,您不能查看或更改只读或文件夹在 Windows Server 2003、 Windows XP、 Windows Vista 中或在 Windows 7 中的系统属性...
  10. 新造车,程序员的糖,工程师的泪