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) เพือ ่ ใชในการ