You are on page 1of 45

!

"

แผนการสอนประจําบทเรียน
รายชื่ออาจารยผูจัดทํา ชุติมณฑน บุญมาก
รายละเอียดของเนือ้ หา
ตอนที่ 4.1 แนวคิดเกี่ยวกับรูปแบบที่เปนบรรทัดฐาน
เรือ่ งที่ 4.1.1 ความสัมพันธระหวางแอททริบิวตในแตละรีเลชัน
เรือ่ งที่ 4.1.2 วัตถุประสงคในการทําใหเปนรูปแบบที่เปนบรรทัดฐาน
ตอนที่ 4.2 การทําใหเปนรูปแบบที่เปนบรรทัดฐาน
เรือ่ งที่ 4.2.1 รูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 1
เรือ่ งที่ 4.2.2 รูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 2
เรือ่ งที่ 4.2.3 รูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 3
เรือ่ งที่ 4.2.4 รูปแบบทีเ่ ปนบรรทัดฐานของบอยสและคอดด
เรือ่ งที่ 4.2.5 รูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 4
เรือ่ งที่ 4.2.6 รูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 5
เรือ่ งที่ 4.2.7 ขอควรคํานึงในการทําใหเปนรูปแบบที่เปนบรรทัดฐาน
แนวคิด
1. การออกแบบเคารางของขอมูลเปนการกําหนดรีเลชันตาง ๆ รวมถึงแอททริบิวตในแตละรีเลชัน
เพื่อใหไดขอมูลตามที่ผูใชตองการ โดยการกําหนดหรือออกแบบเพือ่ ใหไดเคารางขอมูลทีด่ คี วร
จะเปนการออกแบบที่สามารถลดปญหาที่จะเกิดขึ้นกับฐานขอมูลใหไดมากที่สุด ซึง่ ผูอ อกแบบ
ควรจะตองทราบความสัมพันธระหวางแอททริบิวตในแตละรีเลชัน และวัตถุประสงคในการทํา
ใหเปนรูปแบบทีเ่ ปนบรรทัดฐาน
2. การทําใหเปนรูปแบบทีเ่ ปนบรรทัดฐาน เปนกระบวนการนําเคารางของรีเลชันมาทําใหอยูใน
รูปแบบทีเ่ ปนบรรทัดฐาน เพือ่ ใหแนใจวาการออกแบบเคารางของรีเลชันเปนการออกแบบที่
เหมาะสม โดยการทําใหเปนรูปแบบที่เปนบรรทัดฐานจะทําใหลดความซ้ําซอนของขอมูลใน
รีเลชันซึง่ เปนการลดเนือ้ ทีท่ ใ่ี ชในการจัดเก็บขอมูล และลดความผิดพลาดในการปรับปรุงขอมูล
ไมครบถวน
วัตถุประสงค
หลังจากศึกษาบทเรียนที่ 4 แลว นักศึกษาสามารถ
1. บอกแนวคิดเกีย่ วกับรูปแบบทีเ่ ปนบรรทัดฐานได
"#
2. จัดทํารูปแบบทีเ่ ปนบรรทัดฐานได
กิจกรรมการเรียนการสอน
กิจกรรมทีน่ กั ศึกษาตองทําสําหรับการเรียนการสอน ไดแก
1. ศึกษาเอกสารการสอนตอนที่ 4.1 และตอนที่ 4.2
2. ทํากิจกรรมในแบบฝกปฏิบัติบทเรียนที่ 4
3. ทําแบบประเมินผลของบทเรียนที่ 4
สื่อการสอน
เอกสารการสอน
1. เอกสารประกอบการสอน
ประเมินผล
1. ประเมินผลจากกิจกรรมที่ทํา
2. ประเมินผลจากคําถามทายบทเรียน
"$

ตอนที่ 4.1 แนวคิดเกี่ยวกับรูปแบบที่เปนบรรทัดฐาน


หัวเรือ่ ง
เรือ่ งที่ 4.1.1 ความสัมพันธระหวางแอททริบิวตในแตละรีเลชัน
เรือ่ งที่ 4.1.2 วัตถุประสงคในการทําใหเปนรูปแบบที่เปนบรรทัดฐาน
แนวคิด
1. แอททริบิวตในแตละรีเลชันอาจมีความสัมพันธกันได ตัวอยางเชน เมื่อทราบคาของแอททริ
บิวตหนึ่งสามารถทราบคาของแอททริบิวตอื่นของทูเพิลในรีเลชันได ซึ่งความสัมพันธระหวาง
แอททริบิวตในแตละรีเลชันอาจจําแนกได 3 ลักษณะ คือ ความสัมพันธระหวางแอททริบิวต
แบบฟงกชัน ความสัมพันธระหวางแอททริบิวตแบบหลายคา และความสัมพันธระหวางแอททริ
บิวตแบบ Join
2. วัตถุประสงคหลักในการทําใหเปนรูปแบบทีเ่ ปนบรรทัดฐาน คือ เพือ่ ลดความซ้าํ ซอนของขอมูล
ที่จัดเก็บในแตละรีเลชัน ซึง่ เปนผลทําใหลดเนือ้ ทีใ่ นการจัดเก็บขอมูล ลดปญหาขอมูลไมถกู
ตอง รวมทั้งลดปญหาที่เกิดจากการเพิ่ม ปรับปรุง และลบขอมูล
วัตถุประสงค
หลังจากที่ศึกษาตอนที่ 4.1 แลว นักศึกษาสามารถ
1. ผูเรียนสามารถบอกความสัมพันธระหวางแอททริบิวตในแตละรีเลชันได
2. ผูเ รียนสามารถบอกวัตถุประสงคในการทําใหเปนรูปแบบทีเ่ ปนบรรทัดฐานได

เรื่องที่ 4.1.1 ความสัมพันธระหวางแอททริบิวตในแตละรีเลชัน


แอททริบิวต (attribute) ในแตละรีเลชัน (relation) อาจมีความสัมพันธกันในลักษณะที่ เมื่อทราบคา
ของแอททริบิวตหนึ่งจะทําใหสามารถทราบคาของแอททริบิวตอื่น ๆ ในทูเพิล (tuple) เดียวกันของรีเลชันได
ซึ่งความสัมพันธระหวางแอททริบิวตในแตละรีเลชันอาจจําแนกได 3 ลักษณะ คือ ความสัมพันธระหวาง แอ
ททริบิวตแบบฟงกชัน (functional dependency) ความสัมพันธระหวางแอททริบิวตแบบหลายคา
(multivalued dependency) และความสัมพันธระหวางแอททริบิวตแบบ Join (join dependency)

1. ความสัมพันธระหวางแอททริบิวตแบบฟงกชัน
ความสัมพันธระหวางแอททริบิวตแบบฟงกชัน หรือ FD หมายถึง การที่คาของแอททริบิวตหนึ่งหรือ
มากกวาหนึ่งแอททริบิวตขึ้นไปที่ประกอบกันสามารถระบุคาของแอททริบิวตอื่น ๆ ในทูเพิลเดียวกันของ
รีเลชันนัน้ ได โดยแอททริบิวตหรือกลุมของแอททริบิวตที่เปนตัวระบุคาของแอททริบิวตอื่น ๆ เรียกวา
Determinant และแอททริบิวตอื่น ๆ ที่ถูกระบุคา เรียกวา Dependent
"%
ความสัมพันธระหวางแอททริบิวตแบบฟงกชันสามารถใชสัญลักษณ ในการสื่อความหมาย
ไดดงั นี้
A B
ในแผนภาพความสัมพันธระหวางแอททริบิวตแบบฟงกชัน (functional dependency diagram)
หรือ FD ไดอะแกรมใชสญ
ั ลักษณดงั นี้

หมายความวา หากทราบคาของแอททริบิวต A จะสามารถทราบคาของแอททริบิวต B ไดโดย A


ซึ่งเรียกวา Determinant อาจเปนแอททริบิวตหนึ่งหรือกลุมของแอททริบิวตที่นํามาประกอบกันก็ได และ B
ซึ่งเรียกวา Dependent จะเปนแอททริบิวตอื่น ๆ ในทูเพิลเดียวกันของรีเลชันนัน้
เพื่อใหเขาใจความสัมพันธระหวางแอททริบิวตแบบฟงกชันดียิ่งขึ้น ในที่นี้ขอนําตัวอยางมาประกอบ
ดังนี้
• กรณี Determinant และ Dependent มีเพียงหนึ่งแอททริบิวต ตัวอยางเชน รีเลชันอาจารย ที่
ปรึกษาประกอบดวย แอททริบิวตรหัสนักศึกษา และชื่ออาจารยที่ปรึกษา โดยมีรายละเอียดดังนี้

รหัสนักศึกษา ชือ่ อาจารยทป่ี รึกษา


41010703 สัมพันธ เย็นสําราญ
41010943 ศิริภัทรา เหมือนมาลัย
41012147 เมธี ปยะคุณ
41012451 ศิริชัย ศรีพรหม
41013327 สัมพันธ เย็นสําราญ
41013780 ศิริภัทรา เหมือนมาลัย
ภาพที่ 4.1 รีเลชันอาจารยทป่ี รึกษา
รีเลชันอาจารยที่ปรึกษามีความสัมพันธระหวางแอททริบิวตแบบฟงกชันดังนี้
รหัสนักศึกษา ชื่ออาจารยที่ปรึกษา
เขียน FD ไดอะแกรมไดดงั นี้

รหัสนักศึกษา ชือ่ อาจารยทป่ี รึกษา


หมายความวา หากระบุคาของรหัสนักศึกษาคนใดก็จะสามารถทราบชื่ออาจารยที่ปรึกษาของ
นักศึกษาคนนัน้ ได เชน ถาระบุคาของ Determinant หรือ รหัสนักศึกษา คือ 41012451 จะทําใหทราบคาของ
Dependent หรือ ชื่ออาจารยที่ปรึกษา คือ ศิริชัย ศรีพรหม ได
ในทางตรงกันขาม หากทราบคาของ Dependent อาจไมสามารถระบุคาของ Determinant ก็ได เชน
ถาระบุคาของชื่ออาจารยที่ปรึกษา คือ ศิริภัทรา เหมือนมาลัย จะพบวาคาของรหัสนักศึกษามี 2 คา คือ
"&
41010943 และ 41013780 เนือ่ งจากนักศึกษาทัง้ สองคนมีอาจารยทป่ี รึกษาคนเดียวกัน ดังนัน้ จึงกลาวไดวา
คาของ Determinant สามารถระบุคา ของ Dependent ได แตคาของ Dependent อาจไมสามารถระบุคาของ
Determinant ที่ชัดเจนได
หากตองการใหแอททริบิวตชื่ออาจารยที่ปรึกษาเปน Determinant เพื่อใหสามารถระบุคาของ
Dependent คือ รหัสนักศึกษา ได จะตองกําหนดใหชื่ออาจารยที่ปรึกษาของนักศึกษาแตละคนไมซ้ํากัน
นัน่ คือ หากระบุคาของรหัสนักศึกษาคนใดก็จะสามารถทราบชื่ออาจารยที่ปรึกษาของนักศึกษาคนนั้นได และ
ในทางตรงกันขาม หากทราบคาของชื่ออาจารยที่ปรึกษาคนใดก็จะสามารถระบุคาของรหัสนักศึกษาใน
การปรึกษาของอาจารยคนนัน้ ได ซึ่งรูปแบบของความสัมพันธจะเปนดังนี้
รีเลชันอาจารยที่ปรึกษามีความสัมพันธระหวางแอททริบิวตแบบฟงกชันดังนี้
รหัสนักศึกษา ชื่ออาจารยที่ปรึกษา
หรืออาจเขียนไดดังนี้
รหัสนักศึกษา ชื่ออาจารยที่ปรึกษา
ชื่ออาจารยที่ปรึกษา รหัสนักศึกษา
เขียน FD ไดอะแกรมไดดงั นี้

รหัสนักศึกษา ชือ่ อาจารยทป่ี รึกษา


• กรณี Determinant มีเพียงหนึ่งแอททริบิวตและ Dependent มีมากกวาหนึ่งแอททริบิวต ตัว
อยางเชน รีเลชันนักศึกษาประกอบดวย แอททริบิวตรหัสนักศึกษา ชื่อ นามสกุล และวัน/เดือน/
ปเกิด โดยมีรายละเอียดดังนี้

รหัสนักศึกษา ชือ่ นามสกุล วัน/เดือน/ปเกิด


41010703 สมชาย พลจันทร 18 มิ.ย. 2527
41010943 สุทิศา พินิจไพฑูรย 23 ก.ย. 2526
41012147 ณัฐพร ประคองเก็บ 17 ธ.ค. 2528
41012451 นพดล ทับทิมทอง 3 ก.พ. 2527
41013327 มัทนา พินิจไพฑูรย 23 ก.ย. 2526
41013780 สมชาย พลจันทร 17 ธ.ค. 2528
ภาพที่ 4.2 รีเลชันนักศึกษา
รีเลชันนักศึกษามีความสัมพันธระหวางแอททริบิวตแบบฟงกชันดังนี้
รหัสนักศึกษา ชื่อ
รหัสนักศึกษา นามสกุล
รหัสนักศึกษา วัน/เดือน/ปเกิด
หรือ รหัสนักศึกษา ชื่อ, นามสกุล, วัน/เดือน/ปเกิด
"'
เขียน FD ไดอะแกรมไดดงั นี้

รหัสนักศึกษา ชือ่ นามสกุล วัน/เดือน/ปเกิด


หมายความวา หากระบุรหัสนักศึกษาคนใดก็จะสามารถทราบชื่อ นามสกุล และวัน/เดือน/ปเกิด ของ
นักศึกษาคนนัน้ ได เชน ถาระบุคาของ Determinant หรือ รหัสประจําตัว คือ 41012147 จะทําใหทราบคาของ
Dependent หรือแอททริบิวตอื่น ๆ ไดดงั นี้

รหัสนักศึกษา ชือ่ นามสกุล วัน/เดือน/ปเกิด


41012147 ณัฐพร ประคองเก็บ 17 ธ.ค. 2528
• กรณี Determinant มีมากกวาหนึ่งแอททริบิวตและ Dependent มีเพียงหนึ่งแอททริบิวต ตัว
อยางเชน รีเลชันอาจารยผสู อนประกอบดวย แอททริบิวตรหัสชุดวิชา หมูเรียน และชือ่ อาจารย
ผูส อน โดยมีรายละเอียดดังนี้

รหัสชุดวิชา หมูเ รียน ชือ่ อาจารยผสู อน


729101 700 ศิริชัย ศรีพรหม
729111 711 จันทนา พรหมศิริ
729111 712 สัมพันธ เย็นสําราญ
999211 711 ศิริภัทรา เหมือนมาลัย
999211 712 ศิริชัย ศรีพรหม
999211 713 สุพิมพ ศรีพันธวรสกุล
ภาพที่ 4.3 รีเลชันอาจารยผสู อน
รีเลชันอาจารยผูสอนมีความสัมพันธระหวางแอททริบิวตแบบฟงกชันดังนี้
รหัสชุดวิชา, หมูเรียน ชือ่ อาจารยผสู อน
เขียน FD ไดอะแกรมไดดงั นี้

รหัสชุดวิชา หมูเ รียน ชือ่ อาจารยผสู อน


หมายความวา หากระบุคาของรหัสชุดวิชาและหมูเรียนใดก็จะสามารถทราบชื่ออาจารยผูสอนในรหัส
ชุดวิชาและหมูเรียนนั้น ๆ ได เชน ถาระบุคาของ Determinant หรือ รหัสชุดวิชา คือ 999211 และหมูเรียน
คือ 712 จะทําใหทราบคาของ Dependent หรือ ชือ่ อาจารยผสู อน คือ ศิริชัย ศรีพรหม
เมื่อกลาวถึงความสัมพันธระหวางแอททริบิวตมักจะเกี่ยวของกับคีย (key) เนือ่ งจากคุณสมบัตขิ อง
คียหลัก (primary key) คือ แอททริบวิ ตทม่ี คี า เปนเอกลักษณหรือมีคา ไมซาํ้ ซอนกัน (unique) ทําใหสามารถ
ระบุคาของแอททริบิวตอื่นในทูเพิลหนึ่ง ๆ ได โดยแอททริบิวตที่มีคุณสมบัติเปนคียหลักอาจเปนกลุมของ
แอททริบวิ ตทน่ี าํ มาประกอบกันเพือ่ ใหมคี า เปนเอกลักษณกไ็ ด ซึ่งกลุมของแอททริบิวตดังกลาวเรียกวา
คียผ สม (composite key)
"(
จากภาพที่ 4.2 รีเลชันนักศึกษามีเพียงหนึ่งแอททริบิวตที่มีคุณสมบัติเปนคียหลัก คือ รหัสนักศึกษา
หากระบุรหัสนักศึกษาคนใดก็จะสามารถทราบชื่อ นามสกุล และวัน/เดือน/ปเกิด ของนักศึกษาคนนัน้ ได และ
จากภาพที่ 4.3 รีเลชันอาจารยผูสอนมีกลุมของแอททริบิวตที่ประกอบกันและมีคุณสมบัติเปนคียหลัก คือ รหัส
ชุดวิชาและหมูเรียน หากระบุคาของรหัสชุดวิชาและหมูเรียนใดก็จะสามารถทราบชื่ออาจารยผูสอนในรหัส
ชุดวิชาและหมูเรียนนั้น ๆ ได ดังนัน้ จึงกลาวไดวา คียหลักและคียผสมเปน Determinant ทีส่ ามารถระบุคา
ของแอททริบิวตอื่น ๆ ในทูเพิลเดียวกันของรีเลชันนัน้ ได
ทั้งนี้ ความสัมพันธระหวางแอททริบิวตแบบฟงกชันสามารถจําแนกได 3 แบบ คือ ความสัมพันธ
ระหวางแอททริบิวตแบบทั้งหมด (fully functional dependency) ความสัมพันธระหวางแอททริบิวตแบบ
บางสวน (partial dependency) และความสัมพันธระหวางแอททริบิวตแบบ Transitive (transitive
dependency)

