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

ใส่ EmployeeID ในตาราง Customers โดยตั้งค่า UNIQUE
ใส่ CustomerID ในตาราง Employees โดยใช้ One-to-Many
สร้างตารางแยกสำหรับแต่ละลูกค้า โดยระบุพนักงานที่ดำเนินการ
สร้างตาราง Assignments เป็นตารางกลาง (Junction Table) เชื่อมระหว่าง Customers และ Employees โดยมี Many-to-Many ความสัมพันธ์

เฉลยอธิบาย

ความสัมพันธ์ Many-to-Many ที่ลูกค้าหนึ่งคนสามารถสัมพันธ์กับพนักงานหลายคน และพนักงานหนึ่งคนสามารถสัมพันธ์กับลูกค้าหลายคน ต้องใช้ตารางกลาง (Junction Table) เช่น Assignments โดยเก็บ CustomerID และ EmployeeID รวมถึงข้อมูลเพิ่มเติม ตัวเลือก B, C ผิดเพราะจะไม่สามารถแสดง Many-to-Many ได้อย่างถูกต้อง ตัวเลือก D ผิดเพราะไม่มีประสิทธิภาพและเกิด Redundancy

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

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