เมื่อออกแบบฐานข้อมูลระบบจองห้องพักโรงแรม พบว่าข้อมูลแขก เช่น เบอร์โทรศัพท์และอีเมล ถูกจัดเก็บซ้ำในหลายแถวของตารางการจอง วิธีใดแก้ไขปัญหาการซ้ำซ้อนของข้อมูลนี้ได้อย่างถูกต้องตามหลักการออกแบบฐานข้อมูล

สร้าง View สำหรับข้อมูลแขกแต่ละราย เพื่อกรองข้อมูลซ้ำออกก่อนนำไปแสดงผลในรายงาน
เพิ่มคอลัมน์ให้ตารางการจองเพื่อรองรับข้อมูลแขกหลายคนในแถวเดียว โดยใช้การแบ่งข้อมูลด้วยเครื่องหมายจุลภาค
แยกข้อมูลแขกออกเป็นตารางใหม่และเชื่อมความสัมพันธ์กับตารางการจองด้วย Foreign Key เพื่อให้เป็นไปตามหลัก Normalization
ใช้ Trigger ตรวจสอบและลบข้อมูลที่ซ้ำกันออกโดยอัตโนมัติทุกครั้งที่มีการบันทึกข้อมูลการจองใหม่

เฉลยอธิบาย

การแก้ปัญหาข้อมูลซ้ำซ้อน (Data Redundancy) ตามหลักการออกแบบฐานข้อมูลที่ถูกต้องคือการทำ Normalization โดยแยกข้อมูลแขกออกเป็นตาราง Guest แล้วเชื่อมกับตาราง Reservation ด้วย Foreign Key ซึ่งช่วยลดการซ้ำซ้อน รักษาความถูกต้องของข้อมูล และทำให้การแก้ไขข้อมูลแขกทำได้เพียงจุดเดียว ส่วนตัวเลือกอื่นไม่ใช่การแก้ปัญหาที่ต้นเหตุ

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

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