为什么在一对多(1-N)总是主键一侧放在N侧的关系中,我们反之亦然呢?

马丁

我正在做一个项目,但是设计数据库时遇到了问题。我想知道为什么在1与N的关系中,总是将主键一侧放在N侧,反之亦然?

例如,我们有两个表UserComment在这些表中,我们必须将表的主键作为外键User放入Comment表中。反之亦然吗?

例如,我将Comment表的主键User作为外键放入表中。

恩沃格尔

我希望您的User表打算每个用户有一行,但是每个用户可能有多个注释。因此,如果将注释外键值放在User表中,则可能需要一种将多个注释添加到一行中的方法,也许使用诸如多值数据结构,数组或嵌套表之类的方法。

许多数据库系统确实支持这种“复杂”属性,但并非全部都支持,因此很大程度上取决于您所使用的技术。如果您的软件允许使用复杂类型,那么与访问单个属性值相比,访问它们的方法可能会涉及更多的复杂性。在关系数据库中,关系操作将属性视为单个值,这就是为什么在关系数据库设计中,引用外键属性属于Comment表。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章