1. ความสัมพันธระหวางแอททริบิวตแบบทั้งหมด
ความสัมพันธระหวางแอททริบิวตแบบทั้งหมด หมายถึง การที่แอททริบิวตซึ่งเปน
Determinant มีขนาดเล็กทีส่ ดุ และสามารถระบุคาของแอททริบิวตอื่น ๆ ทีเ่ ปน Dependent ไดอยางชัดเจน
ตัวอยางเชน
• กรณี Determinant มีเพียงหนึ่งแอททริบิวต ตัวอยางเชน รีเลชันนักศึกษาดังภาพที่ 4.2
ประกอบดวย แอททริบิวตรหัสนักศึกษา ชื่อ นามสกุล และวัน/เดือน/ปเกิด โดยมีแอททริบิวต
รหัสนักศึกษาเปนคียห ลัก
รีเลชันนักศึกษามีความสัมพันธระหวางแอททริบิวตแบบฟงกชันดังนี้
รหัสนักศึกษา ชื่อ, นามสกุล, วัน/เดือน/ปเกิด
หากทราบคาของ Determinant คือ รหัสนักศึกษาคนใดก็จะสามารถทราบคาของ
Dependent หรือแอททริบิวตอื่น ๆ ในทูเพิลเดียวกัน คือ ชื่อ นามสกุล และวัน/เดือน/ปเกิด ของนักศึกษาคน
นัน้ ได ดังนัน้ แอททริบิวตชื่อ นามสกุล และวัน/เดือน/ปเกิด จึงมีความสัมพันธระหวางแอททริบิวตแบบทั้ง
หมดกับ แอททริบิวตรหัสนักศึกษา
• กรณี Determinant มีมากกวาหนึ่งแอททริบิวต ตัวอยางเชน รีเลชันอาจารยผสู อนดังภาพที่
4.3 ประกอบดวย แอททริบิวตรหัสชุดวิชา หมูเรียน และชือ่ อาจารยผสู อน โดยมีแอททริบิวต
รหัสชุดวิชาและหมูเรียนประกอบกันเปนคียหลัก
รีเลชันอาจารยผูสอนมีความสัมพันธระหวางแอททริบิวตแบบฟงกชันดังนี้
รหัสชุดวิชา, หมูเรียน ชือ่ อาจารยผสู อน
หากทราบคาของ Determinant คือ รหัสชุดวิชาและหมูเรียนใดก็จะสามารถทราบคาของ
Dependent หรือแอททริบิวตอื่น ๆ ในทูเพิลเดียวกัน คือ ชื่ออาจารยผูสอนในรหัสชุดวิชาและหมูเรียนนั้นได
ดังนัน้ แอททริบิวตชื่ออาจารยผูสอนจึงมีความสัมพันธระหวางแอททริบิวตแบบทั้งหมดกับแอททริบิวตรหัส
ชุดวิชาและหมูเรียน
")
2. ความสัมพันธระหวางแอททริบิวตแบบบางสวน
ความสัมพันธระหวางแอททริบิวตแบบบางสวน จะเกิดขึน้ ไดเมือ่ รีเลชันหนึง่ ๆ มีคียหลัก
เปนคียผ สม และแอททริบิวตบางสวนของคียหลักสามารถระบุคาของแอททริบิวตอื่น ๆ ในทูเพิลเดียวกันที่ไม
ใชคียหลัก (non-key attribute) ของรีเลชันได นัน่ คือ หากทราบคาใดคาหนึ่งของบางแอททริบิวตที่เปน
Determinant ก็จะทําใหทราบคาของแอททริบิวตอื่น ๆ ทีเ่ ปน Dependent ได
ตัวอยางเชน รีเลชันการลงทะเบียนประกอบดวย แอททริบิวตรหัสนักศึกษา รหัสชุดวิชา
ชื่อชุดวิชา และหมูเรียน โดยมีแอททริบิวตรหัสนักศึกษาและรหัสชุดวิชาประกอบกันเปนคียหลัก

รหัสนักศึกษา รหัสชุดวิชา ชือ่ ชุดวิชา หมูเ รียน


41010703 729101 เศรษฐศาสตรเบื้องตน 700
41010703 729111 คณิตศาสตรและสถิติ 711
41010703 999211 คอมพิวเตอรเบื้องตน 713
41010943 729111 คณิตศาสตรและสถิติ 712
41010943 999211 คอมพิวเตอรเบื้องตน 711
41010943 729104 การจัดการการเงิน 700
ภาพที่ 4.4 รีเลชันการลงทะเบียน
รีเลชันการลงทะเบียนมีความสัมพันธระหวางแอททริบิวตแบบฟงกชันดังนี้
รหัสนักศึกษา, รหัสชุดวิชา ชื่อชุดวิชา, หมูเรียน
รหัสชุดวิชา ชื่อชุดวิชา
เขียน FD ไดอะแกรมไดดงั นี้

รหัสนักศึกษา รหัสชุดวิชา ชือ่ ชุดวิชา หมูเ รียน

รหัสนักศึกษา รหัสชุดวิชา ชือ่ ชุดวิชา หมูเ รียน


จากภาพ รีเลชันการลงทะเบียนมีแอททริบิวตรหัสนักศึกษาและรหัสชุดวิชาประกอบกัน
เปนคียห ลักหรือ Determinant ที่สามารถระบุคาของ Dependent หรือแอททริบิวตอื่น ๆ ในทูเพิลเดียวกัน คือ
ชื่อชุดวิชาและหมูเรียน ได ขณะเดียวกัน รีเลชันการลงทะเบียนมีความสัมพันธระหวางแอททริบิวตแบบบาง
สวนเกิดขึน้ เนื่องจากแอททริบิวตรหัสชุดวิชาซึ่งเปนสวนประกอบหนึ่งของคียหลักสามารถระบุคาของชื่อชุด
วิชาซึ่งเปนแอททริบิวตที่ไมใชคียหลักของรีเลชันได ซึ่งความสัมพันธในลักษณะดังกลาวนี้อาจกอใหเกิด
ปญหาเรือ่ งความซ้าํ ซอนในการปรับปรุงขอมูลได

3. ความสัมพันธระหวางแอททริบิวตแบบ Transitive
แมวาแอททริบิวตที่มีคุณสมบัติเปนคียหลักจะสามารถระบุคาของแอททริบิวตอื่น ๆ ในทู
เพิลเดียวกันของรีเลชันได แตทวาในบางรีเลชันที่มีการออกแบบไมเหมาะสม อาจมีแอททริบิวตอื่นที่ไมใชคีย
"*
หลักแตสามารถระบุคาของแอททริบิวตอื่น ๆ ในทูเพิลเดียวกันของรีเลชันไดเชนกัน ลักษณะของความ
สัมพันธดงั กลาวนีเ้ รียกวา ความสัมพันธระหวางแอททริบิวตแบบ Transitive

รหัสนักศึกษา ชือ่ นักศึกษา รหัสอาจารย ชือ่ อาจารยทป่ี รึกษา


41010703 สมชาย พลจันทร Q1059 สัมพันธ เย็นสําราญ
41010943 สุทิศา พินิจไพฑูรย Q1011 ศิริภัทรา เหมือนมาลัย
41012147 ณัฐพร ประคองเก็บ Q1061 เมธี ปยะคุณ
41012451 นพดล ทับทิมทอง Q1035 ศิริชัย ศรีพรหม
41013327 มัทนา พินิจไพฑูรย Q1059 สัมพันธ เย็นสําราญ
41013780 สมชาย พลจันทร Q1011 ศิริภัทรา เหมือนมาลัย
ภาพที่ 4.5 รีเลชันทีป่ รึกษา
ตัวอยางเชน รีเลชันทีป่ รึกษาประกอบดวย แอททริบิวตรหัสนักศึกษา ชื่อนักศึกษา รหัส
อาจารย และชื่ออาจารยที่ปรึกษา โดยมีแอททริบิวตรหัสนักศึกษาเปนคียหลัก
รีเลชันที่ปรึกษามีความสัมพันธระหวางแอททริบิวตแบบฟงกชัน ดังนี้
รหัสนักศึกษา ชื่อนักศึกษา, รหัสอาจารย, ชื่ออาจารยที่ปรึกษา
รหัสอาจารย ชื่ออาจารยที่ปรึกษา
เขียน FD ไดอะแกรมไดดงั นี้

รหัสนักศึกษา ชือ่ นักศึกษา รหัสอาจารย ชือ่ อาจารยทป่ี รึกษา

รหัสนักศึกษา ชือ่ นักศึกษา รหัสอาจารย ชือ่ อาจารยทป่ี รึกษา


จากภาพ รีเลชันที่ปรึกษามีแอททริบิวตรหัสนักศึกษาเปนคียหลักหรือ Determinant ที่
สามารถระบุคา ของ Dependent หรือแอททริบิวตอื่น ๆ ในทูเพิลเดียวกัน คือ ชื่อนักศึกษา รหัสอาจารย และ
ชื่ออาจารยที่ปรึกษาได ในขณะเดียวกัน รีเลชันที่ปรึกษามีความสัมพันธระหวางแอททริบิวตแบบ Transitive
เกิดขึน้ เนื่องจากรหัสอาจารยซึ่งเปนแอททริบิวตที่ไมใชคียหลักสามารถระบุคาของแอททริบิวตอื่นๆ ในทูเพิล
เดียวกัน คือ ชื่ออาจารยที่ปรึกษา ได

2. ความสัมพันธระหวางแอททริบิวตแบบหลายคา
ความสัมพันธระหวางแอททริบิวตแบบหลายคา หรือ MVD จะเกิดขึน้ ไดเมือ่ รีเลชันหนึง่ ๆ ประกอบ
ดวยสามแอททริบิวตขึ้นไป และแอททริบิวตที่เปน Determinant สามารถระบุคาของแอททริบิวตอื่นที่เปน
Dependent ไดมากกวาหนึ่งคา หรือ ขอมูลของแอททริบิวตที่เปน Dependent จะเปนกลุมของขอมูล
ความสัมพันธระหวางแอททริบิวตแบบหลายคาสามารถใชสัญลักษณ ในการสื่อความหมาย
ไดดงั นี้
"!
A B
A C
หมายความวา หากทราบคาของแอททริบิวต A หนึ่งคาจะสามารถทราบคาของแอททริบิวต B ได
หลายคา และเมื่อทราบคาของแอททริบิวต A หนึ่งคาจะสามารถทราบคาของแอททริบิวต C ไดหลายคา
เพื่อใหเขาใจความสัมพันธระหวางแอททริบิวตแบบหลายคาดียิ่งขึ้น ในที่นี้ขอนําตัวอยางมาประกอบ
ดังนี้
ตัวอยางเชน รีเลชันการสอน-การปรึกษาประกอบดวย แอททริบิวตรหัสอาจารย รหัสชุดวิชาที่สอน
และรหัสนักศึกษาในการปรึกษา โดยมีแอททริบิวตรหัสอาจารย รหัสชุดวิชาที่สอน และรหัสนักศึกษาใน
การปรึกษาประกอบกันเปนคียห ลัก

รหัสอาจารย รหัสชุดวิชาทีส่ อน รหัสนักศึกษาในการปรึกษา


Q1011 999211 41010943
Q1011 999211 41013780
Q1035 729101 41012451
Q1035 729104 41012451
Q1035 999211 41012451
Q1059 729111 41010703
Q1059 729111 41013327
Q1061 729103 41012147
ภาพที่ 4.6 รีเลชันการสอน-การปรึกษา
จากภาพ รีเลชันการสอน-การปรึกษามีแอททริบิวตรหัสอาจารย รหัสชุดวิชาที่สอน และรหัส
นักศึกษาในการปรึกษาประกอบกันเปนคียห ลัก โดยอาจารยแตละคนจะสอนอยางนอย 1 ชุดวิชา ซึ่งบางคน
อาจสอนชุดวิชาเดียวกันก็ได ขณะเดียวกันอาจารยบางคนอาจมีนกั ศึกษาในการปรึกษาไดมากกวา 1 คน โดย
รหัสนักศึกษาในการปรึกษากับรหัสชุดวิชาที่สอนไมมีความสัมพันธกันเลย
รีเลชันการสอน-การปรึกษามีความสัมพันธระหวางแอททริบิวตแบบหลายคา ดังนี้
รหัสอาจารย รหัสชุดวิชาที่สอน
รหัสอาจารย รหัสนักศึกษาในการปรึกษา
จากรีเลชัน หมายความวา หากระบุคาของรหัสอาจารยหนึ่งคาก็จะสามารถทราบรหัสชุดวิชาที่สอน
ไดหลายคา เชน ถาระบุคาของรหัสอาจารย คือ Q1035 จะทําใหทราบคาของรหัสชุดวิชาที่สอน คือ 729101,
729104 และ 999211 และในขณะเดียวกัน หากระบุคาของรหัสอาจารยหนึ่งคาก็จะสามารถทราบรหัสนัก
ศึกษาในการปรึกษาไดหลายคา เชน ถาระบุคาของรหัสอาจารย คือ Q1059 จะทําใหทราบคาของรหัสนัก
ศึกษาในการปรึกษา คือ 41010703 และ 41013327
การทีร่ เี ลชันเกิดความสัมพันธในลักษณะดังกลาวนีไ้ ด เนื่องจากมีการนําแอททริบิวตสามแอททริ
บิวต คือ รหัสอาจารย รหัสชุดวิชาที่สอน และ รหัสนักศึกษาในการปรึกษา มาไวในรีเลชันเดียวกัน โดยแอทท
ริบิวตรหัสอาจารยมีความสัมพันธกับแอททริบิวตรหัสชุดวิชาที่สอนและรหัสนักศึกษาในการปรึกษาเทานั้น
""
หากทวาแอททริบิวตรหัสชุดวิชาที่สอนและรหัสนักศึกษาในการปรึกษาไมมีความสัมพันธตอกันเลย เมื่อทั้ง
สามแอททริบิวตมาปรากฏอยูในรีเลชันเดียวกัน จึงทําใหเกิดคาของขอมูลที่ซ้ําซอนกันเปนปญหาตอการปรับ
ปรุง การเพิม่ หรือการลบขอมูลได

3. ความสัมพันธระหวางแอททริบิวตแบบ Join
ความสัมพันธระหวางแอททริบิวตแบบ Join เปนกฎเกณฑทส่ี าํ คัญประการหนึง่ ในการจําแนกรีเลชัน
โดยรีเลชันใด ๆ จะมีความสัมพันธระหวางแอททริบิวตแบบ Join เกิดขึน้ ไดกต็ อ เมือ่ รีเลชันนัน้ ๆ สามารถ
จําแนกออกเปนรีเลชันยอยได และเมือ่ นํารีเลชันยอยทีจ่ าํ แนกออกมาเหลานัน้ มารวมกันจะตองไดรเี ลชันกลับ
ไปเหมือนเดิมเสมอ
ตัวอยางเชน รีเลชันทีป่ รึกษาประกอบดวย แอททริบิวตรหัสนักศึกษา ชื่อนักศึกษา รหัสอาจารย และ
ชื่ออาจารยที่ปรึกษา โดยมีแอททริบิวตรหัสนักศึกษาเปนคียหลัก
$##

ภาพที่ 4.7 ความสัมพันธระหวางแอททริบิวตแบบ Join ของรีเลชันทีป่ รึกษา


รีเลชันทีป่ รึกษาสามารถจําแนกเปนรีเลชันยอยได 3 รีเลชัน คือ รีเลชันนักศึกษา รีเลชันอาจารย
ที่ปรึกษา และรีเลชันนักศึกษา-อาจารย
• รีเลชันนักศึกษาประกอบดวย แอททริบิวตรหัสนักศึกษา และชื่อนักศึกษา โดยมีแอททริบิวต
รหัสนักศึกษาเปนคียห ลัก
• รีเลชันอาจารยทป่ี รึกษาประกอบดวย แอททริบิวตรหัสอาจารย และชื่ออาจารยที่ปรึกษา โดยมี
แอททริบิวตรหัสอาจารยเปนคียหลัก
$#$
• รีเลชันนักศึกษา-อาจารยประกอบดวย แอททริบิวตรหัสนักศึกษา และรหัสอาจารย โดยมี แอ
ททริบิวตรหัสนักศึกษาเปนคียหลัก
เมื่อนํารีเลชันยอยทั้งสามมารวมกัน จะไดรเี ลชันเหมือนรีเลชันทีป่ รึกษาเชนเดิม
ดังนัน้ จึงกลาวไดวา รีเลชันที่ปรึกษามีความสัมพันธระหวางแอททริบิวตแบบ Join เนือ่ งจาก รีเลชัน
ทีป่ รึกษาสามารถจําแนกออกเปนรีเลชันยอยได และเมื่อนํารีเลชันยอยที่จําแนกออกมาเหลานั้นมารวมกันก็จะ
ไดรเี ลชันทีป่ รึกษาเหมือนเดิม

เรื่องที่ 4.1.2 วัตถุประสงคในการทําใหเปนรูปแบบที่เปนบรรทัดฐาน


การทําใหเปนรูปแบบทีเ่ ปนบรรทัดฐาน (normalization process) เปนกระบวนการออกแบบฐาน
ขอมูลที่นําเคารางของรีเลชันมาตรวจสอบและแกไขปญหาเกี่ยวกับความซ้ําซอนกันของขอมูล (data
anomaly) ซึง่ ผลงานดังกลาวไดรบั การคิดคนและพัฒนาโดย อี.เอฟ.คอดด (E.F.Codd) ประมาณป ค.ศ. 1968
เพื่อใหเขาใจปญหาที่เกิดจากความซ้ําซอนของขอมูลไดชัดเจนยิ่งขึ้น ในที่นี้ขอนําตัวอยางมาประกอบดังนี้

