我在MySQL数据库中存储了各种用户详细信息。最初,它是在各种表中设置的,这意味着数据与UserId链接,并通过有时复杂的调用输出,以根据需要显示和操作数据。建立一个新系统,将所有这些表组合成一个大的相关内容表几乎是有意义的。
这是我的一些表结构的示例:
编辑: 到目前为止,我已经对所有答案进行了投票,它们都有本质上可以回答我问题的元素。
大多数表具有1:1的关系,这是使它们归一化的主要原因。
如果表格跨越100多个列,而这些单元格的大部分可能仍为空时,会不会有问题?
多个表以下列方式/案例提供帮助:
(a)如果不同的人要开发涉及不同表的应用程序,则将它们拆分是有意义的。
(b)如果您想为不同的人赋予不同的权限,以进行数据收集的不同部分,则拆分它们可能更为方便。(当然,您可以查看定义视图并对其进行适当授权)。
(c)为了将数据移动到不同的地方,尤其是在开发过程中,使用表来减小文件大小可能是有意义的。
(d)当您在单个实体的特定数据收集上开发应用程序时,较小的占地面积可能会给您带来舒适感。
(e)这是一种可能性:您认为作为单个值的数据将来可能会变成真正的多个值。例如,信用额度到目前为止是单个值字段。但是明天,您可能会决定将值更改为(日期从,日期到,信用值)。拆分表现在可能会派上用场。
我的投票将是针对多个表-数据已适当拆分。
祝好运。