เรื่องการออกแบบฐานข้อมูลเชิงสัมพันธ
การทําให้เป็น บรรทัดฐาน (Normal Form) เป็นกระบวนการวิเคราะห์ ภาวการณ์พึ่งพิงซึ่งกันและกันของคอลัมน์หรือ แอตทริบิวต์(Attribute
Interdependency) ในแต่ละตารางสัมพันธ์ (Relation) โดยทดสอบเปรียบเทียบกับ เกณฑ์ของการเป็นรูปแบบบรรทัดฐาน (Normal for
m criteria) ซึ่งที่ใช้งานกันทั่วไป มีทั้งหมด 6 ระดับ หรือ 6รูปแบบบรรทัดฐาน ได้แก
👉รูปแบบบรรทัดฐานที่ 1 (1NF)
👉รูปแบบบรรทัดฐานที่ 2 (2NF)
👉รูปแบบบรรทัดฐานที่ 3 (3NF)
👉 รูปแบบบรรทัดฐาน BCNF
👉 รูปแบบบรรทัดฐานที่ 4 (4NF)
👉รูปแบบบรรทัดฐานที่ 5 (5NF) 👇
เกณฑ์ของการเป็นรูปแบบบรรทัดฐานแต่ละระดับ มีวัตถุประสงค์เพื่อ แก้ปัญหาอันเกิดจากภาวการณ์พึ่งพิงซึ่งกันและกันที่ไม่เหมาะสม
ของ Attribute ในตารางความสัมพันธ์ โดยปกติ เมื่อผลการวิเคราะห์บ่งชี ้ว่า ตารางความสัมพันธ์ใดยังไม่ผ่านเกณฑ์แห่งการเป็ นรูปแบบ
บรรทัดฐาน ในระดับที่กําลังพิจารณา ตารางความสัมพันธ์นั ้นจะถูก แตกออก (Decomposed) เป็นชุดตารางความสัมพันธ์ย่อยที่อยู่ในรูปแบบ
บรรทัดฐานที่กําลังพิจารณา
ปัญหาของการออกแบบฐานข้อมูล
รูปแบบที่เป็น
บรรทัดฐานขั้นที่ 1
1NF
**การปรับปรุงข้อมูล (update anomaly) ใด ๆ จะต้องทําซํ้าหลายแห่ง ทําให้สิ้นเปลืองเวลา
**การเพิ่มเติมข้อมูล (insert anomaly) ใน Relation ข้างต้นไม่สามารถทําได
**การลบข้อมูล (delete anomaly) ออกจาก Relation อาจทําให้ข้อมูลบางส่วนสูญ
หายไปจากฐานข้อมูล
รูปแบบที่เป็น
บรรทัดฐานขั้นที่2
**การปรับปรุงข้อมูลใด ๆ จะต้องทําซํ ้าหลายแห่ง ทําให้สิ ้นเปลืองเวลา รวมทั ้งอาจทําการแก้ไข้อมูลได้ไม่
ครบถ้วนและถูกต้องทุกรายการ
**การเพิ่มเติมข้อมูลอาจไม่สามารถทําได้
**การลบข้อมูลออกจาก Relation อาจทําให้ข้อมูลบางส่วนสูญหายไปจากฐานข้อมูล
Boyce-Codd Normal
Form (BCNF
** รูปแบบที่ขยายขอบเขตมาจากรูปแบบที่เป็นบรรทัดฐานขั้นที่ 3 แก้ไขปัญหาความซ้ำซ้อน
ของ ข้อมูลที่พบในรีเลชัน ให้ชัดเจนและรัดกุมยิ่งขึ้น
** คุณสมบัติของรูปแบบที่เป็นบรรทัดฐานของบอยส์และคอดด์ – คีย์คู่แข่งนั้นเป็นคีย์ผสม ซึ่งมีแอททริบิวต์บางส่วนร่วมกัน
** ทุกแอททริบิวต์ที่เป็นตัวระบุค่า หรือ DETERMINANT ในรีเลชันนั้นต้องเป็นคีย์คู่แข่ง
** ไม่มีแอททริบิวต์ใดในรีเลชันที่สามารถระบุค่าของแอททริบิวต์ที่เป็นคีย์หลัก หรือส่วนใดส่วนหนึ่งของ
แอททริบิวต์ที่ประกอบกันเป็นคีย์หลักได้
รูปแบบที่เป็น
บรรทัดฐานขั้นที่4
**การปรับปรุงข้อมูลใด ๆ จะต้องทําซํ ้าหลายแห่ง ทําให้สิ้นเปลืองเวลา
**การเพิ่มเติมข้อมูลใน Relation ไม่สามารถทําได้
**การลบข้อมูลออกจาก Relation อาจทําให้ข้อมูลบางส่วนสูญหายไปจากฐานข้อมูล
รูปแบบที่เป็น
บรรทัดฐานขั้นที่5
** ต้องมีโครงสร้างเป็นไปตามคุณสมบัติของ 4 NF
** ต้องมีคุณสมบัติ Join Dependency
– เป็นการนํา relation ย่อย ที่เกิดจากการแตก Relation เดิมมารวมกัน (Join)แล้วได้ข้อมูลเช่นเดียวกับ
Relation เดิม