Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

One-to-One Relationship ใน DBMS

One-to-One (1:1) Relationship คือความสัมพันธ์ระหว่างอินสแตนซ์ของเอนทิตี้หนึ่ง กับอินสแตนซ์ของอีกเอนทิตี้หนึ่ง (หนึ่งต่อหนึ่ง ทั้งสองทาง)

การแทนความสัมพันธ์

ใน ER Diagram ใช้เส้นเชื่อมพร้อมเครื่องหมาย 1:1

ตัวอย่าง: Employee และ ID Card

  • พนักงาน (Employee) คนหนึ่ง ได้รับบัตรประจำตัว (ID Card) หนึ่งใบ
  • บัตรประจำตัว (ID Card) ใบหนึ่ง เป็นของพนักงานคนเดียว

เอนทิตี้: Employee และ ID_Card

การนำไปสู่ตาราง

สามารถทำได้ 2 แบบ:

  1. รวมในตารางเดียว: เพิ่มคอลัมน์ ID_Card_Number ในตาราง Employee (ถ้าทุกคนมีบัตร)
  2. แยกตาราง: ตาราง Employee และ ID_Card แยกกัน ใช้ PK เดียวกัน (Shared PK) หรือ FK + Unique Constraint

สรุป: 1:1 Relationship น้อยพบในทางปฏิบัติ มักรวมตารางเพื่อความสะดวก ยกเว้นกรณีที่มีข้อมูลเพิ่มเฉพาะบางกลุ่ม (Subtype) หรือ Security แยกตาราง