วันเสาร์ที่ 9 ตุลาคม พ.ศ. 2553

การสร้าง 1NF และ 2NF

1. First Normol Form (1NF)

การทำนอร์มัลไลเซชันระดับที่ 1 ต้องมีคุณสมบัติดังนี้

ไม่มีคอลัมน์ใดในตารางที่มีค่ามากกว่า 1 ค่า คือค่าในแต่ละคอลัมน์ต้องเป็น atomic หรือไม่อยู่ในรูปของ repeating group

            การทำนอร์มัลไลเซชันจะต้องดูข้อมูลในตารางว่าข้อมูลในคอลัมน์ของตารางที่สร้างขึ้นมานั้นมีค่ามากกว่า 1 ค่า หรือไม่ ถ้ามีค่ามากกว่า 1 ค่า แสดงว่าไม่เป็น atomic หรืออยู่ในรูปของ  repeating group ดังนั้นจึงไม่เป็น NF1 การทำให้ตารางเป็น 1NF นั้น คือ
1.      แยกคอลัมน์ที่มีค่ามากกว่า  1 ค่า ออกเป็นแถวใหม่
2.      เพิ่มข้อมูลที่เหมาะสมเข้าไปในคอลัมน์ที่ว่างอยู่ของแถวที่เกิดขึ้นใหม่


นี่คือตัวอย่างตารางที่ไม่ได้เป็น 1NF ดังนั้นจะทำให้เป็น 1NF ได้คือ




2. Second Normal From (2NF)

            การทำนอร์มัลไลเซชันระดับที่ 2 ต้องมีคุณสมบัติ คือ
               
  1. ต้องมีคุณสมบัติ 1NF
  2. ทุก nonprime attribute จะต้องขึ้นกับ prime (primary key) ทุกตัว

คือแอตทริบิวต์ที่ไม่ใช่คีย์หลักต้องขึ้นกับคีย์หลักเท่านั้น เช่น ตัวอย่างตารางบอกข้อมูลสมาชิก เมื่อหารหัสสมาชิกแล้วจะสามารถตอบได้ว่าข้อมูลของสมาชิกคนนั้นมีอะไรบ้าง คือ รหัสสมาชิกมี ชื่อสมาชิกนั่นเอง


เราต้องดูว่าตารางผ่านคุณสมบัติ 1NF หรือไม่ จากนั้นเมื่อผ่านคุณสมบัติ 1NF แล้วให้ดูว่า แอตทริบิวต์ใดเป็น prime หรือคีย์หลัก จะเห็นได้ว่ามีแอตทริบิวต์  รหัสลูกค้า และ รหัสหนังสือ เป็นคีย์หลัก ส่วนที่เหลือเป็น nonprime
                จากนั้นก็มาพิจารณาคุณสมบัติว่า nonprime ต้องขึ้นกับ prime ทุกตัว สรุปตารางนี้คือ












จะเห็นได้ว่า ชื่อลูกค้า , ที่อยู่ , เบอร์โทรศัพท์ จะขึ้นกับ รหัสลูกค้าเพียงอย่างเดียวและไม่ขึ้นกับ รหัสหนังสือเลย ทำให้ไม่ตรงกับคุณสมบัติ 2NF และจะเห็นได้ว่ามีเพียงจำนวนสินค้าอย่างเดียวที่ขึ้นกับ รหัสลูกค้า และ รหัสหนังสือ  สรุปว่า















ดังนั้นจะทำให้เป็น 2NF จะต้องทำการแตกตารางออกมา ดังนี้






6 ความคิดเห็น:

  1. ขอขอบพระคุณหลายยยย เด้อ

    ตอบลบ
  2. ขอบคุณสำหรับข้อมูลและเนื้อหาที่ดีคับ

    ตอบลบ
  3. ขอบคุณมากครับ อ่านแล้วเข้าใจกว่าในหนังสือที่ รร หามาให้อ่านอีกครับ

    ตอบลบ
  4. เยี่ยมครับ ถ้ามี nf3 ด้วยจะแจ่วเลย

    ตอบลบ
  5. เข้าใจกว่าในหนังสือมาก ครับ ขอบคุณครับ

    ตอบลบ
  6. ไม่ระบุชื่อ5 มีนาคม 2565 เวลา 00:57

    titanium nose stud with 3-way and 3-way - Titanium-arts.com
    TINIETI, a German beer titanium bmx frame brand that has been titanium engagement rings for her making inroads across Europe. It is titanium steel known as the man titanium bracelet “Tin Ick” and has been named after $59.00 · 2014 ford fusion energi titanium ‎In stock

    ตอบลบ