Database design 如何设计这个数据库表概念?

Database design 如何设计这个数据库表概念?,database-design,Database Design,假设我有一张桌子。一篇文章只能附加一个主题。但也有可能这篇文章没有主题 我应该在Articles表中将主题设为新列吗?或 我是否应该创建一个表格Topics2 articles并将一个主题与文章映射在一起? 在这种情况下,我不必为Articles表添加额外的列 我不喜欢第一种解决方案,因为这样一些行中会有NULL?或者在这种情况下使用NULL是否合理 你觉得怎么样 谢谢你,Boda Cydo。我不认为你有任何理由创建一个新表,只是为了避免其中有空行 将其添加到article表中是有意义的,并且可

假设我有一张桌子。一篇文章只能附加一个主题。但也有可能这篇文章没有主题

我应该在Articles表中将主题设为新列吗?或

我是否应该创建一个表格Topics2 articles并将一个主题与文章映射在一起? 在这种情况下,我不必为Articles表添加额外的列

我不喜欢第一种解决方案,因为这样一些行中会有NULL?或者在这种情况下使用NULL是否合理

你觉得怎么样


谢谢你,Boda Cydo。

我不认为你有任何理由创建一个新表,只是为了避免其中有空行


将其添加到article表中是有意义的,并且可能会使维护变得更容易,因为您不必针对另一个表进行连接。

我不认为您有任何理由创建一个新表,只是为了避免其中的行为NULL


将其添加到文章表中是有意义的,而且可能更易于维护,因为您不必针对另一个表进行连接。

我可能会建议,如果topic有其他相关数据,您应该创建两个表:一个用于文章,另一个用于主题,其中文章PK作为主题的外键。

我可能会建议,如果topic有其他相关数据您应该创建两个表:一个用于文章,另一个用于主题,其中文章PK作为主题的外键。

一对一关系通常只是一个麻烦。。。只要行长度不会成为应用程序的瓶颈,就将它们放在一个表中。

一对一关系通常只是一个麻烦。。。只要行长度不会成为应用程序的瓶颈,就将它们保存在一个表中。

正如您所指出的,在1的情况下,您将有一些空行。
在2的情况下,您将有一个带有2个索引的额外表。在我看来,如果一篇文章的主题不可能超过一个,并且没有主题的文章数量不超过文章总数的50-70%,那么一篇文章的效果会更好。

正如您所指出的,在1的情况下,您将有一些空行。
在2的情况下,您将有一个带有2个索引的额外表。在我看来,如果一篇文章的主题不可能超过一个,并且没有主题的文章数量不超过文章总数的50-70%,那么一篇文章的效果会更好。

这听起来像是一个头发尖尖的老板在以后要求将该主题用于标记时可能会给你带来不必要的痛苦的场景以多对多的方式

因此,我会选择2


如果你真的相信它不会转身咬你,那么1是个不错的选择。避免使用空值似乎是一个很弱的理由。不清楚您是否打算将它们作为文本或FK存储到主题表中,但我会选择一个单独的主题表。

这听起来像是一个头发尖尖的老板在以后要求以多对多的方式将该主题用于标记时可能会给您带来不必要的痛苦的场景

因此,我会选择2


如果你真的相信它不会转身咬你,那么1是个不错的选择。避免使用空值似乎是一个很弱的理由。不清楚您是否打算将它们作为文本或FK存储到主题表中,但是我会使用一个单独的主题表。

但是如果有两篇文章有相同的主题呢?但是如果有两篇文章有相同的主题呢?我相信intgr指的是一行中的列数和这些列的宽度。我相信intgr指的是一行中的列数和这些列的宽度。我我将使用FK访问主题表。很抱歉没有提到这一点。我要带一个FK去一个主题表。很抱歉没提那件事。