1-3范式,bcnf,关系模型完整性约束

Posted Jamin

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了1-3范式,bcnf,关系模型完整性约束相关的知识,希望对你有一定的参考价值。

1范式-所有属性都不可拆分-主要要自己的业务需求

2范式-不存在非主属性对码的部分函数依赖

3范式-不存在非主属性对码的部分函数依赖,传递函数依赖

bcnf-不存在主属性对码的部分函数依赖,传递函数依赖

码:在“码”的定义中,除 K 之外的所有属性应该看成是一个集合 U(也就是一个整体),也就是说,只有 K 能够完全函数决定 U 中的每一个属性,那么 K 才是码。如果 K 只是能够完全函数决定 U 中的一部分属性,而不能完全函数决定另外一部分属性,那么 K 不是码。

主属性:码的每一个属性;

非主属性:除主属性外的属性;

 

前提:应用范式的前提是要在意关系模型的完整性,

关系模型的完整性:1-域完整性约束

      域完整性是保证数据库字段取值的合理性。

        2-实体完整性约束

      实体完整性(Entity integrity)是指关系的主关键字不能重复也不能取“空值"。

        3-参照完整性约束

       参照完整性(Referential Iintigrity)是定义建立关系之间联系的主关键字与外部关键字引用的约束条件。参照完整性主要指主表不能任意删除或修改,从表不能任意添加。

        4-用户定义完整性

以上是关于1-3范式,bcnf,关系模型完整性约束的主要内容,如果未能解决你的问题,请参考以下文章

关系数据理论之第一范式

2.3 关系完整性

实用数据库开发实践MySQL——数据模型

具有 OneToOne 关系的两个模型之间的错误(违反完整性约束)

完整性约束

数据库 chapter 2 关系数据库