วันเสาร์ที่ 5 พฤษภาคม พ.ศ. 2561

Normal Form


Normalization

 คือ การทำให้ข้อมูลในฐานข้อมูลไม่มีความ ผิดปกติในการ insert, update, delete

Example of 1NF , 2NF , 3NF


First Normal Form(1NF)

column แต่ละ column ควรเก็บค่า แค่ค่าเดียว(single value) ไม่ควรไม่ค่าหลายๆค่า(multi value)


จากภาพด้านบนจะเห็นได้ว่า subject มีการเก็บค่าไว้มากกว่า 1 ค่า สามารถแก้ไขได้โดยการแยก column
roll_no ออกจากกัน จะได้ผลดังนี้






Second Normal Form(2NF)


การที่จะเป็น second normal form นั้นมีอยู่ 2 เงื่อนไขดังนี้
1. ต้องเป็น first normal form ก่อน
2. ตัว Attribute ที่เป็น  non- prime ค่าของมันจะต้องไม่ ขึ้นอยู่กับ candidate key ในตาราง



จากภาพตารางด้านบนนั้นจะกำหนดให้คอลัมน์ teacher_id กับ subject นั้นเป็น Candidate Key และ teacher_age เป็น non-prime attribute และจะเห็นได้ว่าค่าของ teacher_age นั้นจะขึ้นอยู่กับ teacher_id เพราะคุณครูแต่ละคนจะมีอายุของตัวเอง แก้ไขได้ดดยการแยกเป็นสองตาราง ดังนี้



third Normal Form(3NF)

การที่จะเป็น third normal form นั้นมีอยู่ 2 เงื่อนไขดังนี้
1. ต้องเป็น second normal form ก่อน
2. ต้องไม่มี Transitive Dependency



สามารถแก้ไข Transitive Dependency ได้โดย ทำการแยกเป็นสองตารางดังนี้




ไม่มีความคิดเห็น:

แสดงความคิดเห็น