编辑:看起来“桥接表”这个术语得到了我需要的东西
我正在尝试使用主键和外键作为列在表produ_tag
中插入记录。
produ_tag
产品
代码
第一列refHe
是products
表中产品的代码,第二列包含tags
表中产品的标记。建模软件制作了这个附加表,以便它可以保存哪个产品包含哪个标签是必要的。
问题是它们是主要的,所以如果我有一个带有2个标签的产品,则不会插入记录,因为它已经插入了之前相同的产品。
我应该删除两者的主要内容吗?或者还有另一种处理方法,因为建模软件就是这样做的。
答案 0 :(得分:1)
produ_tag
表是“桥接表”,复合主键将允许任意数量的标记(namCh
)与产品(refHe
)相关联,只要该标记存在于tags
表中且(refHe, nameCh)
对是唯一的(即您不能多次关联同一产品和标记)。
如果您尝试插入标记时出错,则不是由于PK设置错误。您要么尝试引用不存在的标记,要么插入表中已存在的值组合。
请勿删除主键。我看到的唯一明显的问题是produ_tag.refHe
到products.refHe
没有FK约束。