โรงพยาบาลแห่งหนึ่งพบว่าเมื่อลบข้อมูลแพทย์ออกจากระบบ ข้อมูลแผนกที่แพทย์นั้นสังกัดหายไปด้วย ปัญหานี้เรียกว่าอะไร และเกิดจากสาเหตุใด
กDeletion Anomaly เกิดจากการเก็บข้อมูลแผนกไว้ในตารางแพทย์โดยตรงโดยไม่แยกตาราง
ขUpdate Anomaly เกิดจากการไม่ตั้งค่า CASCADE UPDATE
คInsertion Anomaly เกิดจากการไม่กำหนด Default Value ให้กับฟิลด์แผนก
งReferential Integrity Violation เกิดจากการตั้งค่า Foreign Key ผิดพลาด
เฉลยอธิบาย
Deletion Anomaly เกิดขึ้นเมื่อการลบข้อมูลหนึ่งทำให้สูญเสียข้อมูลที่ไม่เกี่ยวข้องไปด้วย สาเหตุคือการเก็บข้อมูลแผนก (Department) ไว้ในตารางแพทย์โดยตรงแทนที่จะแยกออกเป็นตารางต่างหาก การแก้ไขคือแยกตาราง Department ออกและใช้ Foreign Key ตัวเลือก B เป็น Update Anomaly และ C เป็น Insertion Anomaly ส่วน D ไม่ใช่คำอธิบายตรงของการสูญเสียข้อเท็จจริงเรื่องแผนกจากการลบแถวแพทย์ ตัวเลือก A จึงถูกต้อง