范式:是符合某一種級別的關系模式的集合,
說白了,就是對關系模式的一種規范化,
范式分為:第一范式、第二范式、第三范式、BC范式、第四范式、第五范式,后面兩種在這里不討論,
1、第一范式(1NF):關系模式S中的所有屬性都是不可再分的基本資料項
人話解釋:就是不允許表中還有表

資料庫函式依賴
資料庫碼、屬性的概念
2、第二范式(2NF):在第一范式的基礎上,消除了非主屬性對碼的部分函式依賴
舉個🌰:關系模式S(Sno,Cno,Sname,Grade)
很明顯,屬性Sname部分依賴于碼[Sno,Cno],也就是說關系模式S不符合第二范式,
為了滿足第二范式,可以把它拆成兩個關系模式:
S1(Sno,Sname);S2(Sno,Cno,Grade)
3、第三范式(3NF):在第二范式的基礎上,進一步消除了非主屬性對碼的傳遞函式依賴
舉個🌰:關系模式S(Sno,Sname,Sdept,Mname)
(其中,屬性Sdept表示學生所在的系,屬性Mname表示系主任的姓名)
很明顯,屬性Mname傳遞依賴于碼[Sno],也就是說關系模式S不符合第三范式,
為了滿足第三范式,可以把它拆成兩個關系模式:
S1(Sno,Sname,Sdept);S2(Sdept,Mname)
4、BC范式(BCNF):在第三范式的基礎上,進一步消除了主屬性對碼的部分函式依賴和傳遞函式依賴
注意:是“主屬性”對碼的部分函式依賴和傳遞函式依賴
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/164201.html
標籤:其他
上一篇:#MyBatis:selectKey標簽 <selectKey> #keyProperty、keyColumn、order、resultType @FDDLC
下一篇:關系型資料庫的外鍵約束與關聯
