บริษัทบัญชีต้องเก็บข้อมูล "บัญชี" (บัญชี_ID, ชื่อบัญชี, ประเภท, ยอดคงเหลือ) และ "รายการบัญชี" (รายการ_ID, บัญชี_ID, วันที่, จำนวนเงิน, สาขา, ชื่อสาขา) ข้อมูล "ชื่อสาขา" ควรเก็บอยู่ที่ใด เพราะเหตุใด

สร้างตาราง "สาขา" แยกต่างหาก เพื่อหลีกเลี่ยงความซ้ำซ้อน และใช้คีย์นอก "สาขา_ID" ในตาราง "รายการบัญชี"
เก็บในตาราง "บัญชี" เพราะบัญชีต้องสัมพันธ์กับสาขา
เก็บในตาราง "รายการบัญชี" เพราะแต่ละรายการเกิดขึ้นในสาขาที่แตกต่างกัน
รวมทั้งสองข้อมูลในตารางเดียว "บัญชีและรายการ" เพื่อความเรียบง่าย

เฉลยอธิบาย

ข้อมูลสาขาน่าจะมีการอ้างอิงซ้ำ ๆ ถ้าเก็บในตาราง "รายการบัญชี" จะเกิดความซ้ำซ้อน การสร้างตาราง "สาขา" แยกและอ้างอิงด้วยคีย์นอก "สาขา_ID" จะป้องกันความซ้ำซ้อนและสอดคล้องกับการทำให้ปกติ ตัวเลือก A สร้างความซ้ำซ้อน ตัวเลือก C ไม่เหมาะสมเพราะรายการหนึ่งสามารถอยู่ในสาขาต่างกัน ตัวเลือก D ละเมิดการทำให้ปกติ

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

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