รหัสนักศึกษา ชือ่ นักศึกษา รหัสอาจารย ชือ่ อาจารยทป่ี รึกษา รหัสชุดวิชา ชือ่ ชุดวิชาทีล่ งทะเบียน หมูเ รียน หนวยกิต
41010703 สมชาย พลจันทร Q1059 สัมพันธ เย็นสําราญ 729101 เศรษฐศาสตรเบื้องตน 700 2
41010703 สมชาย พลจันทร Q1059 สัมพันธ เย็นสําราญ 729111 คณิตศาสตรและสถิติ 711 3
41010703 สมชาย พลจันทร Q1059 สัมพันธ เย็นสําราญ 999211 คอมพิวเตอรเบื้องตน 713 3
41010943 สุทิศา พินิจไพฑูรย Q1011 ศิริภัทรา เหมือนมาลัย 729111 คณิตศาสตรและสถิติ 712 3
41010943 สุทิศา พินิจไพฑูรย Q1011 ศิริภัทรา เหมือนมาลัย 999211 คอมพิวเตอรเบื้องตน 711 3
41010943 สุทิศา พินิจไพฑูรย Q1011 ศิริภัทรา เหมือนมาลัย 729104 การจัดการการเงิน 700 2
41012147 ณัฐพร ประคองเก็บ Q1061 เมธี ปยะคุณ 729111 คณิตศาสตรและสถิติ 711 3
41012147 ณัฐพร ประคองเก็บ Q1061 เมธี ปยะคุณ 999211 คอมพิวเตอรเบื้องตน 713 3
41012451 นพดล ทับทิมทอง Q1035 ศิริชัย ศรีพรหม 729111 คณิตศาสตรและสถิติ 712 3
41012451 นพดล ทับทิมทอง Q1035 ศิริชัย ศรีพรหม 999211 คอมพิวเตอรเบื้องตน 711 3
41013327 มัทนา พินิจไพฑูรย Q1059 สัมพันธ เย็นสําราญ 729103 การจัดการการตลาด 700 2
41013780 สมชาย พลจันทร Q1011 ศิริภัทรา เหมือนมาลัย 999211 คอมพิวเตอรเบื้องตน 712 3
ภาพที่ 4.8 รีเลชันที่มีปญหาเรื่องความซ้ําซอนของขอมูล
จากขางตนจะพบวา รีเลชันมีขอ มูลซ้าํ ซอนกันจํานวนมาก หากตองการปรับปรุงขอมูล (update
anomaly) ใด ๆ จะตองทําซ้ําหลายแหง ทําใหสน้ิ เปลืองเวลาในการแกไขขอมูล รวมทั้งอาจมีการแกไขขอมูล
ไดไมครบถวนและถูกตองทุกรายการก็ได ตัวอยางเชน การแกไขชื่อของอาจารยที่ปรึกษาจาก ศิริภัทรา
เหมือนมาลัย เปน ณัชชา มาลัย
การเพิ่มเติมขอมูล (insert anomaly) ในรีเลชันขางตนไมสามารถทําไดในทันที เนื่องจากยังไมมี
การกําหนดคียห ลักของรีเลชัน และหากกําหนดใหรหัสนักศึกษาและรหัสชุดวิชาเปนคียห ลักของรีเลชันก็อาจ
ไมสามารถเพิ่มเติมขอมูลลงในรีเลชันได ตัวอยางเชน หากมีการเปดสอนขุดวิชาใหม 729105 การจัดการ
ทรัพยากรมนุษย จะไมสามารถเพิ่มเติมขอมูลเขามาในรีเลชันนี้ได เนื่องจากยังไมปรากฏขอมูลการลงทะเบียน
$#%
ของนักศึกษามากอน คาของรหัสนักศึกษาจึงเปนคาวาง ทําใหไมอาจเพิ่มเติมขอมูลลงในรีเลชันได เพราะ
แอททริบิวตที่เปนสวนของคียหลักจะมีคาวางไมได
นอกจากนี้ การลบขอมูล (delete anomaly) ออกจากรีเลชันอาจทําใหขอมูลที่ตองการใชใน
การทํางานหรืออางอิงสูญหายไป หากผูที่มีรหัสนักศึกษา 41013327 มัทนา พินิจไพฑูรย ลาออก ขอมูลที่
เกี่ยวของกับนักศึกษาจะถูกลบไปทั้งทูเพิล ดังนัน้ ขอมูลเกี่ยวกับชุดวิชา 729103 การจัดการการตลาด ซึ่งมี
เพียงแหงเดียวในฐานขอมูลก็จะสูญหายไปดวย
การที่ตองมีกระบวนการทําใหเปนรูปแบบที่เปนบรรทัดฐาน เนือ่ งจากขัน้ ตอนการออกแบบฐาน
ขอมูลในระดับแนวคิดดวยอี-อารโมเดล (E-R model) ทําการวิเคราะหความสัมพันธของขอมูลในระดับ เอ็น
ทิตีเทานั้น หากทวายังขาดการวิเคราะหความสัมพันธระหวางแอททริบิวตในแตละรีเลชันจึงจําเปนตองมี
กระบวนการทําใหเปนรูปแบบทีเ่ ปนบรรทัดฐานอีกขัน้ หนึง่ เพื่อทําการวิเคราะหความสัมพันธของขอมูลใน
ระดับแอททริบิวตของแตละรีเลชัน เพือ่ ใหความซ้าํ ซอนของขอมูลในแตละรีเลชันลดลง
การทําใหเปนรูปแบบทีเ่ ปนบรรทัดฐาน เปนกระบวนการทีเ่ กิดขึน้ ในระหวางการออกแบบฐานขอมูล
เชิงสัมพันธ โดยการใชเทคนิคที่เรียกวา Decomposition ทําการวิเคราะหความสัมพันธระหวางแอททริบิวตใน
แตละรีเลชัน ดวยการจําแนกรีเลชันทีไ่ ดจากอี-อารโมเดล (entity relationship model : E-R model) ซึง่ เปน
เครือ่ งมือในการออกแบบฐานขอมูลในระดับแนวคิด ใหเปนรีเลชันยอยในโครงสรางแบบตาง ๆ ที่เรียกวา
รูปแบบทีเ่ ปนบรรทัดฐาน (normal form) โดยมีขั้นตอนในการจัดทําที่ชัดเจน ทั้งนี้ เพื่อขจัดความซ้ําซอนของ
ขอมูลในแตละรีเลชันใหเหลือนอยที่สุดหรือแทบไมมีความซ้ําซอนหลงเหลืออยูเลย
การทําใหเปนรูปแบบทีเ่ ปนบรรทัดฐานเปนการดําเนินงานตามลําดับอยางเปนขัน้ ตอน เพื่อใหรีเลชัน
มีคุณสมบัติอยูในรูปแบบที่เปนบรรทัดฐานขั้นตาง ๆ ดังนีค้ อื
1. รูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 1 (First Normal Form : 1NF)
2. รูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 2 (Second Normal Form : 2NF)
3. รูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 3 (Third Normal Form : 3NF)
4. รูปแบบทีเ่ ปนบรรทัดฐานของบอยสและคอดด (Boyce/Codd Normal Form : BCNF)
5. รูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 4 (Fourth Normal Form : 4NF)
6. รูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 5 (Fifth Normal Form : 5NF)
ทั้งนี้ รีเลชันจะอยูใ นรูปแบบทีเ่ ปนบรรทัดฐานขัน้ ใดก็ขน้ึ อยูก บั คุณสมบัตขิ องรีเลชันในขณะนัน้
ตัวอยางเชน หากรีเลชันที่ปรึกษามีคุณสมบัติตรงตามรูปแบบที่เปนบรรทัดฐานขั้นที่ 3 ก็ถือวา รีเลชันนัน้ อยู
ในรูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 3 โดยรีเลชันจะยิ่งมีคุณภาพมากขึ้น หากอยูใ นรูปแบบทีเ่ ปนบรรทัดฐาน
สูงขึ้น เนือ่ งจากรีเลชันนัน้ จะมีขอ มูลซ้าํ ซอนลดนอยลงหรือแทบไมมคี วามซ้าํ ซอนปรากฏอยูเ ลย
แมวาการทําใหเปนรูปแบบที่เปนบรรทัดฐานจะมีขั้นตอนที่แนนอนตามลําดับ แตก็ไมจําเปนตอง
เริ่มตนจากรูปแบบที่เปนบรรทัดฐานขั้นที่ 1 เสมอไป ทั้งนี้ ขึ้นอยูกับคุณสมบัติของรีเลชันวาอยูในรูปแบบที่
เปนบรรทัดฐานขัน้ ใด ก็ใหเริม่ ดําเนินการทําใหเปนรูปแบบทีเ่ ปนบรรทัดฐานจากขัน้ นัน้ เปนตนไป โดยจะไป
$#&
ยุติที่รูปแบบที่เปนบรรทัดฐานขั้นที่ 5 เสมอ เนือ่ งจากรีเลชันทีอ่ ยูใ นรูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 5 จะ
ไมปรากฏความซ้ําซอนของขอมูลหลงเหลืออยูแลว
หากขาดกระบวนการทําใหเปนรูปแบบที่เปนบรรทัดฐานผูออกแบบฐานขอมูลอาจตองใช ประสบ
การณในการวิเคราะหความสัมพันธระหวางแอททริบิวตในแตละรีเลชัน เพื่อใหความซ้ําซอนของขอมูลในแต
ละรีเลชันลดลง โดยขาดหลักการที่เปนระบบและขั้นตอนที่ชัดเจน ซึง่ การลองผิดลองถูกในการออกแบบ ดัง
กลาวอาจทําใหเกิดผลกระทบตอการทํางานภายในองคกรได รวมทั้งยังขาดมาตรฐานในการประเมิน การออก
แบบอีกดวย
การทําใหเปนรูปแบบที่เปนบรรทัดฐานจึงมีประโยชนอยางยิ่งตอการออกแบบฐานขอมูล หากผูอ อก
แบบฐานขอมูลทําตามขั้นตอนที่กําหนดยอมจะไดฐานขอมูลที่ถูกตองและมีโครงสรางที่ดี ทําใหมีขอมูลซ้ําซอน
กันนอยมากหรือแทบไมมีเลย ซึ่งจะไมทําใหเกิดปญหาหากตองการปรับปรุง เพิ่มเติม หรือลบขอมูลในแตละรี
เลชัน
ดังนัน้ วัตถุประสงคหลักของการทําใหเปนรูปแบบทีเ่ ปนบรรทัดฐานก็คอื การลดความซ้าํ ซอนของขอ
มูลที่จัดเก็บในแตละรีเลชัน ซึง่ ผลจากการลดความซ้าํ ซอนของขอมูลดังกลาว ทําใหเกิดประโยชนในเรื่องตาง
ๆ ดังนีค้ อื
- ทําใหประหยัดเนื้อที่ในการจัดเก็บขอมูลได
- ทําใหลดปญหาขอมูลขาดความถูกตองสมบูรณ (data integrity) ทั้งนี้ เนือ่ งจากการจัดเก็บ ขอ
มูลทีไ่ มซาํ้ ซอนกันในแตละรีเลชัน ทําใหการแกไขขอมูลสามารถทําไดโดยสะดวก หากตองการแก
ไขขอมูลก็จะดําเนินการกับทูเพิลนัน้ ๆ เพียงครั้งเดียว ไมตองเสียเวลาในการแกไขขอมูลหลาย
แหง โอกาสที่จะเกิดความผิดพลาดจากการแกไขขอมูลไมครบถวนหรือไมสอดคลองกันก็จะไมเกิด
ขึ้น
- ทําใหลดปญหาทีเ่ กิดจากการปรับปรุง เพิ่มเติม และลบขอมูล เชน ในการปรับปรุงขอมูลอาจเกิด
ปญหาการแกไขขอมูลไมครบถวนทุกที่ หรือขอมูลที่แกไขไมสอดคลองกัน หรือในการเพิ่มเติมขอ
มูลอาจตองดําเนินการกับขอมูลทีเ่ กีย่ วของกันซ้าํ ๆ หลายทูเพิล ทําใหเกิดความผิดพลาดไดงา ย
นอกจากนี้ ใน การลบขอมูลอาจทําใหขอมูลบางสวนที่จําเปนตองใชเพื่อการอางอิงสูญหายไป
จากฐานขอมูลได
$#'

ตอนที่ 4.2 การทําใหเปนรูปแบบทีเ่ ปนบรรทัดฐาน


หัวเรือ่ ง
เรือ่ งที่ 4.2.1 รูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 1
เรือ่ งที่ 4.2.2 รูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 2
เรือ่ งที่ 4.2.3 รูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 3
เรือ่ งที่ 4.2.4 รูปแบบทีเ่ ปนบรรทัดฐานของบอยสและคอดด
เรือ่ งที่ 4.2.5 รูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 4
เรือ่ งที่ 4.2.6 รูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 5
เรือ่ งที่ 4.2.7 ขอควรคํานึงในการทําใหเปนรูปแบบที่เปนบรรทัดฐาน
แนวคิด
1. รูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 1 คือ ทุกแอททริบิวตในแตละทูเพิลมีคาของขอมูลเพียงคาเดียว
2. รูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 2 คือ รีเลชันนัน้ ตองมีคณ
ุ สมบัตอิ ยูใ นรูปแบบทีเ่ ปนบรรทัดฐาน
ขั้นที่ 1 แลว และทุกแอททริบิวตที่ไมใชคียหลักตองมีความสัมพันธระหวางแอททริบิวตแบบ
ฟงกชันกับคียหลักหรือแอททริบิวตที่ประกอบกันเปนคียหลัก ซึ่งความสัมพันธดังกลาวเปน
ความสัมพันธระหวางแอททริบิวตแบบทั้งหมด หรืออีกนัยหนึง่ รีเลชันนั้นตองไมมีความ
สัมพันธระหวางแอททริบิวตแบบบางสวนเกิดขึ้น
3. รูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 3 คือ รีเลชันนัน้ ตองมีคณุ สมบัตอิ ยูใ นรูปแบบทีเ่ ปนบรรทัดฐาน
ขั้นที่ 2 แลว และทุกแอททริบิวตที่ไมใชคียหลักไมมีคุณสมบัติในการกําหนดคาของแอททริ
บิวตอื่นที่ไมใชคียหลัก หรืออีกนัยหนึง่ รีเลชันนั้นตองไมมีความสัมพันธระหวางแอททริบิวต
แบบ Transitive เกิดขึน้
4. รูปแบบทีเ่ ปนบรรทัดฐานของบอยสและคอดด คือ ทุกแอททริบิวตที่เปนตัวระบุคา หรือ
Determinant ในรีเลชันนั้นตองเปนคียคูแขง และไมมีแอททริบิวตใดในรีเลชันที่สามารถระบุคา
ของแอททริบิวตที่เปนคียหลักหรือสวนใดสวนหนึ่งของแอททริบิวตที่ประกอบกันเปนคียหลัก
ได
5. รูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 4 คือ รีเลชันนัน้ ตองมีคณ
ุ สมบัตอิ ยูใ นรูปแบบทีเ่ ปนบรรทัดฐาน
ของบอยสและคอดดแลว และไมมีความสัมพันธระหวางแอททริบิวตแบบหลายคา
6. รูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 5 คือ รีเลชันนั้นตองมีความสัมพันธระหวางแอททริบิวตแบบ
Join โดยรีเลชันยอย ๆ ที่จําแนกออกมาตองมีคียคูแขงของรีเลชันเดิมอยูดวยเสมอ
7. ขอควรคํานึงในการทําใหเปนรูปแบบที่เปนบรรทัดฐาน คือ การแตกรีเลชันมากเกินไปทําใหมี
ผลกระทบตอประสิทธิภาพในการทํางานของฐานขอมูล และการ Denormalization อาจทําให
เกิดปญหาความซ้ําซอนของขอมูล
$#(
วัตถุประสงค
หลังจากศึกษาตอนที่ 4.2 แลว นักศึกษาสามารถ
1. บอกรูปแบบทีเ่ ปนบรรทัดฐานในแตละขัน้ ได
2. บอกขอควรคํานึงในการทําใหเปนรูปแบบทีเ่ ปนบรรทัดฐานได

เรื่องที่ 4.2.1 รูปแบบที่เปนบรรทัดฐานขั้นที่ 1


รูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 1 (First Normal Form : 1NF) เปนขัน้ ตอนแรกสุดในการจัดทํา รี
เลชันใหเปนรูปแบบทีเ่ ปนบรรทัดฐาน
1. คุณสมบัตขิ องรูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 1
รีเลชันใด ๆ จะมีคุณสมบัติอยูในรูปแบบที่เปนบรรทัดฐานขั้นที่ 1 ก็ตอเมื่อทุกแอททริบิวตในแตละ
ทูเพิลมีคาของขอมูลเพียงคาเดียว
2. ขัน้ ตอนการจัดทํารีเลชันใหเปนรูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 1
เพื่อแสดงใหเห็นถึงการจัดทํารีเลชันใหเปนรูปแบบที่เปนบรรทัดฐานขั้นที่ 1 ในที่นี้ขอนําตัวอยาง
รีเลชันซึง่ ไมอยูใ นรูปแบบทีเ่ ปนบรรทัดฐานมาประกอบดังนี้
รีเลชันการลงทะเบียนประกอบดวย แอททริบิวตรหัสนักศึกษา ชื่อนักศึกษา รหัสอาจารย ชือ่ อาจารย
ที่ปรึกษา รหัสชุดวิชา ชื่อชุดวิชาที่ลงทะเบียน หมูเรียน และหนวยกิต

