Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

Fourth Normal Form (4NF) - รูปแบบปกติที่ 4


4NF คืออะไร?

4NF มาหลัง 1NF, 2NF, 3NF และ Boyce-Codd Normal Form (BCNF) ถูกนำเสนอโดย Ronald Fagin ในปี 1977

เพื่อให้อยู่ใน 4NF ความสัมพันธ์ (Relation) ต้องอยู่ใน BCNF และ ไม่ควรมี multi-valued attribute มากกว่าหนึ่งอัน

ตัวอย่าง

มาดูตัวอย่าง:

<Movie>

Movie_Name Shooting_Location Listing
MovieOneUKComedy
MovieOneUKThriller
MovieTwoAustraliaAction
MovieTwoAustraliaCrime
MovieThreeIndiaDrama

ตารางข้างต้น ไม่อยู่ใน 4NF เพราะ:

  • หนังหลายเรื่องอาจมี Listing เดียวกันได้
  • สถานที่ถ่ายทำหลายแห่งอาจมีหนังเรื่องเดียวกันได้

แปลงให้อยู่ใน 4NF โดยแยกตาราง:

<Movie_Shooting>

Movie_Name Shooting_Location
MovieOneUK
MovieOneUK
MovieTwoAustralia
MovieTwoAustralia
MovieThreeIndia

<Movie_Listing>

Movie_Name Listing
MovieOneComedy
MovieOneThriller
MovieTwoAction
MovieTwoCrime
MovieThreeDrama

ตอนนี้การละเมิดถูกแก้ไขแล้ว และตารางทั้งสองอยู่ใน 4NF แล้ว