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

การจัดการความสัมพันธ์ Many-to-Many


ความสัมพันธ์ Many to Many บ่งชี้ถึงความสัมพันธ์หลายอย่างระหว่างเอนทิตี 2 ตัว ตัวอย่าง: ชั้นเรียนหนึ่งมีนักเรียนหลายคน แต่นักเรียนคนหนึ่งก็เรียนหลายชั้นเรียน ดังนั้นนี่คือความสัมพันธ์ many to many ระหว่างเอนทิตี STUDENT และ CLASS

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

ดังนั้น เราใช้ joining table สาธิตดังนี้ -

ตาราง Student จัดเก็บรายละเอียดนักเรียนแต่ละคน เช่น Student ID, name, age ฯลฯ

<Student>

Student_ID
Student_Name
Student_Age
1
Amit
27
2
Tom23
3
Jack32


ตาราง Class จัดเก็บรายละเอียดชั้นเรียนทั้งหมด เช่น ClassID, Name ฯลฯ

<Class>

Class_ID
Class_Name
10
English
20
Hindi
30
Mathematics

<StudentClass> ตารางเป็นลิงก์ระหว่าง <Student> และ <Class> จัดเก็บรายละเอียดว่านักเรียนคนไหนเรียนชั้นเรียนไหน

<StudentClass>

Student_ID
Class_ID
1
10
1
20
2
10
2
30
3
10

ใช้ตารางนี้เราสามารถแสดงความสัมพันธ์ many to many ระหว่าง <Student> และ <Class> ได้ เราสามารถอัปเดตตาราง Student และ Class ได้อย่างง่ายโดยไม่รบกวนความสัมพันธ์ระหว่างพวกเขา และอัปเดต <StudentClass> ตามต้องการ