我正在制作一个活动策划网站。在这个网站上,会有很多用户。每个用户都有自己的无菌区。
例如:每个用户都可以创建一个事件和一个来宾列表。现在,可能是创建活动的两个人想要邀请同一个人。我希望那个人(客人)在数据库中被创建两次。以下是我的想法:
多个数据库
我会为每个新用户创建一个数据库,每个数据库都有一个相同的模式。
带前缀的表格
例如,如果正在谈论用户 234 和 342,则将有两个表(具有相同的模式)234_guests 和 342_guests。
一张桌子统治他们
会有一个大的客人表,主键的一部分将是客人所属的用户的引用。
澄清:我将尝试澄清我的问题:约翰在我的网站上开设了一个帐户。他正在为女儿筹办婚礼。Bob 还在我的网站上开设了一个帐户,他正在计划他儿子的 Bar Mitzva。Bob 和 John 都认识一个叫 Jim Halpert 的人。鲍勃和约翰都邀请吉姆参加他们的婚外情。为了注册客人,您必须输入他的信息。我显然不希望 Bob 和 John 访问相同的客人(即使他们是同一个人!),我的问题是如何在这种情况下设计数据库。
考虑到性能、逻辑、数据库规范化,什么是最好的?
还有其他选择吗?