กรณีวิเคราะห์ฐานข้อมูล 007f67e0002b88c3bf8df91eb0b464a0e6542c658c4d60196a807fbb57f32839: หากต้องออกแบบระบบ ควรคำนึงถึงความถูกต้อง ความปลอดภัย และผลกระทบเกี่ยวกับ ตารางพนักงานมีข้อมูล รหัสพนักงาน ชื่อ รหัสแผนก ชื่อแผนก และที่ตั้งแผนก พบว่าข้อมูลแผนกซ้ำกันในทุกแถวของพนักงานที่อยู่แผนกเดียวกัน ปัญหานี้เรียกว่าอะไร และควรแก้อย่างไร?
กปัญหา Deadlock แก้โดยการใช้ Lock Timeout
ขปัญหา Orphan Record แก้โดยการลบแถวที่ไม่มีความสัมพันธ์ออก
คปัญหา Data Type Mismatch แก้โดยการเปลี่ยนชนิดข้อมูลของคอลัมน์
งปัญหา Data Redundancy เกิดจากการไม่ทำ Normalization ควรแยกข้อมูลแผนกออกเป็นตารางต่างหาก
เฉลยอธิบาย
การที่ข้อมูลแผนกซ้ำกันในทุกแถวเรียกว่า Data Redundancy ซึ่งเกิดจากการไม่ทำ Normalization โดยข้อมูลชื่อแผนกและที่ตั้งแผนกขึ้นอยู่กับรหัสแผนก ไม่ใช่รหัสพนักงาน (ละเมิด 2NF/3NF) ควรแยกออกเป็นตารางแผนกต่างหาก ตัวเลือก A ผิดเพราะ Orphan Record คือแถวที่อ้างอิงข้อมูลที่ไม่มีอยู่จริงในตารางแม่ ตัวเลือก C ผิดเพราะ Deadlock เป็นปัญหาการล็อกพร้อมกัน ตัวเลือก D ผิดเพราะ Data Type Mismatch เป็นปัญหาชนิดข้อมูลไม่ตรงกัน