In many database design tutorials/articles, they always bring up the fact that if two tables share a many-to-many relationship, then a third table should be created to act as an associate table to link the two.
However, they never provide the reason WHY we should do it that way. I’m curious to know why and examples of problems that could occur if you just kept the two tables as it is without the associate table.
You can’t make many to many relations any other way using relational databases. Ie, if you have a table called “person”, you can’t create a column “friends” and expect to put many friends’ user ids in there. You have to make a separate table to hold the relation itself.