在一个带有一个主键的表和另一个带有两个主键的表之间有关系吗?

问题描述 投票:1回答:1

我通常会问这个问题,但是我会举一个例子说明。

表1包含以下列:

ID (Pk)
Order_Desc
Order_DT 

表2包含以下列:

ID (PK)
Product_Code (PK)
Product_Desc 

我是否有可能在Table1和Table2之间建立关系。如果是这样,您将如何在SQL中做到这一点而又不会遇到错误?如果产品代码或ID不是主键,您是否可以创建关系?而是一个外键?

sql-server foreign-keys primary-key
1个回答
1
投票

您的table2没有主键[[two]]-它具有由两列组成的主键[[ONE]]。任何关系表NEVER都具有多个主键-根本不可能。 与该表的任何FK关系必须包含引用表的PK具有的all列-因此Table2的任何FK

必须包括

IDProduct_Code这是一个全有或全无的提议-您的外键包含引用表主键的all列-否则您将无法建立FK关系。

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