Hi,
I'm designing a mySQL DB and I'm having the following issue:
Say I have a wall_posts table. Walls can belong to either an event or a user.
Hence the wall_posts
table must references either event_id
or user_id
(foreign key constraint).
What is the best way to build such a relationship, considering I must always be able to know who the walls belong to ... ?
I've been considering using 2 tables, such as event_wall_posts
and user_wall_posts
so one got an event_id
field and the other a user_id
one, but I believe there must be something much better than such a redundant workaround ...
Is there a way to use an intermediate table to link the wall_posts
to either an event_id
or a user_id
?
Thanks in advance,
Edit : seems there is not a clear design to do this and both approach seem okay, so, which one will be the fastest if there is a lots of data ?
Is it preferable to have 2 separates table (so queries might be faster, since there will be twice less data in tables ...), or is it still preferable to have a better OO approach with a single wall_posts
table referencing a wall table (and then both users and events will have a unique
wall_id`)