ݺߣ

ݺߣShare a Scribd company logo
Ȩร์มัลไลเซชัน
(Normalization)
การทาȨร์มัลไลเซชัน เป็นวิธีการในการกาหนดแอตทริบิวต์ให้กับแต่
ละเอนทิตี เพื่อให้ได้โครงสร้างของตารางที่ดี สามารถควบคุมความ
ซ้าซ้อนของข้อมูลหลีกเลี่ยงความผิดปกติของข้อมูล โดยทั่วไปผลลัพธ์ของ
การȨร์มัลไลเซชัน จะได้ตารางที่มีโครงสร้างซับซ้อนน้อยลง แต่จานวน
ของตารางจะมากขึ้น
การทาȨร์มัลไลเซชัน จะประกอบด้วยนอร์มัลฟอร์ม (Normal
Form) แบบต่าง ๆ ที่มีเงื่อนไขของการทาให้อยู่ในรูปของนอร์มัลฟอร์ม
ที่แตกต่างกันไป ขึ้นอยู่กับผู้ออกแบบฐานข้อมูลว่า ต้องการลดความ
ซ้าซ้อนในฐานข้อมูลให้อยู่ในระดับใด ซึ่งประกอบด้วยนอร์มัลฟอร์มแบบ
ต่าง ๆ ดังต่อไปนี้
– นอร์มัลฟอร์มที่ 1 (First Normal Form : 1NF)
– นอร์มัลฟอร์มที่ 2 (Second Normal Form : 2NF)
– นอร์มัลฟอร์มที่ 3 (Third Normal Form : 3NF)
– บอยซ์คอดด์นอร์มัลฟอร์ม (Boyce-Codd Normal Form :
BCNF)
– นอร์มัลฟอร์มที่ 4 (Fourth Normal Form : 4NF)
– นอร์มัลฟอร์มที่ 5 (Fifth Normal Form : 5NF)
1) การแปลงให้อยู่ในรูปนอร์มัลฟอร์มที่1
(First Normal Form : 1NF)
คุณสมบัติของรีเลชันของแบบจาลองข้อมูลเชิงสัมพันธ์ ก็คือ ข้อมูลใน
แต่ละทัปเพิลจะต้องไม่ซ้ากัน และค่าในแต่ละแอตทริบิวต์จะต้องไม่
สามารถถูกแบ่งแยกย่อยลงไปได้อีกหรือมีความเป็นอะตอมมิค
(Atomic) รวมถึงจะต้องมีค่าเพียงค่าเดียวที่อยู่ในแต่ละแอตทริบิวต์หรือ
มีความเป็นซิงเกิลแวลู (Single Value) ซึ่งในการทาȨร์มัลไลเซชัน
ให้อยู่ในนอร์มัลฟอร์ที่ 1 ก็อาศัยคุณสมบัติดังที่กล่าวไว้ข้างต้น
1.1) รีพีทติ้งกรุ๊ป (Repeating Group)
การที่ข้อมูลใน 1 ทัปเพิล สามารถมีค่าในแต่ละแอตทริบิวต์ได้มากกว่า
หนึ่งค่า (Multivalued) จะทาให้เกิดรีพีทติ้งกรุ๊ป ดังตารางที่แสดงใน
ภาพข้างล่าง ซึ่งเลขที่โครงการหนึ่งหมายเลขประกอบด้วยกลุ่มข้อมูลหลาย
กลุ่ม ซึ่งทาให้รีเลชันดังกล่าว ขาดคุณสมบัติซิงเกิลแวลู
1.2) นิยามของนอร์มัลฟอร์มที่ 1
รีเลชันจะอยู่ในรูปของนอร์มัลฟอร์มที่ 1 ก็ต่อเมื่อมีคุณสมบัติตามเงื่อนไข
ดังต่อไปนี้
1. มีการกาหนดแอตทริบิวต์ที่เป็นคีย์
2. ต้องไม่มีรีพีทติ้งกรุ๊ป แต่ละแถวหรือคอลัมน์จะมีค่าได้เพียง 1 ค่าเท่านั้น
3. แอตทริบิวต์ทุกตัวต้องขึ้นอยู่กับคีย์หลัก
จากภาพข้างบน เมื่อการการȨร์มัลไลเซชันให้อยู่ในรูปนอร์มัลฟอร์ม
ที่ 1 จะได้ตารางที่แตกย่อยออกมาเป็น 2 ตาราง ดังภาพข้างล่าง ซึ่งมี
คุณสมบัติตามนอร์มัลฟอร์มที่ 1 แล้ว
Ȩร์มัลไลเซชัน
2) การแปลงให้อยู่ในรูปนอร์มัลฟอร์มที่2
(Second Normal Form : 2NF)
ในหนึ่งรีเลชันจะประกอบด้วยแอตทริบิวต์ต่าง ๆ ที่มีความสัมพันธ์ที่ขึ้น
ต่อกัน ซึ่งความสัมพันธ์ดังกล่าวจะเป็นตัวกาหนดว่าแอตทริบิวต์ใดเป็น
ตัวกาหนดข้อมูล หรือ คีย์แอตทริบิวต์ (Key Attribute) และและแอ
ตทริบิวต์ใดเป็นข้อมูลที่ถูกกาหนดหรือนอนคีย์แอตทริบิวต์(Nonkey
Attribute)
2.1) ฟังก์ชันนัลดีเพนเดนซี (Functional Dependency: FD)
ในการทาȨร์มัลไลเซชัน จะต้องมีความเข้าใจหลักการของฟังก์ชันดีเพน
เดนซี
(Function Dependency : FD) เสียก่อน โดยมีคาจากัดความ
คือ B ขึ้นอยู่กับ A ถ้าทราบค่าของ A ก็จะทาให้รู้ค่าของ B ได้
ฟังก์ชันนัลดีเพนเดนซี สามารถแสดงด้วยการใช้เครื่องหมายลูกศร
( ->) ตัวอย่างเช่น A->B แสดง B เป็นฟังก์ชันนัลดีเพนเดนต์
กับ A กล่าวคือ ถ้ารู้ค่า A ก็จะทาให้ทราบค่าของ B ด้วย ทุกค่าของ A ที่
มีค่าเท่ากัน จะได้ค่า เท่ากันเสมอ
2.2) พาเชียลดีเพนเดนซี (Partial Dependency)
พาร์เชียลดีเพนเดนซี หมายถึง การที่มีแอตทริบิวต์บางแอตทริบิวต์ ที่
ขึ้นอยู่กับเพียงบางส่วนของคีย์หลักเท่านั้น ตัวอย่างเช่น จากตารางในภาพ
ข้างล่าง แอตทริบิวต์ชื่อพนักงานจะขึ้นอยู่กับคีย์รหัสพนักงาน ในขณะที่
แอตทริบิวต์ชื่อแผนก จะขึ้นอยู่กับคีย์รหัสแผนก จะเห็นว่า ข้อมูลที่อยู่ใน
รีเลชันเดียวกัน แต่ไม่ได้ขึ้นอยู่กับคีย์ใดคีย์หนึ่งทั้งหมด แต่จะขึ้นอยู่กับคีย์
ใดคีย์หนึ่งเพียงบางส่วนเท่านั้น
2.3) นิยามของนอร์มัลฟอร์มที่ 2
รีเลชันจะอยู่ในรูปของนอร์มัลฟอร์มที่ 2 ก็ต่อเมื่อมีคุณสมบัติตามเงื่อนไข
ดังต่อไปนี้
1. รีเลชันนั้นเป็นนอร์มัลฟอร์มที่ 1 อยู่แล้ว
2. รีเลชันนั้นไม่มีพาร์เชียลดีเพนเดนซี
ตัวอย่างรีเลชันพนักงานในแผนกในภาพข้างบน เมื่อทาการแตกออกเป็น
รีเลชันย่อยที่ไม่มีพาร์เชียลดีเพนเดนซีแล้ว จะได้เป็นรีเลชันสองรีเลชัน คือ
รีเลชันพนักงานและ รีเลชันแผนก ซึ่งอยู่ในรูปของนอร์มัลฟอร์มที่ 2
แล้ว ดังภาพต่อไปนี้
Ȩร์มัลไลเซชัน
3) การแปลงให้อยู่ในรูปนอร์มัลฟอร์มที่3
(Third Normal Form : 3NF)
ในหนึ่งรีเลชันจะประกอบคีย์แอตทริบิวต์และนอนคีย์แอตทริบิวต์ คีย์
แอตทริบิวต์จะต้องเป็นตัวกาหนดความหมายหรือการมีอยู่ของแอตทริบิวต์
อื่น ๆ ที่อยู่ในรีเลชันเสมอ
3.1) ทรานซิทีฟดีเพนเดนซี (Transitive Dependency)
ทรานซิทีฟดีเพนเดนซี หมายถึง การที่มีฟังก์ชันนัลดีเพนเดนซี ระหว่าง
แอตทริบิวต์ที่ไม่ได้เป็นส่วนของคีย์ใด ๆ แต่มีแอตทริบิวต์อื่น ๆ มาขึ้นกับ
แอตทริบิวต์นั้นตัวอย่างเช่น จากตารางในภาพข้างล่าง แอตทริบิวต์ชื่อ
พนักงาน และรหัสตาแหน่งงานจะขึ้นอยู่กับคีย์รหัสพนักงาน ในขณะที่
แอตทริบิวต์ค่าแรงต่อชั่วโมงของพนักงาน
จะขึ้นอยู่กับแอตทริบิวต์รหัสตาแหน่งงานซึ่งไม่ใช่คีย์อีกต่อหนึ่งทาให้มี
ทรานซิทีฟดีเพนเดนซีเกิดขึ้นในรีเลชันนี้
3.2) นิยามของนอร์มัลฟอร์มที่ 3
รีเลชันจะอยู่ในรูปของนอร์มัลฟอร์มที่ 3 ก็ต่อเมื่อมีคุณสมบัติตามเงื่อนไข
ดังต่อไปนี้
1. รีเลชันนั้นเป็นนอร์มัลฟอร์มที่ 2 อยู่แล้ว
2. รีเลชันนั้นไม่มีทรานซิทีฟดีเพนเดนซี
ตัวอย่างรีเลชัน การทางานของพนักงาน ในภาพข้างบน เมื่อทาการแตก
ออกเป็นรีเลชันย่อยที่ไม่มีทรานซิทีฟดีเพนเดนซีแล้ว จะได้เป็นรีเลชันสอง
รีเลชัน คือรีเลชันพนักงาน และรีเลชันตาแหน่งงาน ซึ่งอยู่ในรูปของนอร์
มัลฟอร์มที่ 3 แล้ว ดังภาพต่อไปนี้
Ȩร์มัลไลเซชัน
4) การแปลงให้อยู่ในรูปบอยซ์คอดด์นอร์มัลฟอร์ม
(Boyce-Codd Normal Form : BCNF)
ในหนึ่งรีเลชันอาจจะประกอบด้วยหลายแคนดิเดตคีย์ (Candidate
Key) ทุกแอตทริบิวต์ในรีเลชันจะต้องขึ้นอยู่กับแคนดิเดตคีย์เสมอ เรา
สามารถกาหนดนิยามของรีเลชันที่อยู่ในรูปของบอยซ์คอดด์นอร์มัลฟอร์ม
ก็ต่อเมื่อรีเลชันมีคุณสมบัติตามเงื่อนไขดังต่อไปนี้
1. รีเลชันนั้นเป็นนอร์มัลฟอร์มที่ 3 อยู่แล้ว
2. ทุกแอตทริบิวต์ในรีเลชันจะต้องขึ้นกับแคนดิเดตคีย์
รีเลชันจะอยู่ในรูปบอยซ์คอดด์นอร์มัลฟอร์ม ถ้าทุกแอตทริบิวต์ขึ้นอยู่
กับแคนดิเดตคีย์ (Candidate Key) ดังนั้นถ้าใน 1 รีเลชันมีแคนดิเดต
คีย์เพียงตัวเดียวแล้ว นอร์มัลฟอร์มที่ 3 และบอยซ์คอดด์นอร์มัลฟอร์ม จะ
เหมือนกัน โอกาสที่คุณสมบัติของบอยซ์คอดด์นอร์มัลฟอร์มจะถูกละเมิด
นั้น เกิดขึ้นได้น้อย และจะเกิดได้กับรีเลชันที่มีแคนดิเดตคีย์มากกว่าหนึ่ง
เท่านั้น ดังตัวอย่างในภาพข้างล่าง
เราสามารถทาการแตกตารางออกมาให้อยู่ในรูปของบอยซ์คอดด์นอร์มัล
ฟอร์มได้ โดยการแยกแอตทริบิวต์รหัสวิชาเรียนและรหัสผู้สอนซึ่งขึ้นอยู่
กับแอตทริบิวต์รหัสวิชาเรียน ออกมาเป็นอีกหนึ่งรีเลชัน และแยกแอตทริ
บิวต์รหัสนักศึกษา รหัสผู้สอน และผลการเรียนออกมาเป็นอีกหนึ่งรีเลชัน
ดังแสดงในภาพข้างล่าง
5) การแปลงให้อยู่ในรูปนอร์มัลฟอร์มที่4
(Fourth Normal Form : 4NF)
ในขณะที่การทาให้อยู่ในรูปของนอร์มัลฟอร์มต่าง ๆ ที่ผ่านมา จะ
เกี่ยวข้องกับการขึ้นตรงต่อกันของข้อมูลในแต่ละแอตทริบิวต์หรือ
ฟังก์ชันนัลดีเพนเดนซี แต่การทาให้อยู่ในรูปของนอร์มัลฟอร์มที่ 4 จะ
เกี่ยวข้องกับรูปแบบของการขึ้นตรงต่อกันของข้อมูลในระดับที่ซับซ้อนกว่า
5.1) มัลติแวลูดีเพนเดนซี (Multivalued Dependency)
ถ้าแต่ละแอตทริบิวต์ในหนึ่งรีเลชัน แบ่งออกเป็นกลุ่มของข้อมูลอิสระ เช่น
แอตทริบิวต์ X, Y และ Z แบ่งออกเป็นกลุ่มข้อมูลของ X, Y และ Z ที่
เป็นอิสระต่อกัน มัลติแวลลูดีเพนเดนซี X –>> Y หมายถึงว่า
ค่า X หนึ่งค่าสามารถที่จะบอกค่า Y ได้หลาย ๆ (X Multi-
Determinse Y) ไม่ว่า Z จะมีค่าเป็นอะไรก็ตาม
5.2) นิยามของนอร์มัลฟอร์มที่ 4
รีเลชันจะอยู่ในรูปของนอร์มัลฟอร์มที่ 4 ก็ต่อเมื่อมีคุณสมบัติตามเงื่อนไข
ดังต่อไปนี้
1. รีเลชันนั้นเป็นบอยซ์คอดด์นอร์มัลฟอร์มอยู่แล้ว
2. รีเลชันนั้นไม่มีทริเวียลมัลติแวลูดีเพนเดนซี
จากรีเลชันในภาพข้างบน เราสามารถขจัดทริเวียลมัลติแวลูดีเพนเดนซี
โดยการแตกรีเลชันดังกล่าวออกเป็นรีเลชันย่อย 2 รีเลชัน ซึ่งจะทาให้ทั้ง
สองรีเลชันอยู่ในรูปของนอร์มัลฟอร์มที่ 4 ดังภาพต่อไปนี้
Ȩร์มัลไลเซชัน
6) การแปลงให้อยู่ในรูปนอร์มัลฟอร์มที่5
(Fifth Normal Form : 5NF)
การแปลงให้อยู่ในรูปของนอร์มัลฟอร์มที่ 5 จะพิจารณาถึงการขึ้นต่อกัน
ของข้อมูลในการแยกข้อมูลในรีเลชันออกเป็นรีเลชันย่อย และประกอบรีเล
ชันย่อยกลับเป็นรีเลชันใหญ่เช่นเดิม ซึ่งเป็นการตรวจสอบว่าเมื่อรวมกัน
ใหม่ด้วยวิธีการจอยน์แล้ว จะได้รีเลชันกลับมาเหมือนเดิมทุกประการ
หรือไม่
6.1) จอยน์โอเปอเรชัน (Join Operation)
ถ้ามี R1(X,Y) และ R2(Y,Z) R1 JOIN R2 = R3(X,
Y, Z) โดยที่ t(x, y, z) อยู่ใน R3 ก็ต่อเมื่อมี t1(x,y) อยู่ใน R1
และ t2(y,z) อยู่ใน R2
6.2) จอยน์ดีเพนเดนซี (Join Dependency)
ในการแยกรีเลชันออกเป็นส่วนย่อย (Decomposition) R1,
R2, R3, Rn มีคุณสมบัติจอยน์ดีเพนเดนซี ก็
ต่อเมื่อ R1 JOIN R2 JOIN R3 … JOIN Rn = R นั่นคือ
เมื่อเอารีเลชันย่อยมารวมกันก็ต้องได้รีเลชันเดิม ที่ไม่มีข้อมูลสูญหาย และ
ไม่มีทัปเพิลที่เกินมา ที่เรียกว่า สพิวเรียสทัปเพิล (Spurious Tuple)
6.3) นิยามของ 5NF รีเลชันจะเป็น 5NF ถ้า
1. รีเลชันนั้นเป็นนอร์มัลฟอร์มที่ 4 อยู่แล้ว
2. การแบ่งแยกรีเลชันมีคุณสมบัติจอยน์ดีเพนเดนซี
รายชื่อสมาชิกกลุ่ม
1.นางสาวธิดารัตน์ ขันทอง เลขที่ 15
2.นางสาวกชกร น้อยเกตุ เลขที่ 23
3.นางสาวปารวี โสภณพนิตกุล เลขที่ 25
4.นางสาวอมรรัตน์ พยาบาล เลขที่ 26
5.นางสาวณัฐกานต์ พรหมสุวรรณ์ เลขที่ 28
6.นางสาวณัฐวดี สังข์ศิลป์ชัย เลขที่ 29
ชั้นมัธยมศึกษาปีที่ 6/4

