Transcript chapter6

1.
การจัดระบบขอมู
้ ลในรูปแบบ
บรรทั
2. ดวัฐาน
ตถุประสงคของการจั
ดระบบ
์
ข้อมูลในรูปแบบบรรทัดฐาน
3.
กระบวนการปรับบรรทัดฐาน
4.
รูปแบบบรรทัดฐาน (Normal
Form)
1.
การจัดระบบข้อมูลในรูปแบบบรรทัด
การ Normalization หรือ Normal
Form (NF)
คือ เป็ นการแยกตารางเพือ
่ ลดความ
ซา้ ซ้อนของขอมู
้ ล ทาให้มีประสิ ทธิภาพ
จัดการไดง้ าย
สามารถลบ เพิม
่ และ
่
เปลีย
่ นแปลงขอมู
ก
้ ลไดโดยไม
้
่ อให
่
้เกิด
ปัญหา
2. วัตถุประสงคของการจั
ดระบบข้อมูลในรูป
์
1. เพือ
่ ลดเนื้อทีใ่ นการจัดเก็บขอมู
้ ล
2. เพือ
่ ลดปัญหาทีข
่ อมู
้ ลไมถู
่ กตอง
้
3. เป็ นการลดปัญหาทีเ่ กิดจากการเพิม
่ ปรับป
3. กระบวนการปรับบรรทัดฐาน
กระบวนการปรับบรรทัดฐาน เป็ นกระบวนการทีใ่
ทีม
่ โี ครงสรางซั
บซ้อนออกเป็ นรีเลชัน
่ ยอยๆ
ทีม
่ โี ครงส
้
่
ทาให้ไมมี
่ า้ ซ้อน และอยูในรู
ปแบบบรรทัดฐ
่ ขอมู
้ ลทีซ
่
ทีส
่ ามารถนาไปใช้งาน และไมก
่ อให
่
้เกิดปัญหาใดๆ
4. รูปแบบบรรทัดฐาน (Normal Form)
4.1 รูปแบบบรรทัดฐานระดับที่ 1 (First Normal
Form: 1NF)
4.2 รูปแบบบรรทัดฐานระดับที่ 2 (Second Normal
Form: 2 NF)
4.3 รูปแบบบรรทัดฐานระดับที่ 3 (Third Normal
Form: 3NF)
4.4 รูปแบบบรรทัดฐานบอยส์-คอดด ์ (Boyce-Codd
Normal Form: BCNF)
4.5 รูปแบบบรรทัดฐานระดับที่ 4 (Fourth Normal
Form: 4NF)
4.6 รูปแบบบรรทัดฐานระดับที่ 5 (Fifth Normal
4.1 รูปแบบบรรทัดฐานระดับที่ 1 (First Norma
รูปแบบบรรทัดฐานระดับที่ 1 เป็ นการปรับ
บรรทัดฐานระดับแรกสุด จะเป็ นกระบวน การ
ในการปรับตารางขอมู
้ ลของผูใช
้ ้งานให้อยูใน
่
รูปแบบบรรทัดฐานระดับที่ 1 ซึง่ รีเลชัน
่ ใดๆ
จะอยูในรู
ปแบบบรรทัดฐานระดับที่ 1 ก็ตอเมื
่
่
่ อ
คาของแอททริ
บวิ ตต
ในแตละทู
เพิลจะตองมี
่
์ างๆ
่
่
้
คาของข
อมู
่
้ ลเพียงคาเดี
่ ยว
นิยาม
รีเลชัน
่ ทีอ
่ ยูในรู
ปแบบบรรทัดฐาน
่
ระดับที่ 1 ก็ตอเมื
่ รีเลชัน
่ นั้นไมมี
่ อ
่
กลุมข
่ อมู
้ ลซา้ (Repeating Group)
หลักการแปลงเป็ น 1NF
1. หากพบวามี
่ กลุมข
่ อมู
้ ลซา้ ให้แยก
ข้อมูลออกให้เป็ นเอกเทศ
เป็ นแตละทู
เพิล
่
2. กาหนดคียหลั
่
์ กให้กับรีเลชัน
4.2 รูปแบบบรรทัดฐานระดับที่ 2 (Second Nor
รีเลชัน
่ ใดๆ จะอยูในรู
ปแบบบรรทัดฐานระดับ
่
ที่ 2 ก็ตอเมื
่ รีเลชัน
่ นั้นๆ อยูในรู
ปแบบ
่ อ
่
บรรทัดฐานระดับที่ 1 และแอททริบวิ ตทุ
์ กตัวที่
ไมได
่ เป็
้ นคียหลั
์ ก จะต้องมีความสั มพันธ ์
ระหวางค
าของแอททริ
บวิ ตแบบฟั
งกชั
่ กับคีย ์
่
่
์
์ น
หลัก (Fully Functional Dependency)
ตัวอยางรี
่ ผู้ผลิต (รหัสผูผลิ
่
่ เลชัน
้ ต, ชือ
ผู้ผลิต, จังหวัด) จะเห็ นวาเมื
่ ทราบคาแอททริ
่ อ
่
บิวตรหั
แอทท
่
์ สผูผลิ
้ ตจะสามารถทราบคาของ
ริบวิ ตตั
่ ๆ ไดอย
รณ ์
์ วอืน
้ างสมบู
่
นิยาม
รีเลชัน
่ ทีอ
่ ยูในรู
ปแบบบรรทัดฐานขัน
้ ที่ 2 ก็
่
ตอเมื
่
่ อ
1. รีเลชัน
่ นั้นตองอยู
ในรู
ปแบบบรรทัดฐาน
้
่
ขัน
้ ที่ 1 และ
2. ไมมี
่ ก
ี ารขึน
้ ตอบางส
่ แอททริบวิ ตที
์ ม
่
่ วน
ของคียหลั
์ ก
(Partial Dependency)
หลักการแปลงเป็ น 2NF
1. หากมีรเี ลชัน
่ ใดทีม
่ แ
ี อททริบวิ ตมี
้ ตอ
์ การขึน
่
กันกับบางส่วนของคียหลั
์ ก ให้ตัดแอททริ
บิวตดั
เลชัน
่ ใหม่
และ
ในรี
์ งกลาวออกไปไว
่
้
ในรีเลชัน
่ เดิมให้คงแอททริบวิ ต ์ ทีข
่ น
ึ้ กับทุก
ส่วนของคียหลั
์ กไว้
2. สรางรี
่ ใหม่ โดยดึงแอททริบวิ ตที
้ เลชัน
์ ่
ขึน
้ กับบางส่วนของคียหลั
์ ก และกาหนดคีย ์
หลักของรีเลชัน
่ จากแอททริบวิ ตที
์ เ่ ป็ น
ส่วนประกอบของรีเลชัน
่ ทีแ
่ อททริบวิ ตเหล
์ านี
่ ้ม ี
ฟังกชั
่ การขึน
้ ตอกั
์ น
่ น
4.3 รูปแบบบรรทัดฐานระดับที่ 3 (Third Norm
รีเลชัน
่ ใดๆ จะอยูในรู
ปแบบบรรทัดฐานระดับที่
่
่ รีเลชัน
ปแบบบรรทัด
3 ก็ตอเมื
่ นั้นๆ อยูในรู
่ อ
่
ฐานระดับที่ 2 และแอททริบวิ ตที
์ ไ่ มได
่ เป็
้ นคีย ์
หลักไมมี
แอทท
่ คุณสมบัตใิ นการกาหนดคาของ
่
ริบวิ ตอื
่ ทีไ่ มใช
์ น
่ ่ คียหลั
์ ก (Transitive
Dependency)
นิยาม
รีเลชัน
่ ทีอ
่ ยูในรู
ปแบบบรรทัดฐานขัน
้ ที่ 3 ก็
่
ตอเมื
่
่ อ
1. รีเลชัน
่ นั้นตองอยู
ในรู
ปแบบบรรทัด
้
่
ฐานขัน
้ ที่ 2 และ
2. ไมมี
์ ก
่ แอททริบวิ ตที
์ ไ่ มใช
่ ่ คียหลั
สามารถระบุคาแอททริ
บวิ ต ์
่
ทีไ่ มใช
่ ได้ (Transitive
่ ่ คียหลั
์ กอืน
Dependency)
หลักการแปลงเป็ น 3NF
1. หากในรีเลชัน
่ มีการขึน
้ ตอกั
่ นแบบทรานซิ
ทีฟ ให้ตัดเอาแอททริบวิ ตที
่ น
ึ้ ตอกั
์ ข
่ น แบ
บทรานซิทฟ
ี ออกไปสรางรี
่ ใหม่
้ เลชัน
2. สรางรี
่ ใหม่ โดยนาเอาแอททริบวิ ต ์
้ เลชัน
ทีข
่ น
ึ้ ตอกั
ซิทฟ
ี จากรีเลชัน
่
่ นแบบทราน
เดิมมา และกาหนดคียหลั
์ กโดยเลือกเอาแอ
ททริบวิ ตที
่ ามารถกาหนดคาของแอททริ
์ ส
่
บิวตอื
่ ๆ ได้
์ น
3. ในรีเลชัน
่ เดิมให้คงแอททริบวิ ตที
่ ามารถ
์ ส
เลือกคาแอททริ
บวิ ตที
่
์ ไ่ มใช
่ ่ คียหลั
์ กไวเป็
้ น
คียนอก (Foreign key) เพือ
่ ใชในการ