我有两张桌子,用户和程序。现在我只有5-10个程序和数以万计的用户,他们可以注册任何一个程序(也可以注册多个程序)。因此,在多到多关系的情况下,我正在考虑创建一个单独的表,比如link_user_program,以存储用户注册的程序。
但是,如果我有数以万计的用户,而只有10个程序,这个难道不需要额外的空间并增加查询时间,而不仅仅是存储在user表中的程序(可能是逗号分隔的程序in或每个程序的布尔列)吗?
以上两种设计的利弊是什么,还是有更好的选择?如果将来可能会添加新的程序(但仍然比用户数量少得多),该怎么办?
发布于 2016-05-31 08:57:38
从OO域设计的角度来看,建议使用多到多个链接表;忘记额外的空间,对于查询时间,可以设置索引以提高性能。
如果没有链接表,则会使您以后难以添加/删除问题。
https://stackoverflow.com/questions/37540967
复制相似问题