รหัสนักศึกษา ชือ่ นักศึกษา รหัสอาจารย ชือ่ อาจารยทป่ี รึกษา รหัสชุดวิชา ชือ่ ชุดวิชาทีล่ งทะเบียน หมูเ รียน หนวยกิต
41010703 สมชาย พลจันทร Q1059 สัมพันธ เย็นสําราญ 729101 เศรษฐศาสตรเบื้องตน 700 2
729111 คณิตศาสตรและสถิติ 711 3
999211 คอมพิวเตอรเบื้องตน 713 3
41010943 สุทิศา พินิจไพฑูรย Q1011 ศิริภัทรา เหมือนมาลัย 729111 คณิตศาสตรและสถิติ 712 3
999211 คอมพิวเตอรเบื้องตน 711 3
729104 การจัดการการเงิน 700 2
41012147 ณัฐพร ประคองเก็บ Q1061 เมธี ปยะคุณ 729111 คณิตศาสตรและสถิติ 711 3
999211 คอมพิวเตอรเบื้องตน 713 3
41012451 นพดล ทับทิมทอง Q1035 ศิริชัย ศรีพรหม 729111 คณิตศาสตรและสถิติ 712 3
999211 คอมพิวเตอรเบื้องตน 711 3
41013327 มัทนา พินิจไพฑูรย Q1059 สัมพันธ เย็นสําราญ 729103 การจัดการการตลาด 700 2
41013780 สมชาย พลจันทร Q1011 ศิริภัทรา เหมือนมาลัย 999211 คอมพิวเตอรเบื้องตน 712 3
ภาพที่ 4.9 รีเลชันการลงทะเบียน
จากรีเลชันขางตนจะพบวา นักศึกษาบางคนอาจมีชื่อ-สกุลเหมือนกัน หรือมีอาจารยที่ปรึกษาคน
เดียวกัน หรือลงทะเบียนเรียนชุดวิชาเดียวกันและหมูเรียนเดียวกันก็ได ซึง่ นักศึกษาแตละคนสามารถลง
ทะเบียนเรียนไดมากกวาหนึ่งชุดวิชา โดยบางชุดวิชาอาจเปดสอนมากกวาหนึ่งหมูเรียนก็ได
$#)
เนือ่ งจากรีเลชันใดๆ จะมีคุณสมบัติอยูในรูปแบบที่เปนบรรทัดฐานขั้นที่ 1 ก็ตอ เมือ่ คาของ แอททริ
บิวตตาง ๆ ในแตละทูเพิลมีคาของขอมูลเพียงคาเดียว ดังนัน้ ในการจัดทํารีเลชันนี้ใหมีคุณสมบัติอยูในรูป
แบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 1 จึงทําการปรับรีเลชันขางตนโดยการใสรหัสนักศึกษา ชื่อนักศึกษา รหัสอาจารย
และชื่ออาจารยที่ปรึกษาลงไปในทุกรหัสชุดวิชาที่นักศึกษาลงทะเบียนเรียน ดังนี้

รหัสนักศึกษา ชือ่ นักศึกษา รหัสอาจารย ชือ่ อาจารยทป่ี รึกษา รหัสชุดวิชา ชือ่ ชุดวิชาทีล่ งทะเบียน หมูเ รียน หนวยกิต
41010703 สมชาย พลจันทร Q1059 สัมพันธ เย็นสําราญ 729101 เศรษฐศาสตรเบื้องตน 700 2
41010703 สมชาย พลจันทร Q1059 สัมพันธ เย็นสําราญ 729111 คณิตศาสตรและสถิติ 711 3
41010703 สมชาย พลจันทร Q1059 สัมพันธ เย็นสําราญ 999211 คอมพิวเตอรเบื้องตน 713 3
41010943 สุทิศา พินิจไพฑูรย Q1011 ศิริภัทรา เหมือนมาลัย 729111 คณิตศาสตรและสถิติ 712 3
41010943 สุทิศา พินิจไพฑูรย Q1011 ศิริภัทรา เหมือนมาลัย 999211 คอมพิวเตอรเบื้องตน 711 3
41010943 สุทิศา พินิจไพฑูรย Q1011 ศิริภัทรา เหมือนมาลัย 729104 การจัดการการเงิน 700 2
41012147 ณัฐพร ประคองเก็บ Q1061 เมธี ปยะคุณ 729111 คณิตศาสตรและสถิติ 711 3
41012147 ณัฐพร ประคองเก็บ Q1061 เมธี ปยะคุณ 999211 คอมพิวเตอรเบื้องตน 713 3
41012451 นพดล ทับทิมทอง Q1035 ศิริชัย ศรีพรหม 729111 คณิตศาสตรและสถิติ 712 3
41012451 นพดล ทับทิมทอง Q1035 ศิริชัย ศรีพรหม 999211 คอมพิวเตอรเบื้องตน 711 3
41013327 มัทนา พินิจไพฑูรย Q1059 สัมพันธ เย็นสําราญ 729103 การจัดการการตลาด 700 2
41013780 สมชาย พลจันทร Q1011 ศิริภัทรา เหมือนมาลัย 999211 คอมพิวเตอรเบื้องตน 712 3
ภาพที่ 4.10 รีเลชันการลงทะเบียนเมือ่ มีคณ
ุ สมบัตอิ ยูใ นรูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 1
ผลจากการใสรหัสนักศึกษาและชือ่ นักศึกษาลงไปในทุกรหัสชุดวิชาทีน่ กั ศึกษาลงทะเบียนเรียน
ขางตน ทําใหคียหลักของรีเลชันการลงทะเบียนประกอบดวย แอททริบิวตรหัสนักศึกษาและรหัสชุดวิชา
หากทวาแมจะกําหนดใหแอททริบิวตรหัสนักศึกษาและรหัสชุดวิชาเปนคียหลักของรีเลชันนี้แลว แต
ปญหาความซ้ําซอนของขอมูลในรีเลชันก็ยังปรากฏอยูดังนี้คือ
1. การปรับปรุงขอมูล (update anomaly) ใด ๆ จะตองทําซ้ําหลายแหง ทําใหสน้ิ เปลืองเวลา รวม
ทั้งอาจทําการแกไขขอมูลไดไมครบถวนและถูกตองทุกรายการก็ได ตัวอยางเชน การแกไขชื่อนักศึกษาจาก
สมชาย พลจันทร เปน ศุภลักษณ พลจันทร
2. การเพิ่มเติมขอมูล (insert anomaly) ในรีเลชันขางตนไมสามารถทําได ตัวอยางเชน หากตองการ
เพิ่มขอมูลนักศึกษาใหม 41014325 สุชาดา กรุณา จะไมสามารถเพิ่มเติมขอมูลเขามาในรีเลชันนี้ได เนือ่ งจาก
ยังไมปรากฏขอมูลการลงทะเบียนของนักศึกษามากอน คาของรหัสชุดวิชาจึงเปนคาวาง ทําใหไมอาจเพิ่มเติม
ขอมูลลงในรีเลชันได เพราะแอททริบิวตที่เปนสวนของคียหลักจะมีคาวางไมได
3. การลบขอมูล (delete anomaly) ออกจากรีเลชันอาจทําใหขอมูลบางสวนสูญหายไปจากฐาน ขอ
มูล ตัวอยางเชน หากผูที่มีรหัสนักศึกษา 41013327 มัทนา พินิจไพฑูรย ลาออก ขอมูลที่เกี่ยวของกับ นัก
ศึกษาจะถูกลบไปทั้งทูเพิล ดังนัน้ ขอมูลเกี่ยวกับชุดวิชา 729103 การจัดการการตลาด ซึ่งมีเพียงแหงเดียวใน
ฐานขอมูลก็จะสูญหายไปดวย ทั้งนี้ ปญหาลักษณะนี้ของรีเลชันเนื่องมาจากการมีแอททริบิวตจํานวนมากเกิน
ไป และแอททริบิวตที่ยังไมจําเปนตองใชงานมาผูกติดอยูกับแอททริบิวตที่ตองการใชงาน
$#*
ดังนัน้ เพื่อแกไขปญหาความซ้ําซอนของขอมูลในรีเลชันดังกลาว ไมวาจะเปนการปรับปรุง การเพิม่
หรือการลบขอมูล จึงจําเปนตองดําเนินการจัดทํารีเลชันใหอยูใ นรูปแบบทีเ่ ปนบรรทัดฐาน ขั้นตอไป

เรื่องที่ 4.2.2 รูปแบบที่เปนบรรทัดฐานขั้นที่ 2


รูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 2 (Second Normal Form : 2NF) เปนขั้นตอนถัดมาจากการจัดทํา รี
เลชันใหอยูในรูปแบบที่เปนบรรทัดฐานขั้นที่ 1 ซึ่งเปนขั้นตอนที่ยังไมมีการวิเคราะหความสัมพันธระหวาง แอ
ททริบิวต
การจัดทํารีเลชันใหมีคุณสมบัติอยูในรูปแบบที่เปนบรรทัดฐานขั้นที่ 2 จะเปนการตรวจสอบเพือ่ แกไข
ปญหาความซ้ําซอนของขอมูลที่ปรากฏในรีเลชันที่มีคุณสมบัติอยูในรูปแบบที่เปนบรรทัดฐานขั้นที่ 1 โดยให
ความสําคัญในเรื่องของคียหลักและความสัมพันธระหวางแอททริบิวตแบบฟงกชัน โดยเฉพาะอยางยิ่ง
ความสัมพันธระหวางแอททริบิวตแบบทั้งหมด
1. คุณสมบัติของรูปแบบที่เปนบรรทัดฐานขั้นที่ 2
รีเลชันใด ๆ จะมีคุณสมบัติอยูในรูปแบบที่เปนบรรทัดฐานขั้นที่ 2 ก็ตอ เมือ่
1. รีเลชันนัน้ มีคณ
ุ สมบัตอิ ยูใ นรูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 1 แลว
2.ทุกแอททริบิวตที่ไมใชคียหลักตองมีความสัมพันธระหวางแอททริบิวตแบบฟงกชันกับคียหลักหรือ
แอททริบิวตที่ประกอบกันเปนคียหลัก ซึ่งความสัมพันธดังกลาวเปนความสัมพันธระหวางแอททริบิวตแบบทั้ง
หมด (FULLY FUNCTIONAL DEPENDENCY) หรืออีกนัยหนึ่งรีเลชันนั้นตองไมมีความสัมพันธระหวาง
แอททริบิวตแบบบางสวนเกิดขึ้น
2. ขัน้ ตอนการจัดทํารีเลชันใหเปนรูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 2
เพื่อแสดงใหเห็นถึงการจัดทํารีเลชันใหเปนรูปแบบที่เปนบรรทัดฐานขั้นที่ 2 ในที่นี้ขอนําตัวอยาง
รีเลชันจากเรือ่ งที่ 4.2.1 มาประกอบดังนี้

รหัสนักศึกษา ชือ่ นักศึกษา รหัสอาจารย ชือ่ อาจารยทป่ี รึกษา รหัสชุดวิชา ชือ่ ชุดวิชาทีล่ งทะเบียน หมูเ รียน หนวยกิต
41010703 สมชาย พลจันทร Q1059 สัมพันธ เย็นสําราญ 729101 เศรษฐศาสตรเบื้องตน 700 2
41010703 สมชาย พลจันทร Q1059 สัมพันธ เย็นสําราญ 729111 คณิตศาสตรและสถิติ 711 3
41010703 สมชาย พลจันทร Q1059 สัมพันธ เย็นสําราญ 999211 คอมพิวเตอรเบื้องตน 713 3
41010943 สุทิศา พินิจไพฑูรย Q1011 ศิริภัทรา เหมือนมาลัย 729111 คณิตศาสตรและสถิติ 712 3
41010943 สุทิศา พินิจไพฑูรย Q1011 ศิริภัทรา เหมือนมาลัย 999211 คอมพิวเตอรเบื้องตน 711 3
41010943 สุทิศา พินิจไพฑูรย Q1011 ศิริภัทรา เหมือนมาลัย 729104 การจัดการการเงิน 700 2
41012147 ณัฐพร ประคองเก็บ Q1061 เมธี ปยะคุณ 729111 คณิตศาสตรและสถิติ 711 3
41012147 ณัฐพร ประคองเก็บ Q1061 เมธี ปยะคุณ 999211 คอมพิวเตอรเบื้องตน 713 3
41012451 นพดล ทับทิมทอง Q1035 ศิริชัย ศรีพรหม 729111 คณิตศาสตรและสถิติ 712 3
41012451 นพดล ทับทิมทอง Q1035 ศิริชัย ศรีพรหม 999211 คอมพิวเตอรเบื้องตน 711 3
41013327 มัทนา พินิจไพฑูรย Q1059 สัมพันธ เย็นสําราญ 729103 การจัดการการตลาด 700 2
41013780 สมชาย พลจันทร Q1011 ศิริภัทรา เหมือนมาลัย 999211 คอมพิวเตอรเบื้องตน 712 3
$#!
ภาพที่ 4.11 รีเลชันการลงทะเบียน
รีเลชันการลงทะเบียนประกอบดวย แอททริบิวตรหัสนักศึกษา ชื่อนักศึกษา รหัสอาจารย ชือ่ อาจารย
ที่ปรึกษา รหัสชุดวิชา ชื่อชุดวิชาที่ลงทะเบียน หมูเรียน และหนวยกิต โดยมีแอททริบิวตรหัสนักศึกษาและ
รหัสชุดวิชาประกอบกันเปนคียห ลัก
จากการตรวจสอบจะพบวา รีเลชันการลงทะเบียนมีคณ ุ สมบัตอิ ยูใ นรูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 1
แลว เนื่องจากทุกแอททริบิวตในแตละทูเพิลมีคาของขอมูลเพียงคาเดียว
สวนการตรวจสอบรีเลชันการลงทะเบียนวา ทุกแอททริบิวตที่ไมไดเปนคียหลักมีความสัมพันธ
ระหวางแอททริบิวตแบบฟงกชันกับคียหลักหรือแอททริบิวตที่ประกอบกันเปนคียหลัก โดยความสัมพันธ
ดังกลาวเปนความสัมพันธระหวางแอททริบิวตแบบทั้งหมดหรือไม
จากการตรวจสอบพบวา คียหลักหรือ Determinant ของรีเลชันการลงทะเบียนประกอบดวย
แอททริบิวตรหัสนักศึกษาและรหัสชุดวิชา สวนแอททริบวิ ตอน่ื ในรีเลชันการลงทะเบียนทีไ่ มไดเปนคียห ลัก คือ
ชื่อนักศึกษา รหัสอาจารย ชื่ออาจารยที่ปรึกษา ชื่อชุดวิชาที่ลงทะเบียน หมูเรียน และหนวยกิต
รีเลชันการลงทะเบียนมีความสัมพันธระหวางแอททริบิวตแบบฟงกชันดังนี้
รหัสนักศึกษา, รหัสชุดวิชา → ชื่อนักศึกษา, รหัสอาจารย, ชื่ออาจารยที่ปรึกษา,ชื่อ
ชุดวิชาที่ลงทะเบียน, หมูเรียน, หนวยกิต
รหัสนักศึกษา → ชื่อนักศึกษา, รหัสอาจารย, ชื่ออาจารยที่ปรึกษา
รหัสชุดวิชา → ชื่อชุดวิชาที่ลงทะเบียน, หนวยกิต
เขียน FD ไดอะแกรมไดดงั นี้

รหัสนักศึกษา ชือ่ นักศึกษา รหัสอาจารย ชือ่ อาจารยทป่ี รึกษา รหัสชุดวิชา ชือ่ ชุดวิชาทีล่ งทะเบียน หมูเ รียน หนวยกิต

รหัสนักศึกษา ชือ่ นักศึกษา รหัสอาจารย ชือ่ อาจารยทป่ี รึกษา รหัสชุดวิชา ชือ่ ชุดวิชาทีล่ งทะเบียน หมูเ รียน หนวยกิต

รหัสนักศึกษา ชือ่ นักศึกษา รหัสอาจารย ชือ่ อาจารยทป่ี รึกษา รหัสชุดวิชา ชือ่ ชุดวิชาทีล่ งทะเบียน หมูเ รียน หนวยกิต

จากภาพ รีเลชันการลงทะเบียนมีแอททริบวิ ตรหัสนักศึกษาและรหัสชุดวิชาประกอบกันเปนคียห ลัก


หรือ Determinant ที่สามารถระบุคาของ Dependent หรือแอททริบิวตอื่น ๆ ในทูเพิลเดียวกัน คือ ชื่อ
นักศึกษา รหัสอาจารย ชื่ออาจารยที่ปรึกษา ชื่อชุดวิชาที่ลงทะเบียน หมูเรียน และหนวยกิตได
ขณะเดียวกัน รีเลชันการลงทะเบียนมีความสัมพันธระหวางแอททริบิวตแบบบางสวนเกิดขึ้น
เนือ่ งจากแอททริบวิ ตรหัสนักศึกษาซึง่ เปนสวนประกอบหนึง่ ของคียห ลักสามารถระบุคา ของ DEPENDENT
หรือแอททริบิวตอื่นที่ไมไดเปนคียหลัก คือ ชื่อนักศึกษา รหัสอาจารย และชื่ออาจารยที่ปรึกษาได นอกจากนี้
$#"
แอททริบิวตรหัสชุดวิชาซึ่งเปนสวนประกอบหนึ่งของคียหลักสามารถระบุคาของ DEPENDENT หรือแอททริ
บิวตอื่นที่ไมไดเปนคียหลัก คือ ชื่อชุดวิชาที่ลงทะเบียน และหนวยกิตได ดังนั้นจึงกลาวไดวา รีเลชันการลง
ทะเบียนไมมีคุณสมบัติอยูในรูปแบบที่เปนบรรทัดฐานขั้นที่ 2

ภาพที่ 4.12 การจําแนกรีเลชันการลงทะเบียน


