【发布时间】:2010-02-16 07:25:56
【问题描述】:
我正在使用 Ruby on Rails,但我认为这个问题比这更广泛,通常适用于数据库设计。
何时将单个模型拆分为多个表是个好主意?例如,假设我有一个 User 模型,并且模型中的字段数量确实开始增加。例如,用户可以输入他的网站、他的生日、他的时区、他的等等。
拆分模型有什么优点或缺点吗,例如用户表可能只有登录和电子邮件等基本信息,然后每个用户都有另一个表,类似于 UserInfo,另一个是UserPermissions,另一个是 UserPrivacySettings 或类似的东西?
编辑:为了增加额外的光泽,大多数字段很少被访问,除了特定于它们的页面。例如,只有当有人点击进入用户的个人资料时,才会访问诸如生日之类的内容。此外,一些字段(很少访问)有可能非常大。大多数字段都有可能设置为空白或无。
【问题讨论】:
-
我们在 User 表中实际讨论了多少个字段?
标签: database database-design models