วันเสาร์ที่ 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 ได้โดย ทำการแยกเป็นสองตารางดังนี้




Guideline 4


Guideline 4
    ควรออกแบบ Relation schema ที่สามารถ join ด้วยเงื่อนที่มีความเท่าเทียมกัน โดย attributes นั้นจะมีความเกี่ยวข้องกันเป็นคู่ๆ เช่น primary key กับ foreign key 
    หลีกเลี่ยงความสัมพันธ์ที่มี attributes ที่ไม่ได้เกิดจากการผสมกัน เพราะว่าการ join กันจะทำให้เกิด attribute ที่ผิดได้


ตัวอย่างจาก : http://www.cs.montana.edu/~halla/csci440/n15/n15.html
    เป็นการนำ 2 Table มา JOIN กันด้วย join condition ที่มี Attribute ไม่เหมาะสม(ไม่ใช่ primary key หรือ foreign key) ทำให้มีบาง tuple ที่เป็นข้อมูลที่ไม่ถูกต้อง



นำ EMP_LOCS กับ EMP_PROJ1 มา JOIN ด้วย Plocation

ผลที่ได้นั้น มี Tuple ที่มีข้อมูลปลอม ออกมา





Week 4

 Insert transcript data of your group members into DBMS


PostgreSQL



              ข้อมูลนักศึกษา ที่เรียนวิชา computer organization


                    รายชื่อของนักศึกษาทั้งหมดใน ฐานข้อมูล




โลกาภิวัฒน์

        การที่ประชาคมโลก สามารถรับรู้สัมพันธ์ หรือ รับผมกระทบจากสิ่งที่เกิดขึ้นได้อย่างรวดเร็ว
กว้างขวาง ซึ่งเนื่องมาจากการพัฒนาระบบสาระสนเทศ


cashless Society