ในการออกแบบฐานข้อมูลสำหรับตัวอย่างการศึกษา บริษัท มีหลายแผนก แต่ละแผนกมีพนักงานหลายคน และพนักงานแต่ละคนสามารถทำงานในโปรเจกต์ได้หลายโปรเจกต์ และโปรเจกต์หนึ่งสามารถมีพนักงานหลายคน หากต้องการออกแบบฐานข้อมูลให้เหมาะสม ควรพิจารณาอะไรที่สำคัญที่สุด?

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

เฉลยอธิบาย

2NF กำหนดให้คอลัมน์ที่ไม่ใช่คีย์ขึ้นต่อคีย์ประกอบทั้งหมด ไม่ใช่เพียงบางส่วน ดังนั้นคำตอบที่เหมาะที่สุดคือ “แยกข้อมูลพนักงานและโครงการออก เพราะบางคอลัมน์ขึ้นต่อเพียงส่วนหนึ่งของคีย์ประกอบ” ส่วนตัวลวงที่ใกล้เคียงที่สุดไม่ผ่านเพราะ คีย์เพิ่มไม่กำจัด partial dependency ของข้อมูลพนักงานและโครงการ

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

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