More Related Content

Ȩร์มัลไลเซชัน

  • 2. การทาȨร์มัลไลเซชัน เป็นวิธีการในการกาหนดแอตทริบิวต์ให้กับแต่ ละเอนทิตี เพื่อให้ได้โครงสร้างของตารางที่ดี สามารถควบคุมความ ซ้าซ้อนของข้อมูลหลีกเลี่ยงความผิดปกติของข้อมูล โดยทั่วไปผลลัพธ์ของ การȨร์มัลไลเซชัน จะได้ตารางที่มีโครงสร้างซับซ้อนน้อยลง แต่จานวน ของตารางจะมากขึ้น การทาȨร์มัลไลเซชัน จะประกอบด้วยนอร์มัลฟอร์ม (Normal Form) แบบต่าง ๆ ที่มีเงื่อนไขของการทาให้อยู่ในรูปของนอร์มัลฟอร์ม ที่แตกต่างกันไป ขึ้นอยู่กับผู้ออกแบบฐานข้อมูลว่า ต้องการลดความ ซ้าซ้อนในฐานข้อมูลให้อยู่ในระดับใด ซึ่งประกอบด้วยนอร์มัลฟอร์มแบบ ต่าง ๆ ดังต่อไปนี้
  • 3. – นอร์มัลฟอร์มที่ 1 (First Normal Form : 1NF) – นอร์มัลฟอร์มที่ 2 (Second Normal Form : 2NF) – นอร์มัลฟอร์มที่ 3 (Third Normal Form : 3NF) – บอยซ์คอดด์นอร์มัลฟอร์ม (Boyce-Codd Normal Form : BCNF) – นอร์มัลฟอร์มที่ 4 (Fourth Normal Form : 4NF) – นอร์มัลฟอร์มที่ 5 (Fifth Normal Form : 5NF)
  • 4. 1) การแปลงให้อยู่ในรูปนอร์มัลฟอร์มที่1 (First Normal Form : 1NF) คุณสมบัติของรีเลชันของแบบจาลองข้อมูลเชิงสัมพันธ์ ก็คือ ข้อมูลใน แต่ละทัปเพิลจะต้องไม่ซ้ากัน และค่าในแต่ละแอตทริบิวต์จะต้องไม่ สามารถถูกแบ่งแยกย่อยลงไปได้อีกหรือมีความเป็นอะตอมมิค (Atomic) รวมถึงจะต้องมีค่าเพียงค่าเดียวที่อยู่ในแต่ละแอตทริบิวต์หรือ มีความเป็นซิงเกิลแวลู (Single Value) ซึ่งในการทาȨร์มัลไลเซชัน ให้อยู่ในนอร์มัลฟอร์ที่ 1 ก็อาศัยคุณสมบัติดังที่กล่าวไว้ข้างต้น
  • 5. 1.1) รีพีทติ้งกรุ๊ป (Repeating Group) การที่ข้อมูลใน 1 ทัปเพิล สามารถมีค่าในแต่ละแอตทริบิวต์ได้มากกว่า หนึ่งค่า (Multivalued) จะทาให้เกิดรีพีทติ้งกรุ๊ป ดังตารางที่แสดงใน ภาพข้างล่าง ซึ่งเลขที่โครงการหนึ่งหมายเลขประกอบด้วยกลุ่มข้อมูลหลาย กลุ่ม ซึ่งทาให้รีเลชันดังกล่าว ขาดคุณสมบัติซิงเกิลแวลู
  • 6. 1.2) นิยามของนอร์มัลฟอร์มที่ 1 รีเลชันจะอยู่ในรูปของนอร์มัลฟอร์มที่ 1 ก็ต่อเมื่อมีคุณสมบัติตามเงื่อนไข ดังต่อไปนี้ 1. มีการกาหนดแอตทริบิวต์ที่เป็นคีย์ 2. ต้องไม่มีรีพีทติ้งกรุ๊ป แต่ละแถวหรือคอลัมน์จะมีค่าได้เพียง 1 ค่าเท่านั้น 3. แอตทริบิวต์ทุกตัวต้องขึ้นอยู่กับคีย์หลัก จากภาพข้างบน เมื่อการการȨร์มัลไลเซชันให้อยู่ในรูปนอร์มัลฟอร์ม ที่ 1 จะได้ตารางที่แตกย่อยออกมาเป็น 2 ตาราง ดังภาพข้างล่าง ซึ่งมี คุณสมบัติตามนอร์มัลฟอร์มที่ 1 แล้ว
  • 8. 2) การแปลงให้อยู่ในรูปนอร์มัลฟอร์มที่2 (Second Normal Form : 2NF) ในหนึ่งรีเลชันจะประกอบด้วยแอตทริบิวต์ต่าง ๆ ที่มีความสัมพันธ์ที่ขึ้น ต่อกัน ซึ่งความสัมพันธ์ดังกล่าวจะเป็นตัวกาหนดว่าแอตทริบิวต์ใดเป็น ตัวกาหนดข้อมูล หรือ คีย์แอตทริบิวต์ (Key Attribute) และและแอ ตทริบิวต์ใดเป็นข้อมูลที่ถูกกาหนดหรือนอนคีย์แอตทริบิวต์(Nonkey Attribute)
  • 9. 2.1) ฟังก์ชันนัลดีเพนเดนซี (Functional Dependency: FD) ในการทาȨร์มัลไลเซชัน จะต้องมีความเข้าใจหลักการของฟังก์ชันดีเพน เดนซี (Function Dependency : FD) เสียก่อน โดยมีคาจากัดความ คือ B ขึ้นอยู่กับ A ถ้าทราบค่าของ A ก็จะทาให้รู้ค่าของ B ได้ ฟังก์ชันนัลดีเพนเดนซี สามารถแสดงด้วยการใช้เครื่องหมายลูกศร ( ->) ตัวอย่างเช่น A->B แสดง B เป็นฟังก์ชันนัลดีเพนเดนต์ กับ A กล่าวคือ ถ้ารู้ค่า A ก็จะทาให้ทราบค่าของ B ด้วย ทุกค่าของ A ที่ มีค่าเท่ากัน จะได้ค่า เท่ากันเสมอ
  • 10. 2.2) พาเชียลดีเพนเดนซี (Partial Dependency) พาร์เชียลดีเพนเดนซี หมายถึง การที่มีแอตทริบิวต์บางแอตทริบิวต์ ที่ ขึ้นอยู่กับเพียงบางส่วนของคีย์หลักเท่านั้น ตัวอย่างเช่น จากตารางในภาพ ข้างล่าง แอตทริบิวต์ชื่อพนักงานจะขึ้นอยู่กับคีย์รหัสพนักงาน ในขณะที่ แอตทริบิวต์ชื่อแผนก จะขึ้นอยู่กับคีย์รหัสแผนก จะเห็นว่า ข้อมูลที่อยู่ใน รีเลชันเดียวกัน แต่ไม่ได้ขึ้นอยู่กับคีย์ใดคีย์หนึ่งทั้งหมด แต่จะขึ้นอยู่กับคีย์ ใดคีย์หนึ่งเพียงบางส่วนเท่านั้น
  • 11. 2.3) นิยามของนอร์มัลฟอร์มที่ 2 รีเลชันจะอยู่ในรูปของนอร์มัลฟอร์มที่ 2 ก็ต่อเมื่อมีคุณสมบัติตามเงื่อนไข ดังต่อไปนี้ 1. รีเลชันนั้นเป็นนอร์มัลฟอร์มที่ 1 อยู่แล้ว 2. รีเลชันนั้นไม่มีพาร์เชียลดีเพนเดนซี ตัวอย่างรีเลชันพนักงานในแผนกในภาพข้างบน เมื่อทาการแตกออกเป็น รีเลชันย่อยที่ไม่มีพาร์เชียลดีเพนเดนซีแล้ว จะได้เป็นรีเลชันสองรีเลชัน คือ รีเลชันพนักงานและ รีเลชันแผนก ซึ่งอยู่ในรูปของนอร์มัลฟอร์มที่ 2 แล้ว ดังภาพต่อไปนี้
  • 13. 3) การแปลงให้อยู่ในรูปนอร์มัลฟอร์มที่3 (Third Normal Form : 3NF) ในหนึ่งรีเลชันจะประกอบคีย์แอตทริบิวต์และนอนคีย์แอตทริบิวต์ คีย์ แอตทริบิวต์จะต้องเป็นตัวกาหนดความหมายหรือการมีอยู่ของแอตทริบิวต์ อื่น ๆ ที่อยู่ในรีเลชันเสมอ 3.1) ทรานซิทีฟดีเพนเดนซี (Transitive Dependency) ทรานซิทีฟดีเพนเดนซี หมายถึง การที่มีฟังก์ชันนัลดีเพนเดนซี ระหว่าง แอตทริบิวต์ที่ไม่ได้เป็นส่วนของคีย์ใด ๆ แต่มีแอตทริบิวต์อื่น ๆ มาขึ้นกับ แอตทริบิวต์นั้นตัวอย่างเช่น จากตารางในภาพข้างล่าง แอตทริบิวต์ชื่อ พนักงาน และรหัสตาแหน่งงานจะขึ้นอยู่กับคีย์รหัสพนักงาน ในขณะที่ แอตทริบิวต์ค่าแรงต่อชั่วโมงของพนักงาน
  • 15. 3.2) นิยามของนอร์มัลฟอร์มที่ 3 รีเลชันจะอยู่ในรูปของนอร์มัลฟอร์มที่ 3 ก็ต่อเมื่อมีคุณสมบัติตามเงื่อนไข ดังต่อไปนี้ 1. รีเลชันนั้นเป็นนอร์มัลฟอร์มที่ 2 อยู่แล้ว 2. รีเลชันนั้นไม่มีทรานซิทีฟดีเพนเดนซี ตัวอย่างรีเลชัน การทางานของพนักงาน ในภาพข้างบน เมื่อทาการแตก ออกเป็นรีเลชันย่อยที่ไม่มีทรานซิทีฟดีเพนเดนซีแล้ว จะได้เป็นรีเลชันสอง รีเลชัน คือรีเลชันพนักงาน และรีเลชันตาแหน่งงาน ซึ่งอยู่ในรูปของนอร์ มัลฟอร์มที่ 3 แล้ว ดังภาพต่อไปนี้
  • 17. 4) การแปลงให้อยู่ในรูปบอยซ์คอดด์นอร์มัลฟอร์ม (Boyce-Codd Normal Form : BCNF) ในหนึ่งรีเลชันอาจจะประกอบด้วยหลายแคนดิเดตคีย์ (Candidate Key) ทุกแอตทริบิวต์ในรีเลชันจะต้องขึ้นอยู่กับแคนดิเดตคีย์เสมอ เรา สามารถกาหนดนิยามของรีเลชันที่อยู่ในรูปของบอยซ์คอดด์นอร์มัลฟอร์ม ก็ต่อเมื่อรีเลชันมีคุณสมบัติตามเงื่อนไขดังต่อไปนี้ 1. รีเลชันนั้นเป็นนอร์มัลฟอร์มที่ 3 อยู่แล้ว 2. ทุกแอตทริบิวต์ในรีเลชันจะต้องขึ้นกับแคนดิเดตคีย์
  • 18. รีเลชันจะอยู่ในรูปบอยซ์คอดด์นอร์มัลฟอร์ม ถ้าทุกแอตทริบิวต์ขึ้นอยู่ กับแคนดิเดตคีย์ (Candidate Key) ดังนั้นถ้าใน 1 รีเลชันมีแคนดิเดต คีย์เพียงตัวเดียวแล้ว นอร์มัลฟอร์มที่ 3 และบอยซ์คอดด์นอร์มัลฟอร์ม จะ เหมือนกัน โอกาสที่คุณสมบัติของบอยซ์คอดด์นอร์มัลฟอร์มจะถูกละเมิด นั้น เกิดขึ้นได้น้อย และจะเกิดได้กับรีเลชันที่มีแคนดิเดตคีย์มากกว่าหนึ่ง เท่านั้น ดังตัวอย่างในภาพข้างล่าง
  • 19. เราสามารถทาการแตกตารางออกมาให้อยู่ในรูปของบอยซ์คอดด์นอร์มัล ฟอร์มได้ โดยการแยกแอตทริบิวต์รหัสวิชาเรียนและรหัสผู้สอนซึ่งขึ้นอยู่ กับแอตทริบิวต์รหัสวิชาเรียน ออกมาเป็นอีกหนึ่งรีเลชัน และแยกแอตทริ บิวต์รหัสนักศึกษา รหัสผู้สอน และผลการเรียนออกมาเป็นอีกหนึ่งรีเลชัน ดังแสดงในภาพข้างล่าง
  • 20. 5) การแปลงให้อยู่ในรูปนอร์มัลฟอร์มที่4 (Fourth Normal Form : 4NF) ในขณะที่การทาให้อยู่ในรูปของนอร์มัลฟอร์มต่าง ๆ ที่ผ่านมา จะ เกี่ยวข้องกับการขึ้นตรงต่อกันของข้อมูลในแต่ละแอตทริบิวต์หรือ ฟังก์ชันนัลดีเพนเดนซี แต่การทาให้อยู่ในรูปของนอร์มัลฟอร์มที่ 4 จะ เกี่ยวข้องกับรูปแบบของการขึ้นตรงต่อกันของข้อมูลในระดับที่ซับซ้อนกว่า
  • 21. 5.1) มัลติแวลูดีเพนเดนซี (Multivalued Dependency) ถ้าแต่ละแอตทริบิวต์ในหนึ่งรีเลชัน แบ่งออกเป็นกลุ่มของข้อมูลอิสระ เช่น แอตทริบิวต์ X, Y และ Z แบ่งออกเป็นกลุ่มข้อมูลของ X, Y และ Z ที่ เป็นอิสระต่อกัน มัลติแวลลูดีเพนเดนซี X –>> Y หมายถึงว่า ค่า X หนึ่งค่าสามารถที่จะบอกค่า Y ได้หลาย ๆ (X Multi- Determinse Y) ไม่ว่า Z จะมีค่าเป็นอะไรก็ตาม
  • 22. 5.2) นิยามของนอร์มัลฟอร์มที่ 4 รีเลชันจะอยู่ในรูปของนอร์มัลฟอร์มที่ 4 ก็ต่อเมื่อมีคุณสมบัติตามเงื่อนไข ดังต่อไปนี้ 1. รีเลชันนั้นเป็นบอยซ์คอดด์นอร์มัลฟอร์มอยู่แล้ว 2. รีเลชันนั้นไม่มีทริเวียลมัลติแวลูดีเพนเดนซี จากรีเลชันในภาพข้างบน เราสามารถขจัดทริเวียลมัลติแวลูดีเพนเดนซี โดยการแตกรีเลชันดังกล่าวออกเป็นรีเลชันย่อย 2 รีเลชัน ซึ่งจะทาให้ทั้ง สองรีเลชันอยู่ในรูปของนอร์มัลฟอร์มที่ 4 ดังภาพต่อไปนี้
  • 24. 6) การแปลงให้อยู่ในรูปนอร์มัลฟอร์มที่5 (Fifth Normal Form : 5NF) การแปลงให้อยู่ในรูปของนอร์มัลฟอร์มที่ 5 จะพิจารณาถึงการขึ้นต่อกัน ของข้อมูลในการแยกข้อมูลในรีเลชันออกเป็นรีเลชันย่อย และประกอบรีเล ชันย่อยกลับเป็นรีเลชันใหญ่เช่นเดิม ซึ่งเป็นการตรวจสอบว่าเมื่อรวมกัน ใหม่ด้วยวิธีการจอยน์แล้ว จะได้รีเลชันกลับมาเหมือนเดิมทุกประการ หรือไม่
  • 25. 6.1) จอยน์โอเปอเรชัน (Join Operation) ถ้ามี R1(X,Y) และ R2(Y,Z) R1 JOIN R2 = R3(X, Y, Z) โดยที่ t(x, y, z) อยู่ใน R3 ก็ต่อเมื่อมี t1(x,y) อยู่ใน R1 และ t2(y,z) อยู่ใน R2 6.2) จอยน์ดีเพนเดนซี (Join Dependency) ในการแยกรีเลชันออกเป็นส่วนย่อย (Decomposition) R1, R2, R3, Rn มีคุณสมบัติจอยน์ดีเพนเดนซี ก็ ต่อเมื่อ R1 JOIN R2 JOIN R3 … JOIN Rn = R นั่นคือ เมื่อเอารีเลชันย่อยมารวมกันก็ต้องได้รีเลชันเดิม ที่ไม่มีข้อมูลสูญหาย และ ไม่มีทัปเพิลที่เกินมา ที่เรียกว่า สพิวเรียสทัปเพิล (Spurious Tuple)
  • 26. 6.3) นิยามของ 5NF รีเลชันจะเป็น 5NF ถ้า 1. รีเลชันนั้นเป็นนอร์มัลฟอร์มที่ 4 อยู่แล้ว 2. การแบ่งแยกรีเลชันมีคุณสมบัติจอยน์ดีเพนเดนซี
  • 27. รายชื่อสมาชิกกลุ่ม 1.นางสาวธิดารัตน์ ขันทอง เลขที่ 15 2.นางสาวกชกร น้อยเกตุ เลขที่ 23 3.นางสาวปารวี โสภณพนิตกุล เลขที่ 25 4.นางสาวอมรรัตน์ พยาบาล เลขที่ 26 5.นางสาวณัฐกานต์ พรหมสุวรรณ์ เลขที่ 28 6.นางสาวณัฐวดี สังข์ศิลป์ชัย เลขที่ 29 ชั้นมัธยมศึกษาปีที่ 6/4