เพื่อขจัดปญหาความสัมพันธระหวางแอททริบิวตแบบบางสวนที่เกิดขึ้น จึงตองทําการจําแนกรีเลชัน
การลงทะเบียนออกเปน 3 รีเลชันยอย ดวยการนําแอททริบิวตที่เปนตัวระบุคาของแอททริบิวตอื่น และ
แอททริบิวตหรือกลุมของแอททริบิวตที่ถูกระบุคาแยกออกเปนรีเลชันใหม โดยคํานึงถึงหลักการของ
$$#
ความสัมพันธระหวางแอททริบิวตแบบ JOIN นัน่ คือ รีเลชันใด ๆ สามารถจําแนกออกเปนรีเลชันยอยได และ
เมือ่ นํารีเลชันยอยทีจ่ าํ แนกออกมาเหลานัน้ มารวมกันจะตองไดรเี ลชันกลับไปเหมือนเดิมเสมอ
ดังนัน้ รีเลชันการลงทะเบียนจึงจําแนกเปน 3 รีเลชันยอย คือ รีเลชันขอมูลนักศึกษา รีเลชันชุดวิชา
และรีเลชันขอมูลลงทะเบียน
- รีเลชันขอมูลนักศึกษาประกอบดวย แอททริบิวตรหัสนักศึกษา ชื่อนักศึกษา รหัสอาจารย และชื่อ
อาจารยที่ปรึกษา โดยมีแอททริบิวตรหัสนักศึกษาเปนคียหลัก
- รีเลชันชุดวิชาประกอบดวย แอททริบิวตรหัสชุดวิชา ชื่อชุดวิชาที่ลงทะเบียน และหนวยกิตโดยมีแอ
ททริบิวตรหัสชุดวิชาเปนคียหลัก
- รีเลชันขอมูลลงทะเบียนประกอบดวย แอททริบิวตรหัสนักศึกษา รหัสชุดวิชา และหมูเรียน โดยมี
แอททริบิวตรหัสนักศึกษาและรหัสชุดวิชาประกอบกันเปนคียหลัก
แมวา การจําแนกรีเลชันการลงทะเบียนออกเปน 3 รีเลชันยอย คือ รีเลชันขอมูลนักศึกษา และรีเลชัน
ชุดวิชา และรีเลชันขอมูลลงทะเบียน จะชวยลดปญหาความซ้ําซอนของขอมูลที่ปรากฏในรูปแบบที่เปน
บรรทัดฐานขัน้ ที่ 1 ลงได ไมวาจะเปนการแกไขชื่อนักศึกษา การเพิ่มขอมูลนักศึกษาใหม หรือการลบขอมูล
นักศึกษา หากทวาปญหาความซ้ําซอนของขอมูลในลักษณะอื่นก็ยังคงมีอยูอีกดังนี้คือ
1. การปรับปรุงขอมูลใด ๆ จะตองทําซ้ําหลายแหง ทําใหสน้ิ เปลืองเวลา รวมทั้งอาจทําการแกไขขอ
มูลไดไมครบถวนและถูกตองทุกรายการ ตัวอยางเชน การแกไขชื่ออาจารยที่ปรึกษาในรีเลชันขอมูล นัก
ศึกษาจาก ศิริภัทรา เหมือนมาลัย เปน สุรพล ประดิษฐทศั นีย
2. การเพิ่มเติมขอมูลอาจไมสามารถทําได ตัวอยางเชน ในรีเลชันขอมูลนักศึกษา หากตองการเพิม่
ขอมูลอาจารยที่ปรึกษาใหม Q1073 ณัชชา มาลัย จะไมสามารถเพิ่มเติมขอมูลได เนื่องจากยังไมปรากฏ
ขอมูลของนักศึกษาในการปรึกษามากอน คาของรหัสนักศึกษาจึงเปนคาวาง ทําใหไมอาจเพิ่มเติมขอมูลลงใน
รีเลชันได เพราะแอททริบิวตที่เปนสวนของคียหลักจะมีคาวางไมได
3. การลบขอมูลออกจากรีเลชันอาจทําใหขอมูลบางสวนสูญหายไปจากฐานขอมูล ตัวอยางเชน หาก
ผูที่มีรหัสนักศึกษา 41012451 นพดล ทับทิมทอง ลาออก ขอมูลที่เกี่ยวของกับนักศึกษาจะถูกลบไปทั้ง ทู
เพิล ดังนัน้ ขอมูลเกี่ยวกับอาจารยที่ปรึกษา Q1035 ศิริชัย ศรีพรหม ซึ่งมีเพียงแหงเดียวในฐานขอมูลก็จะสูญ
หายไปดวย ซึ่งปญหาลักษณะนี้ของรีเลชันเนื่องจากการมีแอททริบิวตจํานวนมากเกินไป และแอททริบิวตที่ยัง
ไมจําเปนตองใชงานมาผูกติดอยูกับแอททริบิวตที่ตองการใชงาน
ดังนัน้ เพื่อแกไขปญหาความซ้ําซอนของขอมูลในรีเลชันดังกลาว ไมวาจะเปนการปรับปรุง การเพิม่
หรือการลบขอมูล จึงจําเปนตองดําเนินการจัดทํารีเลชันใหอยูใ นรูปแบบทีเ่ ปนบรรทัดฐาน ขั้นตอไป

เรื่องที่ 4.2.3 รูปแบบที่เปนบรรทัดฐานขั้นที่ 3


แมวารีเลชันใด ๆ จะมีคุณสมบัติอยูในรูปแบบที่เปนบรรทัดฐานขั้นที่ 2 แลว ก็อาจก็ยังมีปญหาที่เกิด
จากความซ้ําซอนของขอมูลในรีเลชันอยูอีก ดังนัน้ รูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 3 (Third Normal Form :
3NF) จึงเปนขั้นตอนถัดมาในการแกไขปญหาความซ้ําซอนของขอมูลที่พบในรีเลชันที่มีคุณสมบัติอยูใน
$$$
รูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 2 ซึ่งในขั้นตอนนี้จะใหความสําคัญกับความสัมพันธระหวางแอททริบิวตแบบ
Transitive

1. คุณสมบัติของรูปแบบที่เปนบรรทัดฐานขั้นที่ 3
รีเลชันใด ๆ จะมีคุณสมบัติอยูในรูปแบบที่เปนบรรทัดฐานขั้นที่ 3 ก็ตอ เมือ่
1. รีเลชันนัน้ มีคณ
ุ สมบัตอิ ยูใ นรูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 2 แลว
2.ทุกแอททริบิวตที่ไมใชคียหลักไมมีคุณสมบัติในการกําหนดคาของแอททริบิวตอื่นที่ไมใช
คียหลัก หรืออีกนัยหนึ่งรีเลชันนั้นตองไมมีความสัมพันธระหวางแอททริบิวตแบบ TRANSITIVE เกิดขึน้

2. ขั้นตอนการจัดทํารีเลชันใหเปนรูปแบบที่เปนบรรทัดฐานขั้นที่ 3
เพื่อแสดงใหเห็นถึงการจัดทํารีเลชันใหเปนรูปแบบที่เปนบรรทัดฐานขั้นที่ 3 ในที่นี้ขอนําตัวอยาง
รีเลชันจากเรือ่ งที่ 4.2.2 มาประกอบดังนี้

ภาพที่ 4.13 รีเลชันขอมูลนักศึกษา รีเลชันขอมูลลงทะเบียน และรีเลชันชุดวิชา


- รีเลชันขอมูลนักศึกษาประกอบดวย แอททริบิวตรหัสนักศึกษา ชื่อนักศึกษา รหัสอาจารย และชื่อ
อาจารยที่ปรึกษา โดยมีแอททริบิวตรหัสนักศึกษาเปนคียหลัก
- รีเลชันขอมูลลงทะเบียนประกอบดวย แอททริบิวตรหัสนักศึกษา รหัสชุดวิชา และหมูเรียน โดยมี
แอททริบิวตรหัสนักศึกษาและรหัสชุดวิชาประกอบกันเปนคียหลัก
- รีเลชันชุดวิชาประกอบดวย แอททริบิวตรหัสชุดวิชา ชื่อชุดวิชาที่ลงทะเบียน และหนวยกิตโดยมีแอ
ททริบิวตรหัสชุดวิชาเปนคียหลัก
$$%
จากการตรวจสอบรีเลชันขอมูลนักศึกษา รีเลชันชุดวิชา และรีเลชันขอมูลลงทะเบียน จะพบวา ทั้ง 3
ุ สมบัตอิ ยูใ นรูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 2 แลว เนื่องจากทุกแอททริบิวตที่ไมไดเปนคียหลักมี
รีเลชันมีคณ
ความสัมพันธระหวางแอททริบิวตแบบฟงกชันกับคียหลักหรือแอททริบิวตที่ประกอบกันเปนคียหลัก โดย
ความสัมพันธดังกลาวเปนความสัมพันธระหวางแอททริบิวตแบบทั้งหมด
รีเลชันขอมูลนักศึกษามีความสัมพันธระหวางแอททริบิวตแบบฟงกชันดังนี้
รหัสนักศึกษา → ชื่อนักศึกษา, รหัสอาจารย, ชื่ออาจารยที่ปรึกษา
รีเลชันขอมูลลงทะเบียนมีความสัมพันธระหวางแอททริบิวตแบบฟงกชันดังนี้
รหัสนักศึกษา, รหัสชุดวิชา → หมูเรียน
รีเลชันชุดวิชามีความสัมพันธระหวางแอททริบิวตแบบฟงกชันดังนี้
รหัสชุดวิชา → ชื่อชุดวิชาที่ลงทะเบียน, หนวยกิต
สวนการตรวจสอบทัง้ 3 รีเลชันวา ทุกแอททริบิวตที่ไมใชคียหลักมีคุณสมบัติในการกําหนดคาของ
แอททริบิวตอื่นที่ไมใชคียหลัก หรืออีกนัยหนึ่งทั้ง 3 รีเลชันมีความสัมพันธระหวางแอททริบิวตแบบ Transitive
เกิดขึ้นหรือไม
จากการตรวจสอบรีเลชันขอมูลนักศึกษาพบวา คียหลักหรือ Determinant ของรีเลชันขอมูล
นักศึกษามีเพียงหนึ่งแอททริบิวต คือ รหัสนักศึกษา และแอททริบิวตอื่นในรีเลชันขอมูลนักศึกษาที่ไมไดเปน
คียหลัก คือ ชื่อนักศึกษา รหัสอาจารย และชื่ออาจารยที่ปรึกษา
รีเลชันขอมูลนักศึกษามีความสัมพันธระหวางแอททริบิวตแบบฟงกชันดังนี้
รหัสนักศึกษา → ชื่อนักศึกษา, รหัสอาจารย, ชื่ออาจารยที่ปรึกษา
รหัสอาจารย → ชื่ออาจารยที่ปรึกษา
เขียน FD ไดอะแกรมไดดงั นี้

รหัสนักศึกษา ชือ่ นักศึกษา รหัสอาจารย ชือ่ อาจารยทป่ี รึกษา

รหัสนักศึกษา ชือ่ นักศึกษา รหัสอาจารย ชือ่ อาจารยทป่ี รึกษา


จากภาพจะพบวา แอททริบิวตรหัสนักศึกษาเปนคียหลักหรือ Determinant ที่สามารถระบุคาของ
Dependent หรือแอททริบิวตอื่นในทูเพิลเดียวกัน คือ ชื่อนักศึกษา รหัสอาจารย และชื่ออาจารยที่ปรึกษาได
ในขณะเดียวกัน รีเลชันขอมูลนักศึกษามีความสัมพันธระหวางแอททริบิวตแบบ Transitive เกิดขึน้ เนือ่ งจาก
รหัสอาจารยซึ่งเปนแอททริบิวตที่ไมใชคียหลักสามารถระบุคาของแอททริบิวตอื่นในทูเพิลเดียวกัน คือ ชื่อ
อาจารยที่ปรึกษา ได ดังนัน้ จึงกลาวไดวา รีเลชันขอมูลนักศึกษาไมมีคุณสมบัติอยูในรูปแบบที่เปนบรรทัดฐาน
ขั้นที่ 3
$$&
เพื่อขจัดปญหาความสัมพันธระหวางแอททริบิวตแบบ TRANSITIVE ที่เกิดขึ้น จึงตองทําการจําแนก
ขอมูลนักศึกษาออกเปน 2 รีเลชันยอย ดวยการนําแอททริบิวตที่เปนตัวระบุคาของแอททริบิวตอื่นและ
แอททริบิวตหรือกลุมของแอททริบิวตที่ถูกระบุคาแยกออกเปนรีเลชันใหม โดยคํานึงถึงหลักการของ
ความสัมพันธระหวางแอททริบิวตแบบ JOIN
ดังนัน้ รีเลชันขอมูลนักศึกษาจึงจําแนกไดเปน 2 รีเลชันยอย คือ รีเลชันอาจารยทป่ี รึกษา และ
รีเลชันนักศึกษา
- รีเลชันอาจารยทป่ี รึกษาประกอบดวย แอททริบิวตรหัสอาจารย และชื่ออาจารยที่ปรึกษา โดยมีแอ
ททริบิวตรหัสอาจารยเปนคียหลัก
- รีเลชันนักศึกษาประกอบดวย แอททริบิวตรหัสนักศึกษา ชื่อนักศึกษา และรหัสอาจารย โดยมีแอ
ททริบิวตรหัสนักศึกษาเปนคียหลัก

ภาพที่ 4.14 การจําแนกรีเลชันขอมูลนักศึกษา


สวนการตรวจสอบรีเลชันขอมูลลงทะเบียนวา ทุกแอททริบิวตที่ไมใชคียหลักมีคุณสมบัติในการ
กําหนดคาของแอททริบิวตอื่นที่ไมใชคียหลัก หรืออีกนัยหนึ่งรีเลชันขอมูลลงทะเบียนมีความสัมพันธระหวาง
แอททริบิวตแบบ Transitive เกิดขึน้ หรือไม
จากการตรวจสอบพบวา คียหลักหรือ Determinant ของรีเลชันขอมูลลงทะเบียนประกอบดวย
แอททริบิวตรหัสนักศึกษาและรหัสชุดวิชา สวนแอททริบิวตอื่นในรีเลชันขอมูลลงทะเบียนที่ไมไดเปนคียหลัก
คือ หมูเรียน
$$'
รีเลชันขอมูลลงทะเบียนมีความสัมพันธระหวางแอททริบิวตแบบฟงกชันดังนี้
รหัสนักศึกษา, รหัสชุดวิชา → หมูเรียน
เขียน FD ไดอะแกรมไดดงั นี้

รหัสนักศึกษา รหัสชุดวิชา หมูเ รียน


จากภาพจะพบวา แอททริบิวตรหัสนักศึกษาและรหัสชุดวิชาที่ประกอบกันเปนคียหลักสามารถระบุ
คาของ DEPENDENT หรือแอททริบิวตอื่นที่ไมไดเปนคียหลัก คือ หมูเรียน ได และทุกแอททริบิวตที่ไมใช
คียหลักไมมีคุณสมบัติในการกําหนดคาของแอททริบิวตอื่นที่ไมใชคียหลัก ดังนัน้ จึงกลาวไดวา รีเลชันขอมูล
ลงทะเบียนมีคุณสมบัติอยูในรูปแบบที่เปนบรรทัดฐานขั้นที่ 3 แลว
สวนการตรวจสอบรีเลชันชุดวิชาวา ทุกแอททริบิวตที่ไมใชคียหลักมีคุณสมบัติในการกําหนดคาของ
แอททริบิวตอื่นที่ไมใชคียหลัก หรืออีกนัยหนึ่งรีเลชันชุดวิชามีความสัมพันธระหวางแอททริบิวตแบบ
Transitive เกิดขึน้ หรือไม
จากการตรวจสอบพบวา คียหลักหรือ Determinant ของรีเลชันชุดวิชามีเพียงหนึ่งแอททริบิวต คือ
รหัสชุดวิชา และแอททริบิวตอื่นในรีเลชันชุดวิชาที่ไมไดเปนคียหลัก คือ ชื่อชุดวิชาที่ลงทะเบียน และหนวยกิต
รีเลชันชุดวิชามีความสัมพันธระหวางแอททริบิวตแบบฟงกชันดังนี้
รหัสชุดวิชา → ชื่อชุดวิชาที่ลงทะเบียน, หนวยกิต
ชื่อชุดวิชาที่ลงทะเบียน → หนวยกิต
เขียน FD ไดอะแกรมไดดงั นี้

รหัสชุดวิชา ชือ่ ชุดวิชาทีล่ งทะเบียน หนวยกิต

รหัสชุดวิชา ชือ่ ชุดวิชาทีล่ งทะเบียน หนวยกิต


จากภาพจะพบวา แอททริบิวตรหัสชุดวิชาเปนคียหลักหรือ Determinant ที่สามารถระบุคาของ
Dependent หรือแอททริบิวตอื่นในทูเพิลเดียวกัน คือ ชื่อชุดวิชาที่ลงทะเบียน และหนวยกิต ได ขณะเดียวกัน
รีเลชันชุดวิชามีความสัมพันธระหวางแอททริบิวตแบบ Transitive เกิดขึน้ เนื่องจากชื่อชุดวิชาที่ลงทะเบียนซึ่ง
เปนแอททริบิวตที่ไมใชคียหลักสามารถระบุคาของแอททริบิวตอื่นในทูเพิลเดียวกัน คือ หนวยกิต ได ดังนัน้
จึงกลาวไดวา รีเลชันชุดวิชาไมมีคุณสมบัติอยูในรูปแบบที่เปนบรรทัดฐานขั้นที่ 3
เพื่อขจัดปญหาความสัมพันธระหวางแอททริบิวตแบบ TRANSITIVE ที่เกิดขึ้น จึงตองทําการจําแนก
รีเลชันชุดวิชาออกเปน 2 รีเลชันยอย ดวยการนําแอททริบิวตที่เปนตัวระบุคาของแอททริบิวตอื่น และแอททริ
บิวตหรือกลุมของแอททริบิวตที่ถูกระบุคาแยกออกเปนรีเลชันใหม โดยคํานึงถึงหลักการของความสัมพันธ
ระหวางแอททริบิวตแบบ JOIN
$$(
ดังนัน้ รีเลชันชุดวิชาจึงจําแนกไดเปน 2 รีเลชันยอย คือ รีเลชันรหัส-ชื่อชุดวิชา และ รีเลชันชุดวิชา-
หนวยกิต
- รีเลชันรหัส-ชื่อชุดวิชา ประกอบดวย แอททริบิวตรหัสชุดวิชา และชื่อชุดวิชาที่ลงทะเบียนโดยมีแอ
ททริบิวตรหัสชุดวิชา เปนคียห ลัก
- รีเลชันชื่อชุดวิชา-หนวยกิต ประกอบดวย แอททริบิวตชื่อชุดวิชาที่ลงทะเบียน และหนวยกิต โดยมี
แอททริบิวตชื่อชุดวิชาที่ลงทะเบียนเปนคียหลัก

ภาพที่ 4.15 การจําแนกรีเลชันชุดวิชา


แมวาจะจัดทํารีเลชันชุดวิชาใหอยูในรูปแบบที่เปนบรรทัดฐานขั้นที่ 3 ซึ่งเปนรูปแบบที่ขจัดความซ้ํา
ซอนของขอมูลใหลดลงจนแทบจะไมมีเหลืออยูด ว ยการแตกออกเปน 2 รีเลชันยอย คือ รีเลชันรหัส-ชื่อชุดวิชา
และ รีเลชันชุดวิชา-หนวยกิตแลวก็ตาม แตก็ยังมีโอกาสที่จะเกิดปญหาความผิดพลาดขึ้นไดอีกเชนกัน
จากกรณีขา งตนจะเห็นวา การเพิ่มชื่อชุดวิชาฯ ใหมและหนวยกิตจะทําไมได หากไมมีการระบุรหัส
ชุดวิชา ทั้งนี้ เนือ่ งจากรีเลชันรหัส-ชื่อชุดวิชาและรีเลชันชื่อชุดวิชา-หนวยกิตเปนรีเลชันที่ไมมีความเปนอิสระ
ตอกัน เนื่องจากแอททริบิวตรหัสชุดวิชาและชื่อชุดวิชาฯ ตางก็สามารถกําหนดคาของหนวยกิตไดเชนกัน
ปญหาดังกลาวนี้จึงเปนปญหาที่เกิดจากการแตกรีเลชันมากเกินความจําเปน
ดังนัน้ จากกรณีดงั กลาวขางตน ผูออกแบบฐานขอมูลจึงไมจําเปนตองทําการจําแนกรีเลชันชุดวิชา
ออกเปนรีเลชันรหัส-ชื่อชุดวิชา และ รีเลชันชุดวิชา-หนวยกิต รวมทั้งอาจกลาวไดวา รีเลชันชุดวิชามีคุณสมบัติ
อยูใ นรูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 3 แลว
$$)
เรื่องที่ 4.2.4 รูปแบบที่เปนบรรทัดฐานของบอยสและคอดด
โดยทั่วไป ในทางปฏิบัติการจัดทําใหเปนรูปแบบที่เปนบรรทัดฐานมักทําจนกระทั่งรีเลชันมี
คุณสมบัตอิ ยูใ นรูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 3 เนื่องจากสามารถขจัดปญหาความซ้ําซอนของขอมูลลงไดจน
แทบไมหลงเหลืออยูแลว แตก็มีโอกาสที่จะเกิดปญหาความซ้ําซอนของขอมูลไดอีก แมจะพบไดคอนขางนอย
มากก็ตาม
ดังนัน้ รูปแบบทีเ่ ปนบรรทัดฐานของบอยสและคอดด (Boyce/Codd Normal Form : BCNF) เปน รูป
แบบที่ขยายขอบเขตมาจากรูปแบบที่เปนบรรทัดฐานขั้นที่ 3 เพื่อใหการแกไขปญหาความซ้ําซอนของ ขอ
มูลที่พบในรีเลชันมีความชัดเจนและรัดกุมยิ่งขึ้น

