【发布时间】:2018-04-08 17:39:56
【问题描述】:
如何创建一个 fk 列到由 2 列组成的 pk 列 我可以做这个 ? 它的 (isa) 关系 但 pk 来自 2 列 在 ERD 和 DSD 中更容易理解我想问的问题
我正在尝试根据 Product 表中的 pk 列在 PC 表中创建该 pfk,但我在 Product 表中有 2 列 pk 我正在尝试在 SQL 中创建它
【问题讨论】:
标签: sql relationship
如何创建一个 fk 列到由 2 列组成的 pk 列 我可以做这个 ? 它的 (isa) 关系 但 pk 来自 2 列 在 ERD 和 DSD 中更容易理解我想问的问题
我正在尝试根据 Product 表中的 pk 列在 PC 表中创建该 pfk,但我在 Product 表中有 2 列 pk 我正在尝试在 SQL 中创建它
【问题讨论】:
标签: sql relationship
在 SQL 中,您可以使用以下方法创建两个列的外部:
alter table t add constraint fk_t_col1_col1
foreign key (col1, col2) references othertable(col1, col2);
我不能 100% 确定这会回答您的问题,但它被标记为 SQL。
注意:我通常建议使用单列自动递增的主键。这无疑简化了外键关系。
【讨论】:
你可以这样做:
create table Product
(
maker nvarchar(50) NOT NULL,
model int NOT NULL,
type1 nvarchar(50),
constraint PK_Product Primary Key (maker,model)
)
它对我有用,但我不知道如何创建 PFK,如果你能提供帮助,我将不胜感激 :)
【讨论】: