分享

数据库理论基本概念和范式定义

 零零子 2014-03-19

一、基本概念

属性:教科书上解释为:“实体所具有的某一特性”,由此可见,属性一开始是个逻辑概念,比如说,“性别”是“人”的一个属性。在关系数据库中,属性又是个物理概念,属性可以看作是“表的一列”。

元组:表中的一行就是一个元组。

分量:元组的某个属性值。在一个关系数据库中,它是一个操作原子,即关系数据库在做任何操作的时候,属性是“不可分的”。否则就不是关系数据库了。

码:表中可以唯一确定一个元组的某个属性(或者属性组),如果这样的码有不止一个,那么大家都叫候选码,我们从候选码中挑一个出来做主键,它就叫主码。

外码:一个属性(或属性组),它不是码,但是它别的表的码,它就是外码。

主属性:一个属性只要在任何一个候选码中出现过,这个属性就是主属性。

非主属性:与上面相反,没有在任何候选码中出现过,这个属性就是非主属性。

 主码(从候选码中选出的一个码)

主属性

候选码(能够唯一确定一个元组的元素)

码实际为一个具有唯一功能的元素或元素组,但是应该将其看做一个具有这样功能的set。为了和主属性,非主属性区别。

 有码即是有能够唯一确定一个元组的主键,也就有了主属性,非主属性。

二、数据库范式

数据库的2NF要求:

 符合1NF,并且,非主属性完全依赖于码但是可以传递依赖。(也就是有码,主属性概念的要求)

三范式(3NF):符合2NF,并且,消除传递依赖

BC范式(BCNF):符合3NF,并且,消除主属性的传递依赖。

若一个关系达到了第三范式,并且它只有一个候选码,或者它的每个候选码都是单属性,则该关系自然达到BC范式。

 第四范式:要求把同一表内的多对多关系删除。

第五范式:从最终结构重新建立原始结构。

但在绝大多数应用中不需要设计到这种程度。并且,某些情况下,过于范式化甚至会对数据库的逻辑可读性和使用效率起到阻碍。数据库中一定程度的冗余并不一定是坏事情。

注意:一定要在理解了基本的名词概念后采取理解理论的定义,要不会浪费很多不必要的时间和误解。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多