1. คุณสมบัติของรูปแบบที่เปนบรรทัดฐานของบอยสและคอดด
รีเลชันใด ๆ ทีไ่ มมคี ณ
ุ สมบัตอิ ยูใ นรูปแบบทีเ่ ปนบรรทัดฐานของบอยสและคอดด คือ
1. รีเลชันใด ๆ ที่มีคียคูแขง (CANDIDATE KEY) ตั้งแต 2 ตัวขึ้นไป
2. คียคูแขงนั้นเปนคียผสม ซึ่งมีแอททริบิวตบางสวนรวมกัน
หรือกลาวอีกนัยหนึง่ รีเลชันใด ๆ จะมีคณ
ุ สมบัตอิ ยูใ นรูปแบบทีเ่ ปนบรรทัดฐานของบอยสและคอดด
ก็ตอ เมือ่
1. ทุกแอททริบิวตที่เปนตัวระบุคา หรือ DETERMINANT ในรีเลชันนั้นตองเปนคียคูแขง
2. ไมมีแอททริบิวตใดในรีเลชันที่สามารถระบุคาของแอททริบิวตที่เปนคียหลัก หรือสวนใดสวนหนึง่
ของแอททริบิวตที่ประกอบกันเปนคียหลักได
หมายเหตุ
1. นิยามคุณสมบัตขิ องรูปแบบทีเ่ ปนบรรทัดฐานของบอยสและคอดดไมระบุวา รีเลชันนัน้ จะตองมี
คุณสมบัตอิ ยูใ นรูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 3 ดวย
2. โดยทั่วไปมักพบวา รีเลชันที่มีคุณสมบัติอยูในรูปแบบที่เปนบรรทัดฐานของบอยสและคอดดจะมี
คุณสมบัตอิ ยูใ นรูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 3 ดวย และสําหรับรีเลชันที่มีคุณสมบัติอยูในรูปแบบที่เปน
บรรทัดฐานขัน้ ที่ 3 มักมีนอยมากที่ไมมีคุณสมบัติอยูในรูปแบบที่เปนบรรทัดฐานของบอยสและคอดด

2. ขั้นตอนการจัดทํารีเลชันใหเปนรูปแบบที่เปนบรรทัดฐานของบอยสและคอดด
เพือ่ แสดงใหเห็นถึงการจัดทํารีเลชันใหเปนรูปแบบทีเ่ ปนบรรทัดฐานของบอยสและคอดด ในที่นี้ขอ
นําตัวอยางรีเลชันมาประกอบดังนี้

1. รีเลชันที่ไมมีคุณสมบัติอยูในรูปแบบที่เปนบรรทัดฐานของบอยสและคอดด

รหัสนักศึกษา เลขทีใ่ บลงทะเบียน รหัสชุดวิชา หมูเ รียน


41010703 205 729101 700
41010703 205 729111 711
$$*
41010703 205 999211 713
41010943 1368 729111 712
41010943 1368 999211 711
41010943 1368 729104 700
41012147 1684 729111 711
41012147 1684 999211 713
41012451 236 729111 712
41012451 236 999211 711
41013327 186 729103 700
41013780 123 999211 712
ภาพที่ 4.16 รีเลชันทีไ่ มมคี ณ
ุ สมบัตอิ ยูใ นรูปแบบทีเ่ ปนบรรทัดฐานของบอยสและคอดด
จากรีเลชันขางตน นักศึกษาแตละคนจะมีใบลงทะเบียนเพียงหนึ่งใบ ดังนัน้ เลขที่ใบลงทะเบียนของ
นักศึกษาแตละคนจึงไมซ้ํากัน และแตละใบลงทะเบียนของนักศึกษาสามารถลงทะเบียนเรียนไดมากกวาหนึ่ง
ชุดวิชา
รีเลชันขางตนจึงมีความสัมพันธระหวางแอททริบิวตแบบฟงกชันดังนี้
รหัสนักศึกษา, รหัสชุดวิชา → เลขที่ใบลงทะเบียน, หมูเรียน
เลขที่ใบลงทะเบียน, รหัสชุดวิชา → รหัสนักศึกษา, หมูเรียน
รหัสนักศึกษา ↔ เลขที่ใบลงทะเบียน
เขียน FD ไดอะแกรมไดดงั นี้

ภาพที่ 1 รหัสนักศึกษา เลขทีใ่ บลงทะเบียน รหัสชุดวิชา หมูเ รียน

ภาพที่ 2 รหัสนักศึกษา เลขทีใ่ บลงทะเบียน รหัสชุดวิชา หมูเ รียน

ภาพที่ 3 รหัสนักศึกษา เลขทีใ่ บลงทะเบียน รหัสชุดวิชา หมูเ รียน


จากภาพที่ 1 หมายความวา หากระบุคาของรหัสนักศึกษาและรหัสชุดวิชาจะสามารถทราบเลขที่
ใบลงทะเบียนและหมูเรียนได ตัวอยางเชน ถาระบุคาของ Determinant หรือ รหัสนักศึกษา คือ 41010703
และรหัสชุดวิชา คือ 999211 จะทําใหทราบคาของ Dependent หรือ เลขที่ใบลงทะเบียนคือ 205 และหมูเรียน
คือ 713
จากภาพที่ 2 หมายความวา หากระบุคาของเลขที่ใบลงทะเบียนและรหัสชุดวิชาจะสามารถทราบ
รหัสนักศึกษาและหมูเ รียนได ตัวอยางเชน ถาระบุคาของ Determinant หรือ เลขที่ใบลงทะเบียน คือ 236 และ
$$!
รหัสชุดวิชา คือ 729111 จะทําใหทราบคาของ Dependent หรือ รหัสนักศึกษา คือ 41012451 และหมูเรียน
คือ 712
จากภาพที่ 3 หมายความวา หากระบุคาของรหัสนักศึกษาคนใดจะสามารถทราบเลขที่ใบลงทะเบียน
ของนักศึกษาคนนัน้ ได เชน ถาระบุคา ของรหัสนักศึกษา คือ 41010703 จะทําใหทราบเลขที่ใบลงทะเบียนของ
นักศึกษา คือ 205 และในทางตรงกันขาม หากระบุคาของเลขที่ใบลงทะเบียนใดจะสามารถทราบรหัสของ
นักศึกษาคนนัน้ ได เชน ถาเลขที่ใบลงทะเบียน คือ 236 จะ ทําใหทราบคารหัสนักศึกษา คือ 41012451

รีเลชันขางตนนีเ้ ปนรีเลชันทีไ่ มมคี ณ


ุ สมบัตอิ ยูใ นรูปแบบทีเ่ ปนบรรทัดฐานของบอยสและคอดด เนือ่ ง
จากมีคุณสมบัติดังนี้คือ
1. รีเลชันขางตนเปนรีเลชันที่มีคียคูแขงมากกวา 2 ตัวขึ้นไป คือ
- คียคูแขงตัวที่ 1 ประกอบดวยแอททริบิวตรหัสนักศึกษา และรหัสชุดวิชา
- คียคูแขงตัวที่ 2 ประกอบดวยแอททริบิวตเลขที่ใบลงทะเบียนและรหัสชุดวิชา
- คียคูแขงตัวที่ 3 คือ แอททริบิวตรหัสนักศึกษา
- คียคูแขงตัวที่ 4 คือ แอททริบิวตเลขที่ใบลงทะเบียน
2.รีเลชันขางตนเปนรีเลชันทีม่ คี ยี ค แู ขงเปนคียผ สม ซึ่งมีแอททริบิวตบางสวนรวมกัน
หากพิจารณาจากขอ 1 จะพบวา ในรีเลชันขางตน คียคูแขงที่เปนคียผสม คือ คียคูแขงตัวที่ 1 และ
คียคูแขงตัวที่ 2 ซึ่งคียคูแขงทั้ง 2 ตัว มีแอททริบิวตรวมกัน 1 แอททริบิวต คือ แอททริบิวตรหัสชุดวิชา

2. การทําใหรีเลชันมีคุณสมบัติอยูในรูปแบบที่เปนบรรทัดฐานของบอยสและคอดด
รีเลชันขางตนเปนรีเลชันทีไ่ มมคี ณ
ุ สมบัตอิ ยูใ นรูปแบบทีเ่ ปนบรรทัดฐานของบอยสและคอดด
เนื่องจากเมื่อเลือกคียคูแขงตัวใดเปนคียหลักแลว คียคูแขงที่ไมไดถูกเลือกจะยังคงปรากฏซ้ําซอนอยูในรีเลชัน
และมีคุณสมบัติในการระบุคาของแอททริบิวตที่เปนคียหลักหรือแอททริบิวตที่ประกอบกันเปนคียหลักอีกดวย
ตัวอยางเชน หากเลือกแอททริบิวตรหัสนักศึกษาและรหัสชุดวิชาซึ่งเปนคียคูแขงตัวที่1 เปนคียห ลัก แอททริ
บิวตเลขที่ใบลงทะเบียนจะยังคงปรากฏซ้ําซอนอยูในรีเลชัน และมีคณ ุ สมบัตใิ นการระบุคา ของ แอททริบิวต
รหัสนักศึกษาซึง่ เปนสวนประกอบหนึง่ ของคียห ลักไดดว ย
นอกจากนี้ รีเลชันขางตนยังประกอบดวยขอมูลทีซ่ าํ้ ซอนกัน ซึง่ จะทําใหเกิดความผิดพลาดไดงา ย
เมือ่ ทําการเพิม่ ลบ หรือปรับปรุงขอมูลอีกดวย ตัวอยางเชน การแกไขเลขที่ใบลงทะเบียนจาก 205 เปน 520
หรือการแกไขรหัสนักศึกษาจาก 41010703 เปน 41014077 จะตองทําซ้ําหลายแหง ทําใหสน้ิ เปลืองเวลา รวม
ทั้งอาจทําการแกไขขอมูลไดไมครบถวนและถูกตองทุกรายการก็ได
เพื่อขจัดปญหาความซ้ําซอนของขอมูลที่เกิดขึ้นจึงตองทําการจําแนกรีเลชันออกเปน 2 รีเลชันยอย
เพื่อไมใหมีแอททริบิวตใดในรีเลชันที่สามารถระบุคาของแอททริบิวตที่เปนคียหลัก หรือสวนใดสวนหนึ่งของ
แอททริบิวตที่ประกอบกันเปนคียหลักได ซึ่งการจําแนกรีเลชันทําไดดวยการนําคียคูแขงตัวใดตัวหนึ่งที่เปน
ตัวระบุคาของแอททริบิวตอื่น และแอททริบิวตหรือกลุมของแอททริบิวตที่ถูกระบุคาแยกออกเปนรีเลชันใหม
$$"
ดังนัน้ รีเลชันขางตนจึงสามารถจําแนกเปนรีเลชันยอยได 2 แบบ คือ

แบบที่หนึ่ง
- รีเลชันรหัสนักศึกษา-รหัสชุดวิชา ประกอบดวย แอททริบิวตรหัสนักศึกษา รหัสชุดวิชา และ หมู
เรียน โดยมีแอททริบิวตรหัสนักศึกษาและรหัสชุดวิชา เปนคียห ลัก
- รีเลชันรหัสนักศึกษา-เลขที่ใบลงทะเบียน ประกอบดวย แอททริบิวตรหัสนักศึกษา และเลขที่ ใบ
ลงทะเบียน โดยมีแอททริบิวตรหัสนักศึกษาเปนคียหลัก
$%#

ภาพที่ 4.17 การจําแนกรีเลชันฯ แบบที่ 1

แบบที่สอง
- รีเลชันเลขที่ใบลงทะเบียน-รหัสชุดวิชา ประกอบดวย แอททริบิวตเลขที่ใบลงทะเบียนรหัส ชุด
วิชา และหมูเรียน โดยมีแอททริบิวตเลขที่ใบลงทะเบียนและรหัสชุดวิชา เปนคียห ลัก
$%$
- รีเลชันรหัสนักศึกษา-เลขที่ใบลงทะเบียน ประกอบดวย แอททริบิวตรหัสนักศึกษา และเลขที่ ใบลง
ทะเบียน โดยมีแอททริบิวตรหัสนักศึกษาเปนคียหลัก

ภาพที่ 4.18 การจําแนกรีเลชันฯ แบบที่ 2


$%%
เรื่องที่ 4.2.5 รูปแบบที่เปนบรรทัดฐานขั้นที่ 4
แมรีเลชันใดจะมีคุณสมบัติอยูในรูปแบบที่เปนบรรทัดฐานขั้นที่ 3 หรือรูปแบบทีเ่ ปนบรรทัดฐานของ
บอยสและคอดดแลวก็ตาม รีเลชันนั้นก็อาจก็ยังมีปญหาที่เกิดจากความสัมพันธระหวางแอททริบิวตแบบหลาย
คาปรากฏอยูอ กี ซึ่งปญหาดังกลาวนี้กอใหเกิดความซ้ําซอนของขอมูลไดเชนเดียวกับที่พบในรูปแบบที่เปน
บรรทัดฐานขัน้ ทีผ่ า น ๆ มา
ดังนัน้ รูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 4 (Fourth Normal Form : 4NF) จึงเปนขั้นตอนถัดมาในการแก
ไขปญหาความซ้ําซอนของขอมูลที่พบในรีเลชัน ซึ่งในขั้นตอนนี้จะใหความสําคัญกับรีเลชันที่ประกอบดวยแอ
ททริบิวตอยางนอยสามแอททริบิวต และมีความสัมพันธระหวางแอททริบิวตแบบหลายคา

1. คุณสมบัติของรูปแบบที่เปนบรรทัดฐานขั้นที่ 4
รีเลชันใด ๆ จะมีคุณสมบัติอยูในรูปแบบที่เปนบรรทัดฐานขั้นที่ 4 ก็ตอ เมือ่
1. รีเลชันนัน้ มีคณ
ุ สมบัตอิ ยูใ นรูปแบบทีเ่ ปนบรรทัดฐานของบอยสและคอดดแลว
2. รีเลชันนั้นตองเปนรีเลชันที่ไมมีความสัมพันธระหวางแอททริบิวตแบบหลายคา

