请教个位大虾一个数据库的基础知识!!!!!!!!!!100分!!!!

请哪位大虾为我解释一下什么叫三个范试,尽量以最易懂的语言!!!!
谢谢!!
---------------------------------------------------------------

那里是3个范式,
我只听说过“我党的两个凡是”和“数据库7级范式”------:_)

低级范式:1NF 2NF 3NF BCNF
高级范式:4NF 5NF DK/NF

工程上常用的是 1NF 2NF 3NF 这3级范式
范式的定义是嵌套的,都是在前一范式的基础上,消除某种不良关系得来的

设表有 A B C 3列
第一范式(1NF) 你在数据库里能建的表都符合第一范式。

第二范式 (2NF) 在第一范式的基础上,没有以下情况:
明明A列就是主键,你偏要用A+B列作主键,而B也可以决定C的值
例:A=你的姓名 B=你的手机号 C=你这个月的电话费 主键为A+B
这就不符合2NF但符合2NF

第三范式 (3NF) 在第二范式的基础上,没有以下情况:
A列是主键,可以决定B C的值,,而B也可以决定C的值
例:A=你的姓名 B=你的手机型号 C=这个型号手机的价格 主键为A
这就不符合3NF但符合2NF

不精确的说,如果你建的表不符合低级范式,那一定是你把两件或多件事的
描述写在一个表里了,就是“表中有表”实际上,如果你的思维不是特别混乱的话,想建出不符合低级范式的表都难。

但有时为了性能的需要,要把表进行反规范化,一般最后的表 2NF,3NF,BCNF
的都有。

Published At
Categories with 数据库类
Tagged with
comments powered by Disqus