กรณีวิเคราะห์ฐานข้อมูล 7c14d2a842fc3d3be9ddcff899fd11890cccdcd7300701c04ded985c5fef8898: หากต้องออกแบบระบบ ควรคำนึงถึงความถูกต้อง ความปลอดภัย และผลกระทบเกี่ยวกับ สมมติว่าต้องการสร้างฐานข้อมูลสำหรับระบบห้องสมุด โดยต้องจัดเก็บข้อมูล เรื่องหนังสือ ประเภท ผู้แต่ง การยืมคืน และผู้ยืม ควรมีกี่ตาราง และตาราง 'การยืมคืน' ควรมีความสัมพันธ์แบบใดกับ 'หนังสือ' และ 'ผู้ยืม'?

5 ตาราง: หนังสือ ประเภท ผู้แต่ง การยืมคืน และผู้ยืม โดย 'การยืมคืน' มี Foreign Key ของทั้ง 'หนังสือ' และ 'ผู้ยืม'
3 ตาราง: หนังสือ ผู้ยืม และการยืมคืน โดยไม่ต้องแยกประเภทและผู้แต่ง
6 ตาราง เพื่อเก็บข้อมูลทุกส่วนแยกออกมา
2 ตาราง: หนังสือและการยืมคืน เก็บข้อมูลผู้ยืมในตารางหนังสือ

เฉลยอธิบาย

การออกแบบที่ดีตามหลักการทำให้เป็นมาตรฐานคือแยกข้อมูลตามประเภท ตาราง 'การยืมคืน' คือตาราง Junction Table ที่เชื่อมระหว่าง 'หนังสือ' และ 'ผู้ยืม' เพราะความสัมพันธ์เป็นหลายต่อหลาย (นักเรียนสามารถยืมหนังสือหลายเล่ม และหนังสือเล่มเดียวสามารถถูกยืมโดยผู้ยืมหลายคน) ตัวเลือก B ไม่แยกประเภทและผู้แต่งทำให้มีข้อมูลซ้ำซ้อน ตัวเลือก C ไม่มีตาราง ผู้ยืมแยกต่างหาก ตัวเลือก D มีตารางมากเกินไปและไม่จำเป็น

ข้อสอบอื่นในวิชาความรู้เกี่ยวกับระบบฐานข้อมูล (Database System) และ ระบบการบริหารจัดการข้อมูล (Database Management System)

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