ในการออกแบบฐานข้อมูลของโรงเรียนเพื่อติดตามผลสอบของนักเรียนในแต่ละวิชา ชุดตารางที่เหมาะสมที่สุดคือชุดใด

ตาราง นักเรียน (รหัสนักเรียน, ชื่อ, นามสกุล), ตาราง วิชา (รหัสวิชา, ชื่อวิชา, หน่วยกิต), ตาราง ผลสอบ (รหัสนักเรียน, รหัสวิชา, คะแนน, วันที่สอบ)
ตาราง นักเรียน (รหัสนักเรียน, ชื่อ, นามสกุล, ชื่อวิชา, คะแนน), ตาราง วิชา (รหัสวิชา, ชื่อวิชา, หน่วยกิต, คะแนนเต็ม)
ตาราง โรงเรียน (รหัสโรงเรียน, ชื่อโรงเรียน), ตาราง นักเรียน (รหัสนักเรียน, ชื่อ), ตาราง คะแนน (รหัสคะแนน, คะแนนรวม, เกรด)
ตาราง ผลสอบ (รหัสผลสอบ, ชื่อนักเรียน, ชื่อวิชา, คะแนน, หน่วยกิต, อาจารย์ผู้สอน, ห้องเรียน)

เฉลยอธิบาย

ตัวเลือก A ถูกต้องเพราะแบ่งตารางออกเป็น 3 ตารางที่สอดคล้องกับหลัก Normalization โดยตาราง นักเรียน และ วิชา เก็บข้อมูลพื้นฐานแยกกัน และตาราง ผลสอบ ทำหน้าที่เป็น Junction Table เชื่อมความสัมพันธ์แบบ Many-to-Many ระหว่างนักเรียนกับวิชา พร้อมเก็บคะแนนและวันที่สอบ ส่วนตัวเลือก B เกิด Data Redundancy เพราะเก็บชื่อวิชาในตารางนักเรียน ตัวเลือก C ขาดความเชื่อมโยงระหว่างนักเรียนกับวิชา และตัวเลือก D รวมทุกอย่างในตารางเดียวทำให้เกิดข้อมูลซ้ำซ้อนมาก

ข้อสอบอื่นในวิชาความรู้ความสามารถในการวิเคราะห์ ออกแบบ ฐานข้อมูล

ดูข้อสอบวิชานี้ทั้งหมด →