gpt4 book ai didi

mysql - 两个主键

转载 作者:IT王子 更新时间:2023-10-29 06:26:03 25 4
gpt4 key购买 nike

this

这是我的部分数据库的图示。 BrandNoSuppliar 表中的主键,在其他表中用作外键。

LotDetails 表中,我需要 BrandName 作为外键。这听起来很荒谬,因为我可以做到这一点

  1. 单个主键
  2. 复合键

将用作外键。

我知道我可以使用 BrandNo 作为外键并显示 BrandName,但是为了知识(当然是 EASE)我想知道这一点

是否可以在不同的表中分别使用一个表的两个属性作为外键?

已编辑

BrandNo 只是一个序列号,Brand Name 可以是任何品牌的名称。如图所示,4 个表中需要 BrandNo,而只有一个表中需要 BrandName。谢谢!

最佳答案

是的! FK 不需要引用 PK,您甚至不需要引用索引列,但为了关系完整性(和完整性),您必须引用唯一值列(这就是我们“喜欢”引用的原因一个 PK 或至少一个唯一的非聚集索引列)。

这听起来有点奇怪,但您可以构建一个关系表 AB,其中包含 IdA、IdB 以及 tableA 和 tableB,分别引用 tableAB 的列。

顺便说一句:一个表不需要拥有一个主键,但不能存在两个主键。一般来说,表是由 PK 物理排序的。

关于mysql - 两个主键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22079936/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com