我正在做一个项目,但是设计数据库时遇到了问题。我想知道为什么在1与N的关系中,总是将主键一侧放在N侧,反之亦然?
例如,我们有两个表User
和Comment
;在这些表中,我们必须将表的主键作为外键User
放入Comment
表中。反之亦然吗?
例如,我将Comment
表的主键User
作为外键放入表中。
我希望您的User表打算每个用户有一行,但是每个用户可能有多个注释。因此,如果将注释外键值放在User表中,则可能需要一种将多个注释添加到一行中的方法,也许使用诸如多值数据结构,数组或嵌套表之类的方法。
许多数据库系统确实支持这种“复杂”属性,但并非全部都支持,因此很大程度上取决于您所使用的技术。如果您的软件允许使用复杂类型,那么与访问单个属性值相比,访问它们的方法可能会涉及更多的复杂性。在关系数据库中,关系操作将属性视为单个值,这就是为什么在关系数据库设计中,引用外键属性属于Comment表。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句