Database 哪个表是主键表?

Database 哪个表是主键表?,database,foreign-keys,primary-key,Database,Foreign Keys,Primary Key,例如,我有两张桌子 姓名:客户 主键:idCustomer 另一列:名称 外键:idVendor 另一张表: 供应商名称 主键:idVendor 另一列:名称 我想创建1:n关系 哪个表是主键表,哪个是外键表?我想你的意思是哪个是1,哪个是n。1将是供应商,n将是客户。一个供应商可以有多个客户,但每个客户只能有一个供应商。对于给定的模式,您实际上在供应商和客户之间创建了1:N的关系,即一个供应商可以有N个客户。我希望这就是你想要的 供应商有很多客户 在这种情况下,Vendor表将为供应商

例如,我有两张桌子

  • 姓名:客户
  • 主键:idCustomer
  • 另一列:名称
  • 外键:idVendor
另一张表:

  • 供应商名称
  • 主键:idVendor
  • 另一列:名称
我想创建1:n关系


哪个表是主键表,哪个是外键表?

我想你的意思是哪个是1,哪个是n。1将是供应商,n将是客户。一个供应商可以有多个客户,但每个客户只能有一个供应商。

对于给定的模式,您实际上在供应商和客户之间创建了1:N的关系,即一个供应商可以有N个客户。我希望这就是你想要的

供应商有很多客户


在这种情况下,
Vendor
表将为供应商定义
idVendor
主键,
Customer
表将有一个
idVendor
外键列,该列引用
Vendor
表的主键(
idVendor
)。

两个表都有主键。似乎只有一个有外键。你的问题没有多大意义。一个客户有多个供应商,还是一个供应商有多个客户?如果供应商的客户比客户的多,则FK与供应商的PK之间存在差异。但在我看来,您有一个客户可以有零个或多个供应商,一个供应商可以有零个或多个客户,因此,您需要一个关联表vendor\u customers,其中包含vendor和customer的主键(以及其他必需字段)@当我在VS中建立关系时,我需要选择哪个表是主键表。这是您需要在问题中解释的内容。这是第一次提到VS。其他您真正应该提到的事情:您使用的是LINQ2SQL还是EF(以及什么版本)?并解释你在决定哪张桌子是哪张桌子时遇到的困难。真的吗?客户只能从一个供应商处购买?