接触软件体系架构设计(八)

写到这里居然忘了我的专业,数据库设计。

这里写写关系数据库设计的理论:

什么是范式:关系数据库中的关系要满足一定要求的,这些规范可以称为范式。不满足1NF,就不是关系数据库。

什么是三大范式:

第一范式:当关系模式R的所有属性都不能再分解为更基本的数据单位时,称R是满足第一范式的,简记为1NF。(俗话理解:列/字段的原子性,不可分割了)

第二范式:如果关系模式R满足第一范式,并且R得所有非主属性都完全依赖于R的每一个候选关键属性,称R满足第二范式,简记为2NF。(简单说:每行有一个关键字,这个关键字作为其他表的外键使用)

第三范式:设R是一个满足第一范式条件的关系模式,X是R的任意属性集,如果X非传递依赖于R的任意一个候选关键字,称R满足第三范式,简记为3NF.(在2NF上,每行中不能冗余和重复数据;如果存在重复性数据,需要按2NF进行拆分)

注:关系实质上是一张二维表,其中每一行是一个元组,每一列是一个属性

 

这三个范式是关系数据库设计的基本原则,还有其他高限定范式原则,可以根据需要进行运用。

实践中,数据库设计最重要的是看需求跟性能,需求>性能>表结构。所以,简单记住1NF就是最重要的了。

posted @ 2020-05-14 18:35  西就东城  阅读(145)  评论(0编辑  收藏  举报