0

用户可以创建两种配置文件类型之一,例如自由职业者和公司。此配置文件类型有几个常见和几个独特的字段。公司可能有许多用户作为工人。

更清楚一点:用户 HAS_ONE 个人资料(自由职业者或公司);公司 HAS_MANY 用户;

关于这种情况的最佳数据库设计有什么建议吗?

4

2 回答 2

2

一个数据库表,其外键指向配置文件类型ProfileTypeID值,可能包括但不限于以下内容:

  • 自由职业者
  • 公司

这一字段将帮助您确定哪些附加属性与用户相关联。其余的都是简单的 UI。

于 2012-10-22T17:42:41.197 回答
0

是传承。当您面对这种情况时,您有 3 个选择。

第一个选择是一张供公司和自由职业者使用的大桌子,上面有一张typeid桌子可以知道它是公司还是自由职业者,但在你的情况下,你最终会得到很多nulls.

第二个选项是公司和自由职业者的 2 个单独的表以及用户表中的公共属性。然后你必须typeId在你的用户表中添加才能知道它是公司还是自由职业者

第三种选择是为用户、自由职业者和公司制作一张大桌子,但这将是空值最多的选项。

在您的情况下,最好的选择是第二种选择,因为您有几个常见的和几个独特的字段。

于 2012-10-22T17:52:42.107 回答