gpt4 book ai didi

oracle - 在oracle中从两个不同的表主键创建复合外键

转载 作者:行者123 更新时间:2023-12-01 04:54:30 25 4
gpt4 key购买 nike

表1:

tid(primary key)//这里没有外键

表2:

sid(primary key)//这里也没有外键

表3:

 Tid
Sid
iid(primary key)
foreign key(Tid,Sid) references table1(tid).table2(sid)

In table3 i want to make a composite foreign key or composite foreign key constraint but failed . there are many questions related to this .But none of them seems helpful to me . How can i do that ? Is it valid ? Then what is the syntax of making composite foreign key from two different tables primary key

最佳答案

不可能在不同的表上有一个外键引用字段,这完全没有意义。两个或多个字段的外键意味着字段值的组合必须在引用表的单个记录上匹配,如果引用的字段在不同的表上,则无法做到这一点。

您可以做的是为两个表创建两个不同的前键,如下所示:

CREATE TABLE table3(
iid NUMBER,
Tid NUMBER,
Sid NUMBER,
CONSTRAINT pk PRIMARY KEY (iid) USING INDEX TABLESPACE idx,
CONSTRAINT fk001 FOREIGN KEY (tid) REFERENCES table1(tid),
CONSTRAINT fk002 FOREIGN KEY (sid) REFERENCES table2(sid)
);

关于oracle - 在oracle中从两个不同的表主键创建复合外键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38421709/

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