2. ขั้นตอนการจัดทํารีเลชันใหเปนรูปแบบที่เปนบรรทัดฐานขั้นที่ 4
เพื่อแสดงใหเห็นถึงการจัดทํารีเลชันใหเปนรูปแบบที่เปนบรรทัดฐานขั้นที่ 4 ในที่นี้ขอนําตัว
อยางรีเลชันมาประกอบดังนี้
รีเลชันการสอน-การปรึกษาประกอบดวย 3 แอททริบิวต คือ แอททริบิวตรหัสอาจารย รหัสชุด
วิชา ทีส่ อน และรหัสนักศึกษาในการปรึกษา โดยมีรายละเอียดดังนี้
รหัสอาจารย รหัสชุดวิชาทีส่ อน รหัสนักศึกษาในการปรึกษา
Q1011 999211 41010943
Q1011 999211 41013780
Q1035 729101 41012451
Q1035 729104 41012451
Q1035 999211 41012451
Q1059 729111 41010703
Q1059 729111 41013327
Q1061 729103 41012147
ภาพที่ 4.19 รีเลชันการสอน-การปรึกษา
รีเลชันการสอน-การปรึกษามีแอททริบิวตรหัสอาจารย รหัสชุดวิชาที่สอน และรหัสนัก
ศึกษาในการปรึกษาประกอบกันเปนคียห ลัก
อาจารยแตละคนจะสอนอยางนอย 1 ชุดวิชา โดยบางคนอาจสอนชุดวิชาเดียวกันก็ได
อาจารยบางคนอาจมีนักศึกษาในการปรึกษาไดมากกวา 1 คน
$%&
รหัสนักศึกษาในการปรึกษากับรหัสชุดวิชาที่สอนไมมีความสัมพันธกันเลย
จากรีเลชันการสอน-การปรึกษาจะพบวา เกิดปญหาความซ้าํ ซอนของขอมูลในรีเลชันดังนีค้ อื
1. การปรับปรุงขอมูลใด ๆ จะตองทําซ้ําหลายแหง ทําใหสน้ิ เปลืองเวลา รวมทั้งอาจทําการแกไขขอ
มูลไดไมครบถวนและถูกตองทุกรายการก็ได ตัวอยางเชน การแกไขรหัสอาจารยจาก Q1035 เปน Q1073
2. การเพิ่มเติมขอมูลในรีเลชันไมสามารถทําได ตัวอยางเชน หากรหัสอาจารย Q1061 ตองการเพิม่
ขอมูลรหัสชุดวิชาที่สอน คือ 172596 จะไมสามารถเพิ่มเติมขอมูลเขามาในรีเลชันนี้ได เนื่องจากยังไมปรากฏ
ขอมูลเพิ่มในแอททริบิวตรหัสนักศึกษาในการปรึกษา คาของรหัสนักศึกษาในการปรึกษาจึงเปนคาวาง ทําให
ไมอาจเพิ่มเติมขอมูลลงในรีเลชันได เพราะแอททริบิวตที่เปนสวนของคียหลักจะมีคาวางไมได
3. การลบขอมูลออกจากรีเลชันอาจทําใหขอมูลบางสวนสูญหายไปจากฐานขอมูล ตัวอยางเชน หาก
รหัสนักศึกษาในการปรึกษา คือ 41012147 ลาออก ขอมูลที่เกี่ยวของจะถูกลบไปทั้งทูเพิล ดังนัน้ ขอมูลรหัส
ชุดวิชา 729103 และรหัสอาจารย Q1061 ซึ่งมีเพียงแหงเดียวในฐานขอมูลก็จะสูญหายไปดวย
เพื่อขจัดปญหาความซ้ําซอนของขอมูลที่เกิดขึ้นในรีเลชันจึงตองจัดทํารีเลชันใหเปนรูปแบบที่เปน
บรรทัดฐาน โดยลําดับแรก คือ การตรวจสอบรีเลชันการสอน-การปรึกษาวา มีคุณสมบัติอยูในรูปแบบที่เปน
บรรทัดฐานขัน้ ใดกอนทีจ่ ะทําใหเปนรูปแบบทีเ่ ปนบรรทัดฐานในขัน้ ตอไป
จากการตรวจสอบพบวา รีเลชันการสอน-การปรึกษามีคณ ุ สมบัตอิ ยูใ นรูปแบบทีเ่ ปนบรรทัดฐานของ
บอยสและคอดดแลว เนือ่ งจาก
รีเลชันการสอน-การปรึกษามีคณ ุ สมบัตอิ ยูใ นรูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 1 แลว
เนื่องจากทุกแอททริบิวตในแตละทูเพิลมีคาของขอมูลเพียงคาเดียว
รีเลชันการสอน-การปรึกษามีคณ ุ สมบัตอิ ยูใ นรูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 2 แลว
เนือ่ งจากทุกแอททริบวิ ตในรีเลชันการสอน-การปรึกษาเปนคียผ สมทีม่ คี ณ ุ สมบัตเิ ปนคียห ลัก ดัง
นัน้ จึงไมมีความสัมพันธระหวางแอททริบิวตแบบบางสวนเกิดขึ้น
รีเลชันการสอน-การปรึกษามีคณ ุ สมบัตอิ ยูใ นรูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 3 แลว
เนือ่ งจากในรีเลชันการสอน-การปรึกษาไมมีแอททริบิวตอื่นที่ไมใชคียหลัก ดังนัน้ จึงไมมีความ
สัมพันธระหวาง แอททริบิวตแบบ Transitive เกิดขึน้
รีเลชันการสอน-การปรึกษามีคณ ุ สมบัตอิ ยูใ นรูปแบบทีเ่ ปนบรรทัดฐานของบอยสและ
คอดดแลว เนือ่ งจากทุกแอททริบวิ ตในรีเลชันการสอน-การปรึกษาเปนคียผ สมทีม่ คี ณุ สมบัตเิ ปน
คียหลัก ดังนัน้ จึงไมมี แอททริบิวตใดในรีเลชันที่สามารถระบุคาของแอททริบิวตที่เปนคียหลัก
หรือสวนใดสวนหนึ่งของแอททริบิวตที่ประกอบกันเปนคียหลักได
ลําดับถัดมา คือ การตรวจสอบรีเลชันการสอน-การปรึกษาวาเปนรีเลชันที่มีความสัมพันธระหวาง
แอททริบิวตแบบหลายคาหรือไม
จากการตรวจสอบพบวา รีเลชันการสอน-การปรึกษามีความสัมพันธระหวางแอททริบิวตแบบหลาย
คา ดังนี้
รหัสอาจารย รหัสชุดวิชาที่สอน
$%'
รหัสอาจารย รหัสนักศึกษาในการปรึกษา
หมายความวา หากระบุคาของรหัสอาจารยหนึ่งคาก็จะสามารถทราบรหัสชุดวิชาที่สอนไดหลายคา
เชน ถาระบุคาของรหัสอาจารย คือ Q1035 จะทําใหทราบคาของรหัสชุดวิชาที่สอน คือ 729101, 729104 และ
999211 และในขณะเดียวกัน หากระบุคาของรหัสอาจารยหนึ่งคาก็จะสามารถทราบรหัสนักศึกษาใน การ
ปรึกษาไดหลายคา เชน ถาระบุคาของรหัสอาจารย คือ Q1059 จะทําใหทราบคาของรหัสนักศึกษาใน การ
ปรึกษา คือ 41010703 และ 41013327
ดังนั้นจึงกลาวไดวา รีเลชันการสอน-การปรึกษาไมมีคุณสมบัติอยูในรูปแบบที่เปนบรรทัดฐานขั้นที่ 4

ภาพที่ 4.20 การจําแนกรีเลชันการสอน-การปรึกษา


การทีร่ เี ลชันการสอน-การปรึกษาเกิดความสัมพันธระหวางแอททริบิวตแบบหลายคา เนื่องจากมี
การนําแอททริบิวตสามแอททริบิวต คือ รหัสอาจารย รหัสชุดวิชาที่สอน และ รหัสนักศึกษาในการปรึกษา มา
ไวในรีเลชันเดียวกัน โดยแอททริบิวตรหัสอาจารยมีความสัมพันธกับแอททริบิวตรหัสชุดวิชาที่สอนและรหัส
นักศึกษาในการปรึกษาเทานัน้ หากทวาแอททริบิวตรหัสชุดวิชาที่สอนและรหัสนักศึกษาในการปรึกษาไมมี
ความสัมพันธตอ กันเลย เมื่อทั้งสามแอททริบิวตมาปรากฏอยูในรีเลชันเดียวกัน จึงทําใหเกิดคาของขอมูลที่
ซ้าํ ซอนสงผลใหเกิดปญหาในการปรับปรุง การเพิม่ หรือการลบ ขอมูลได
$%(
ดังนัน้ เพื่อขจัดปญหาความสัมพันธระหวางแอททริบิวตแบบหลายคาที่เกิดขึ้น จึงตองทําการจําแนก
รีเลชันการสอน-การปรึกษาออกเปน 2 รีเลชันยอย คือ รีเลชันรหัสอาจารย-รหัสชุดวิชา และรีเลชันรหัส
อาจารย-รหัสนักศึกษา
รีเลชันรหัสอาจารย-รหัสชุดวิชา ประกอบดวย แอททริบิวตรหัสอาจารย และรหัสชุด
วิชาทีส่ อน โดยมีแอททริบิวตรหัสอาจารย เปนคียห ลัก
รีเลชันรหัสอาจารย-รหัสนักศึกษา ประกอบดวย แอททริบิวตรหัสอาจารย และรหัสนัก
ศึกษาในการปรึกษา โดยมีแอททริบิวตรหัสอาจารย เปนคียห ลัก
ทั้งนี้จากที่กลาวมาขางตนอาจสรุปไดวา ความสัมพันธระหวางแอททริบิวตแบบฟงกชันเปนลักษณะ
เฉพาะอยางหนึ่งของความสัมพันธระหวางแอททริบิวตแบบหลายคา หากทวาในความสัมพันธระหวาง
แอททริบิวตแบบฟงกชัน คียหลักหรือ Determinant หนึ่งคาสามารถระบุคาของ Dependent หรือแอททริบิวต
อืน่ ๆ ไดเพียงคาเดียวเทานัน้ ขณะที่ความสัมพันธระหวางแอททริบิวตแบบหลายคาคียหลักหรือ Determinant
หนึ่งคาสามารถระบุคาของ Dependent หรือแอททริบิวตอื่น ๆ ไดหลายคา

เรื่องที่ 4.2.6 รูปแบบที่เปนบรรทัดฐานขั้นที่ 5


ในกระบวนการทําใหเปนรูปแบบที่เปนบรรทัดฐานตั้งแตขั้นที่ 1 มาจนถึงขั้นที่ 4 จะพบวา เพือ่ แกไข
ปญหาความซ้ําซอนของขอมูลที่ปรากฏในรีเลชัน มักจะทําการจําแนกรีเลชันออกเปนรีเลชันยอย (projection)
ซึ่งจะทําใหไดรีเลชันใหมอยางนอย 2 รีเลชันยอย และในทุกครัง้ ของการจําแนกรีเลชันออกเปนรีเลชันยอย สิง่
สําคัญที่ควรคํานึงถึงเสมอ คือ เมือ่ ทําการจําแนกรีเลชันออกเปนรีเลชันยอยแลว หากนํารีเลชันยอยที่ถูก
จําแนกมารวมกันจะตองไดรีเลชันกลับไปเหมือนเชนเดิมเสมอ นัน่ คือ จะตองไมมีขอมูลทูเพิลใดเกินมาจาก
รีเลชันเดิม (no spurious tuple) หรือไมมีขอมูลทูเพิลใดสูญหายไปจากรีเลชันเดิม
โดยทั่วไป กระบวนการทําใหเปนรูปแบบที่เปนบรรทัดฐานมักทําจนกระทั่งรีเลชันมีคุณสมบัติอยูใน
รูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 3 ซึ่งหากยังพบปญหาความซ้ําซอนของขอมูลหลงเหลืออยูอีกจึงดําเนินการทํา
ใหรเี ลชันมีคณ ุ สมบัตอิ ยูใ นรูปแบบทีเ่ ปนบรรทัดฐานของบอยสและคอดด หรือรูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 4
ซึ่งมักพบไดนอยมาก จากนั้นจึงทําการตรวจสอบคุณสมบัติของรีเลชันอีกครั้งดวยการจัดทําใหเปนรูปแบบที่
เปนบรรทัดฐานขัน้ ที่ 5 เพื่อใหเกิดความมั่นใจวา รีเลชันมีปญหาความซ้ําซอนของขอมูลหลงเหลืออยูนอยมาก
หรือแทบจะไมปรากฏอยูเลย
ดังนัน้ รูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 5 (Fifth Normal Form : 5NF) จึงเปนขั้นตอนสุดทายใน
กระบวนการทําใหเปนรูปแบบทีเ่ ปนบรรทัดฐาน ซึ่งเปนการแกไขปญหาความซ้ําซอนของขอมูลที่ ปรากฏ
ในรีเลชัน หากรีเลชันใดมีคุณสมบัติอยูในรูปแบบที่เปนบรรทัดฐานขั้นที่ 5 แลวก็แทบจะรับรองไดวา ขอมูลในรี
เลชันนั้นมีความถูกตองและสมบูรณ จนแทบจะไมมีปญหาความซ้ําซอนของขอมูลหลงเหลืออยู
ทั้งนี้ นิยามคุณสมบัติของรูปแบบที่เปนบรรทัดฐานขั้นที่ 5 จะมีขอบเขตครอบคลุมคุณสมบัติของรูป
แบบที่เปนบรรทัดฐานที่ต่ํากวาทั้งหมด โดยไมระบุวา รีเลชันนั้นจะตองมีคุณสมบัติอยูในรูปแบบที่เปนบรรทัด
ฐานขัน้ ที่ 4 หรือรูปแบบทีเ่ ปนบรรทัดฐานขัน้ ทีต่ าํ่ กวา
$%)
1. คุณสมบัติของรูปแบบที่เปนบรรทัดฐานขั้นที่ 5
รีเลชันใด ๆ จะมีคุณสมบัติอยูในรูปแบบที่เปนบรรทัดฐานขั้นที่ 5 หรือ Projection-Join Normal
Form (PJ/NF) ก็ตอ เมือ่
1. รีเลชันนัน้ ๆ มีความสัมพันธระหวางแอททริบิวตแบบ Join และรีเลชันยอย ๆ ที่จําแนกออกมา
ตองมีคียคูแขงของรีเลชันเดิมอยูดวยเสมอ หรือ
2. รีเลชันนัน้ ๆ ไมมีความสัมพันธระหวางแอททริบิวตแบบ Join

2. ขั้นตอนการจัดทํารีเลชันใหเปนรูปแบบที่เปนบรรทัดฐานขั้นที่ 5
เพื่อแสดงใหเห็นถึงการจัดทํารีเลชันใหเปนรูปแบบที่เปนบรรทัดฐานขั้นที่ 5 ในที่นี้ขอนํา ตัวอยาง
รีเลชันมาประกอบดังนี้
- รีเลชันนักศึกษาประกอบดวย แอททริบิวตชื่อนักศึกษา ชื่ออาจารยที่ปรึกษา และวิชาเอก โดยมีแอ
ททริบิวตชื่อนักศึกษา ชื่ออาจารยที่ปรึกษา และวิชาเอก ประกอบกันเปนคียห ลัก
ชือ่ นักศึกษา ชือ่ อาจารยทป่ี รึกษา วิชาเอก
สมชาย พลจันทร สัมพันธ เย็นสําราญ สถิติ
สุทิศา พินิจไพฑูรย ศิริภัทรา เหมือนมาลัย คณิตศาสตร
ณัฐพร ประคองเก็บ เมธี ปยะคุณ สถิติ
นพดล ทับทิมทอง ศิริชัย ศรีพรหม คณิตศาสตร
มัทนา พินิจไพฑูรย สัมพันธ เย็นสําราญ สถิติ
สมชาย พลจันทร ศิริภัทรา เหมือนมาลัย คณิตศาสตร
ภาพที่ 4.21 รีเลชันนักศึกษา
จากภาพจะพบวา เกิดปญหาความซ้าํ ซอนของขอมูลในรีเลชันดังนีค้ อื การปรับปรุงขอมูลใด ๆ จะ
ตองทําซ้ําหลายแหง ทําใหสน้ิ เปลืองเวลา รวมทั้งอาจทําการแกไขขอมูลไดไมครบถวนและถูกตองทุกรายการ
ก็ได ตัวอยางเชน การแกไขขอมูลชื่ออาจารยที่ปรึกษาจาก สัมพันธ เย็นสําราญ เปน จันทนา พรหมศิริ
นอกจากนี้ การลบขอมูลออกจากรีเลชันอาจทําใหขอมูลบางสวนสูญหายไปจากฐานขอมูล ตัวอยางเชน หาก
นักศึกษาชื่อ นภดล ทับทิมทอง ลาออก ขอมูลที่เกี่ยวของจะถูกลบไปทั้งทูเพิล ดังนัน้ ขอมูลชือ่ อาจารย
ที่ปรึกษา ศิริชัย ศรีพรหม ซึ่งมีเพียงแหงเดียวในฐานขอมูลก็จะสูญหายไปดวย
เพื่อขจัดปญหาความซ้ําซอนของขอมูลที่เกิดขึ้นในรีเลชันจึงตองจัดทํารีเลชันใหเปนรูปแบบที่เปน
บรรทัดฐาน โดยลําดับแรก คือ การตรวจสอบรีเลชันนักศึกษาวา มีคุณสมบัติอยูในรูปแบบที่เปนบรรทัดฐานใด
กอนที่จะทําใหเปนรูปแบบที่เปนบรรทัดฐานในขั้นตอไป
จากการตรวจสอบพบวา รีเลชันนักศึกษามีคณ ุ สมบัตอิ ยูใ นรูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 4 แลว
เนือ่ งจาก
1. รีเลชันนักศึกษามีคณุ สมบัตอิ ยูใ นรูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 1 แลว เนื่องจากทุกแอททริบิวต
ในแตละทูเพิลมีคาของขอมูลเพียงคาเดียว
$%*
2. รีเลชันนักศึกษามีคณ ุ สมบัตอิ ยูใ นรูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 2 แลว เนื่องจากทุกแอททริบิวต
ในรีเลชันนักศึกษาเปนคียผ สมทีม่ คี ณ ุ สมบัตเิ ปนคียห ลัก ดังนัน้ จึงไมมีความสัมพันธระหวาง แอททริบิวตแบบ
บางสวนเกิดขึน้
3. รีเลชันนักศึกษามีคณ ุ สมบัตอิ ยูใ นรูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 3 แลว เนือ่ งจากในรีเลชัน นัก
ศึกษาไมมีแอททริบิวตอื่นที่ไมใชคียหลัก ดังนัน้ จึงไมมีความสัมพันธระหวางแอททริบิวตแบบ Transitive เกิด
ขึ้น
4. รีเลชันนักศึกษามีคณ ุ สมบัตอิ ยูใ นรูปแบบทีเ่ ปนบรรทัดฐานของบอยสและคอดดแลว เนื่องจากทุก
แอททริบิวตในรีเลชันนักศึกษาเปนคียผสมที่มีคุณสมบัติเปนคียหลัก ดังนัน้ จึงไมมีแอททริบิวตใดในรีเลชันที่
สามารถระบุคาของแอททริบิวตที่เปนคียหลัก หรือสวนใดสวนหนึ่งของแอททริบิวตที่ประกอบกันเปนคียหลัก
ได
5.รีเลชันนักศึกษามีคณ ุ สมบัตอิ ยูใ นรูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 4 แลว เนือ่ งจากรีเลชัน นักศึกษา
เปนรีเลชันทีม่ คี ณ
ุ สมบัตอิ ยูใ นรูปแบบทีเ่ ปนบรรทัดฐานของบอยสและคอดดแลว และไมมีความสัมพันธ
ระหวางแอททริบิวตแบบหลายคา
ลําดับถัดมา คือ การตรวจสอบวา รีเลชันนักศึกษามีความสัมพันธระหวางแอททริบิวตแบบ Join โดย
รีเลชันยอย ๆ ที่จําแนกออกมามีคียคูแขงของรีเลชันเดิมอยูดวยเสมอ หรือไม
จากการตรวจสอบพบวา รีเลชันนักศึกษาสามารถจําแนกได 3 รีเลชันยอย คือ รีเลชันที่ 1 รีเลชันที่ 2
และรีเลชันที่ 3
- รีเลชันที่ 1 ประกอบดวยแอททริบิวตชื่อนักศึกษา และชื่ออาจารยที่ปรึกษา โดยมีแอททริบิวตชื่อ
นักศึกษา และชื่ออาจารยที่ปรึกษา ประกอบกันเปนคียห ลัก
- รีเลชันที่ 2 ประกอบดวยแอททริบิวตชื่ออาจารยที่ปรึกษา และวิชาเอก โดยมีแอททริบิวตชื่อ
อาจารยที่ปรึกษา และวิชาเอก ประกอบกันเปนคียห ลัก
- รีเลชันที่ 3 ประกอบดวยแอททริบิวตชื่อนักศึกษา และวิชาเอก โดยมีแอททริบิวตชื่อนักศึกษา และ
วิชาเอก ประกอบกันเปนคียห ลัก
เมื่อนํารีเลชันยอยทั้งสามมาเชื่อมโยงกันจะพบวา มีขอ มูลเหมือนในรีเลชันเดิม จึงกลาวไดวา รีเลชัน
ยอยทั้งสามมีคุณสมบัติอยูในรูปแบบที่เปนบรรทัดฐานขั้นที่ 5 แลว
$%!

