可能的重复:
是否存在使用数据库 1:1 关系有意义的时候? https://stackoverflow.com/questions/517417/is-there-ever-a-time-where-using-a-database-11-relationship-makes-sense
为了简单起见,我将直接问这个问题:数据库设计中的一对一关系应该避免还是可以接受?
我知道这个“项目”的所有属性都可以托管在一个表中,但我觉得当通过 ORM 将数据库设计转换为业务对象时,它会用不必要的属性使实体变得混乱。
通过 UI,希望这能描绘出更好的画面,我有一个包含所有必要属性的主窗体。我将有一个按钮,允许用户单击它,它将弹出一个新表单来附加额外的属性。不能有超过 1 个条目与主表单(实体)相关联,即它是 0..1 结束关系。
任何建议将被认真考虑。
不,一对一的关系是完全有意义的。
想象一个实体可以选择拥有一个装满属性的桶 - 有些实体具有这些属性,而其他实体则没有。
您可以将所有这些属性作为列包含到实体表中 - 但在这种情况下,对于大量条目,许多列最终会变成空。
或者:您可以将那些“可选”属性放入单独的表中,设置 1:1 (或者更确切地说:0:1)与基本实体表的关系,并且仅当您的实体确实具有这些属性时才在其中存储内容。
决定是否将某些属性“外包”到单独的表中的主要标准是:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)