SQL多对多

问题描述 投票:0回答:3

“实体关系图”“ >>

我需要建立一个简单的论坛(留言板)作为学校项目。但是我遇到了一个问题。在上面的img中,有2个表:postcategory,它们具有多对多关系。我做了一个桥接表,其中存储了postKeycategoryKey。从这两个键创建复合主键是一种不好的做法,还是我需要类似postCategoryKey的东西?我还需要改进什么?

我需要建立一个简单的论坛(留言板)作为学校项目。但是我遇到了一个问题。在上面的img中,有2个表:post和category,它们具有多对多关系。我做了...

sql primary-key composite-primary-key erd
3个回答
0
投票

我认为,不需要PostCategoryKey,因为它只是一个关系表,而您不会通过postCategoryKey对其进行访问。我将使用其他2个FK(postKey和categoryKey)创建PK。


0
投票

这取决于,如果您以后打算在单独的表中向postCategoryKey添加一些额外的元数据,那么这是有道理的。


0
投票

您将必须使postKeycategoryKey不为空,并始终对它们创建唯一的约束。这使它们成为表的键,无论您是否将此键称为“主键”。

© www.soinside.com 2019 - 2024. All rights reserved.