- Data Structure
- Networking
- RDBMS
- Operating System
- Java
- MS Excel
- iOS
- HTML
- CSS
- Android
- Python
- C Programming
- C++
- C#
- MongoDB
- MySQL
- Javascript
- PHP
- Physics
- Chemistry
- Biology
- Mathematics
- English
- Economics
- Psychology
- Social Studies
- Fashion Studies
- Legal Studies
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
Managing Many-to-Many relationship
Many to Many relationship implies multiple relationship between any two entities. An example of this is: A class has multiple students but a student also attends multiple classes. So this is a many to many relationship between the entities STUDENT and CLASS.
It is complicated to manage a many to many relationship. We cannot mention all the classes a student attends or all the students in a class in one table. This would become extremely complicated and difficult to understand.
So, we have used a joining table. This is demonstrated as follows −
The Student table stores the details of individual students such as their Student ID, name, age etc.
<Student>
Student_ID | Student_Name | Student_Age |
1 | Amit | 27 |
2 | Tom | 23 |
3 | Jack | 32 |
The Class table stores the details of all the different classes such as the ClassID, Name etc.
<Class>
Class_ID | Class_Name |
10 | English |
20 | Hindi |
30 | Mathematics |
The <StudentClass> table is the link between the <Student> and <Class> tables. It stores details about which student attends which classes.
<StudentClass>
Student_ID | Class_ID |
1 | 10 |
1 | 20 |
2 | 10 |
2 | 30 |
3 | 10 |
Using this table we can showcase the many to many relationship between <Student> and <Class>. We can easily update the Student and Class tables without interfering with the relationship between them and also update the <StudentClass> as required.