数据库的三大范式+BCNF

(1)第一范式(1NF):要求数据库表的字段都具有原子性,也就是不可再分。
ID name addr
1 Sophie 广州市天河区迎龙路

对于addr地址内容,如果只要显示一个完整的地址,这就是符合第一范式的,但是如果要求对地址划分成省市县,这就不符合第一范式了。

ID name province city town
1 Sophie 广东省 广州市 天河区

(2)第二范式(2NF):要求非主属性对键不具有部分函数依赖。

CourseID StudentID Score StudentName
1 1 100 Sophie

主键是(CourseID,StudentID),(CourseID,StudentID)-->Score,(StudentID)-->StudentName  存在部分函数依赖

CourseID StudentID Score
1 1 100

StudentID StudentName
1 Sophie

(3)第三范式(3NF):要求消除非主属性对键的传递函数依赖

OrderID BookID BookName
1 1 Java
主键(OrderID),BookID-->BookName,OrderID-->BookID,传递推出OrderID---BookNme

OrderID BookID
1 1
BookID BookName
1 Java

(4)BCNF:要求消除主属性对键的传递函数依赖

(例子后续补充)

你可能感兴趣的:(数据库,数据库,范式)