ภาพที่ 4.22 ความสัมพันธระหวางแอททริบิวตแบบ Join ของรีเลชันนักศึกษา


เพื่อแสดงใหเห็นถึงการจัดทํารีเลชันใหเปนรูปแบบที่เปนบรรทัดฐานขั้นที่ 5 ที่ชัดเจนยิ่งขึ้น ในที่นี้ขอ
นําตัวอยางรีเลชันมาประกอบอีกลักษณะหนึง่ ดังนี้
รีเลชันการสอนประกอบดวย แอททริบิวตรหัสชุดวิชา หมูเรียน และชือ่ อาจารยผสู อน โดยมี แอททริบิวต
รหัสชุดวิชา หมูเรียน และชือ่ อาจารยผสู อน ประกอบกันเปนคียห ลัก
$%"

รหัสชุดวิชา หมูเ รียน ชือ่ อาจารยผสู อน


729101 700 ศิริชัย ศรีพรหม
729111 711 จันทนา พรหมศิริ
729111 712 ศิริชัย ศรีพรหม
729211 700 ศิริภัทรา เหมือนมาลัย
729211 700 ศิริชัย ศรีพรหม
ภาพที่ 4.23 รีเลชันการสอน
จากภาพจะพบวา เกิดปญหาความซ้าํ ซอนของขอมูลในรีเลชันดังนีค้ อื การลบขอมูลออกจากรีเลชัน
อาจทําใหขอมูลบางสวนสูญหายไปจากฐานขอมูล ตัวอยางเชน หากปดการสอนรหัสชุดวิชา 729101 หมู 700
ขอมูลที่เกี่ยวของจะถูกลบไปทั้งทูเพิล ดังนัน้ ขอมูลชือ่ อาจารยผสู อน ศิริชัย ศรีพรหม ซึ่งมีเพียงแหงเดียวใน
ฐานขอมูลก็จะสูญหายไปดวย
เพื่อขจัดปญหาความซ้ําซอนของขอมูลที่เกิดขึ้นในรีเลชันจึงตองจัดทํารีเลชันใหเปนรูปแบบที่เปน
บรรทัดฐาน โดยลําดับแรก คือ การตรวจสอบรีเลชันการสอนวา มีคุณสมบัติอยูในรูปแบบที่เปนบรรทัดฐานใด
กอนที่จะทําใหเปนรูปแบบที่เปนบรรทัดฐานในขั้นตอไป
จากการตรวจสอบพบวา รีเลชันการสอนมีคณ ุ สมบัตอิ ยูใ นรูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 4 แลว
เนือ่ งจาก
1. รีเลชันการสอนมีคณ ุ สมบัตอิ ยูใ นรูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 1 แลว เนื่องจากทุกแอททริบิวต
ในแตละทูเพิลมีคาของขอมูลเพียงคาเดียว
2. รีเลชันการสอนมีคณ ุ สมบัตอิ ยูใ นรูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 2 แลว เนื่องจากทุกแอททริบิวต
ในรีเลชันการสอนเปนคียผ สมทีม่ คี ณ ุ สมบัตเิ ปนคียห ลัก ดังนัน้ จึงไมมีความสัมพันธระหวางแอททริบิวตแบบ
บางสวนเกิดขึน้
3. รีเลชันการสอนมีคณ ุ สมบัตอิ ยูใ นรูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 3 แลว เนือ่ งจากในรีเลชัน การ
สอนไมมีแอททริบิวตอื่นที่ไมใชคียหลัก ดังนัน้ จึงไมมีความสัมพันธระหวางแอททริบิวตแบบ Transitive เกิด
ขึ้น
4. รีเลชันการสอนมีคณ ุ สมบัตอิ ยูใ นรูปแบบทีเ่ ปนบรรทัดฐานของบอยสและคอดดแลว เนื่องจากทุก
แอททริบวิ ตในรีเลชันการสอนเปนคียผ สมทีม่ คี ณ ุ สมบัตเิ ปนคียห ลัก ดังนัน้ จึงไมมีแอททริบิวตใดในรีเลชันที่
สามารถระบุคาของแอททริบิวตที่เปนคียหลัก หรือสวนใดสวนหนึ่งของแอททริบิวตที่ประกอบกันเปน คีย
หลักได
5. รีเลชันการสอนมีคณ ุ สมบัตอิ ยูใ นรูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 4 แลว เนือ่ งจากรีเลชันการสอน
เปนรีเลชันทีม่ คี ณ
ุ สมบัตอิ ยูใ นรูปแบบทีเ่ ปนบรรทัดฐานของบอยสและคอดดแลว และไมมีความสัมพันธ
ระหวางแอททริบิวตแบบหลายคา
ลําดับถัดมา คือ การตรวจสอบวา รีเลชันการสอนมีความสัมพันธระหวางแอททริบิวตแบบ Join โดย
รีเลชันยอย ๆ ที่จําแนกออกมามีคียคูแขงของรีเลชันเดิมอยูดวยเสมอ หรือไม
$&#
จากการตรวจสอบพบวา รีเลชันการสอนสามารถจําแนกได 3 รีเลชันยอย คือ รีเลชันที่ 1 รีเลชันที่ 2
และรีเลชันที่ 3
- รีเลชันที่ 1 ประกอบดวยแอททริบิวตรหัสชุดวิชา และหมูเรียน โดยมีแอททริบิวตรหัสชุดวิชา และ
หมูเรียน ประกอบกันเปนคียห ลัก
- รีเลชันที่ 2 ประกอบดวยแอททริบิวตหมูเรียน และชือ่ อาจารยผสู อน โดยมีแอททริบิวตหมูเรียน
และชือ่ อาจารยผสู อน ประกอบกันเปนคียห ลัก
- รีเลชันที่ 3 ประกอบดวยแอททริบิวตรหัสชุดวิชา และชือ่ อาจารยผสู อน โดยมีแอททริบิวตรหัสชุด
วิชา และชือ่ อาจารยผสู อน ประกอบกันเปนคียห ลัก

ภาพที่ 4.24 ความสัมพันธระหวางแอททริบิวตแบบ Join ของรีเลชันการสอน


เมื่อนํารีเลชันยอยทั้งสามมาเชื่อมโยงกันจะพบวา มีทูเพิลที่เกินมาจากรีเลชันเดิมหนึ่งทูเพิล เรียกวา
Spurious Tuple
$&$
ดังนัน้ อาจกลาวไดวา ในการทํารีเลชันใหมีคุณสมบัติอยูในรูปแบบที่เปนบรรทัดฐานขั้นที่ 5 เมื่อทํา
การจําแนกรีเลชันออกมาและเชื่อมโยงรีเลชันยอยทั้งหมดเขาดวยกันแลว หากพบวา มีขอมูลที่แตกตางไป
จากรีเลชันเดิมก็ไมควรจําแนกรีเลชันนั้นออกมา โดยใหถือวา รีเลชันเดิมนั้นมีคุณสมบัติอยูในรูปแบบที่เปน
บรรทัดฐานขัน้ ที่ 5 แลว
ทั้งนี้โดยทั่วไปในทางปฏิบัติพบวา หากรีเลชันใดมีคุณสมบัติอยูในรูปแบบที่เปนบรรทัดฐานขั้นที่ 3
หรือรูปแบบทีเ่ ปนบรรทัดฐานของบอยสและคอดดแลว เมื่อทําการตรวจสอบรีเลชันจะพบวา รีเลชันนั้นมักมี
คุณสมบัตอิ ยูใ นรูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 5 ดวย หากทวายกเวนในกรณีที่ รีเลชันนั้นมีปญหาที่เกิดจาก
ความสัมพันธระหวางแอททริบิวตแบบหลายคาปรากฏอยู จะตองดําเนินการใหรีเลชันนั้นมีคุณสมบัติอยูใน
รูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 4 เสียกอน ดังนัน้ การทําใหรีเลชันมีคุณสมบัติอยูในรูปแบบที่เปนบรรทัดฐาน
จะไปสิน้ สุดในรูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 5 เสมอ ดังนัน้ อาจสรุปไดวา ความสัมพันธระหวางแอททริบิวต
แบบ Join มีคุณสมบัติครอบคลุมกวาความสัมพันธระหวางแอททริบิวตแบบฟงกชันและความสัมพันธระหวาง
แอททริบิวตแบบหลายคา

เรื่องที่ 4.2.7 ขอควรคํานึงในการทําใหเปนรูปแบบที่เปนบรรทัดฐาน


การทําใหเปนรูปแบบทีเ่ ปนบรรทัดฐานเปนกระบวนการเพือ่ ลดความซ้าํ ซอนของขอมูล และแกไข
ปญหาเกี่ยวกับการปรับปรุง การเพิม่ หรือการลบขอมูล ซึง่ กระบวนการทําใหเปนรูปแบบทีเ่ ปนบรรทัดฐานจะ
ใชเทคนิควิธีที่เรียกวา เทคนิค Decomposition จําแนกรีเลชันเดิมออกเปนรีเลชันยอยโดยคํานึงถึงหลักการ
พืน้ ฐานวา รีเลชันยอยที่จําแนกออกมานั้นเมื่อนํามารวมเขาดวยกันจะตองไมมี ขอมูลสูญหายไปหรือเกินจาก
รีเลชันเดิม
เนือ่ งจากการทําใหเปนรูปแบบทีเ่ ปนบรรทัดฐานเปนเทคนิคในการตรวจสอบและวิเคราะหความ
สัมพันธระหวางแอททริบิวตภายในรีเลชันนั้น โดยไมอาจทําการตรวจสอบความสัมพันธระหวางแอททริบิวตที่
อยูต า งรีเลชันได ดังนัน้ สิง่ ทีค่ วรคํานึงในการทําใหเปนรูปแบบทีเ่ ปนบรรทัดฐาน คือ การจําแนกรีเลชันยอย
มากเกินไป (Overnormalization) และการ Denormalizatuion

1. การจําแนกรีเลชันยอยมากเกินไป
การจําแนกรีเลชันยอยมากเกินไป หมายถึง การจําแนกรีเลชันออกเปนรีเลชันยอยมากเกินกวา
ความจําเปน
โดยทั่วไปแลวในการออกแบบฐานขอมูลระดับแนวคิด ผูออกแบบจะพยายามทําการวิเคราะหให
รีเลชันมีคณุ สมบัตอิ ยูใ นรูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 3 หรือรูปแบบทีเ่ ปนบรรทัดฐานของบอยสและคอดด
ซึง่ อาจมีบา งในบางกรณีทจ่ี าํ เปนตองดําเนินการตอไป จนกระทั่งรีเลชันมีคุณสมบัติอยูในรูปแบบที่เปน
บรรทัดฐานขัน้ ที่ 4 หรือขั้นที่ 5 ซึ่งในทางปฏิบัติอาจเกิดขึ้นไดนอยมาก
หากทวาในบางครั้ง รีเลชันใด ๆ แมจะสามารถทําการจําแนกออกเปนรีเลชันยอยได แตก็ควรคง รูป
แบบรีเลชันนัน้ ไวในลักษณะเชนเดิม เนือ่ งจากการจําแนกรีเลชันออกเปนรีเลชันยอยมากเกินความจําเปน อาจ
กอใหเกิดผลเสียตอประสิทธิภาพในการทํางานของฐานขอมูลนัน้ เชน อาจทําใหใชเสียเวลาเพื่อการคนหาขอ
มูลมากขึ้น เปนตน
$&%
ุ สมบัตอิ ยูใ นรูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 3 แลว และสามารถ
ตัวอยางเชน รีเลชันนักศึกษามีคณ
จําแนกออกเปนรีเลชันยอยได 3 รีเลชัน โดยไมผิดหลักของกระบวนการทําใหเปนรูปแบบที่เปนบรรทัดฐาน
แตก็ไมควรจําแนกรีเลชันนักศึกษาออกเปน 3 รีเลชันยอย เนื่องจากแตละรีเลชันยอยตางก็มีคียหลักหรือ

Determinant รวมกันเพียงหนึ่งแอททริบิวต คือ แอททริบิวตรหัสนักศึกษา และมีแอททริบิวตอื่น ๆ ที่ไมใชคีย


หลักหรือ Dependent เพียงหนึ่งแอททริบิวต การจําแนกรีเลชันนักศึกษาออกเปนรีเลชันยอยจึงกลาวไดวา
เปนการจําแนกรีเลชันยอยที่มากเกินกวาความจําเปน เพราะในการคนหาขอมูลตองเสียเวลามากขึน้ เพือ่ ทํา
การเชื่อมโยงขอมูลจากหลายรีเลชันยอยเขาดวยกัน
ภาพที่ 4.25 ตัวอยางการจําแนกรีเลชันยอยมากเกินไป

2. การ Denormalization
แมวาวัตถุประสงคหลักของกระบวนการทําใหเปนรูปแบบที่เปนบรรทัดฐานตั้งแตขั้นตอนที่ 1 มาจน
ถึงขั้นตอนที่ 5 คือ การแกไขปญหาความซ้ําซอนของขอมูลที่ปรากฏในรีเลชันใหเหลือนอยที่สุด ตลอดจนลด
ปญหาในเรื่องเกี่ยวกับการปรับปรุง การเพิม่ หรือการลบขอมูล ก็ตาม หากทวาในบางกรณี การจําแนกรีเลชัน
ออกเปนรีเลชันยอยอาจกอใหเกิดผลกระทบตอประสิทธิภาพในการคนหาหรือดําเนินการกับขอมูลได เพราะ
การเสียเวลาเพือ่ เชือ่ มโยงขอมูลจากรีเลชันตาง ๆ เขาดวยกัน อาจทําใหการประมวลผลลาชาและเกิดความ
เสียหายได ดังนัน้ ผูอ อกแบบฐานขอมูลจึงจําเปนตองทําการ Denormalization โดยคํานึงความสําคัญในเรื่อง
ประสิทธิภาพของการคนหาขอมูลมากกวาปญหาการซ้ําซอนของขอมูลเมื่อทําการปรับปรุง เพิ่มเติม หรือลบ
ขอมูล
การ Denormalization หมายถึง การที่รีเลชันใด ๆ ถูกออกแบบใหมีคุณสมบัติอยูในรูปแบบที่เปน
บรรทัดฐานขัน้ ต่าํ กวากฎเกณฑทก่ี าํ หนดไว ตัวอยางเชน รีเลชันนั้นควรถูกออกแบบใหมีคุณสมบัติอยูใน
รูปแบบทีเ่ ปนบรรทัดฐานขัน้ ที่ 3 แตผูออกแบบฐานขอมูลกําหนดใหรีเลชันนั้นมีคุณสมบัติอยูในรูปแบบที่เปน
บรรทัดฐานขัน้ ที่ 2 เทานัน้
$&&
ตัวอยางเชน การรวมแอททริบิวตรหัสวิชาเอกจากรีเลชันที่อยูนักศึกษาและแอททริบิวตชื่อวิชาเอก
จากรีเลชันวิชาเอก ไวเปนแอททริบิวตหนึ่งในรีเลชันนักศึกษาโดยใหชื่อวา แอททริบิวตวิชาเอก แทนที่จะทํา
การจําแนกเปนรีเลชันวิชาเอกเพือ่ ระบุถงึ รหัสวิชาเอกและชือ่ วิชาเอก ทั้งนี้ เนื่องจากมีจํานวนรหัสวิชาเอกไม
มากนัก คือ มี 2 รหัสวิชาเอกเทานัน้ เปนตน

ภาพที่ 4.26 ตัวอยางการ Denormalization


เนือ่ งจากการ Denormalization อาจกอใหเกิดปญหาในเรื่องที่เกี่ยวของกับความซ้ําซอนของขอมูล
เมือ่ ทําการปรับปรุง เพิ่มเติม และลบขอมูล ฉะนัน้ ในกรณีน้ี สิง่ ทีผ่ อู อกแบบฐานขอมูลควรคํานึงถึงก็คอื
การลดความซ้าํ ซอนของขอมูลและการแกไขปญหาในเรือ่ งเกีย่ วกับการปรับปรุง การเพิม่ หรือการลบขอมูล
สามารถทําไดดวยการทําใหรีเลชันมีคุณสมบัติอยูในรูปแบบที่เปนบรรทัดฐาน โดยปญหาดังกลาวไมอาจแกไข
ไดดวยการเพิ่มประสิทธิภาพของฮารดแวร ขณะที่ปญหาความลาชาจากการคนคืนขอมูลสามารถทําการแกไข
ไดดวยการเพิ่มประสิทธิภาพของฮารดแวร เพื่อใหการทํางานรวดเร็วมากยิ่งขึ้น ดังนัน้ หากการใชขอมูลใน
รีเลชันนั้นโดยสวนใหญเปนเรื่องเกี่ยวกับการคนหาขอมูล มากกวาการปรับปรุง การเพิม่ หรือการลบขอมูล ก็
สามารถจะทําการ Denormalization ไดเพือ่ เพิม่ ประสิทธิภาพการทํางานของฐานขอมูล

You might also like