在mutliple表中使用相同的FK。

时间:2017-12-15 17:27:20

标签: mysql sql

我有两张桌子:

create table TRASchema.Member (
TRAnum int IDENTITY not null, 
name varchar(30) not null, 
status int not null, 
DOB date not null, 
constraint PK_TRAnum primary key (TRAnum)
)

create table RaceSchema.RaceEntry

(bibNumber int IDENTITY not null, 
AgeCode nchar(2) not null, 
ClubID int not null,
TRAnum int not null, 
position int not null, 
RaceID int not null, 
constraint PK_bibNumber primary key (bibNumber),
constraint FK_AgeCode foreign key (AgeCode) references 
TRASchema.AgeCatagoryClass(AgeCode),
constraint FK_ClubID foreign key (ClubID) references TRASchema.Club(ClubID),
)

现在我希望能够在我的竞赛系统上使用相同的TRAnum,但作为FK。当我尝试这样做时,我会将此约束添加到RaceEntry表

constraint FK_TRAnum foreign key (TRAnum) references 
TRASchema.Member(TRAnum)

当我这样做时,我被告知TRAnum属性已存在于我的数据库的其他位置,这是正确的,我想在此表上再次使用它作为FK?

任何关于我出错的方向都将受到赞赏。

谢谢

1 个答案:

答案 0 :(得分:0)

听起来你正在尝试使用相同的约束名称FK_TRAnum。您可以使用FK引用同一个表的多个表,但每个约束必须具有唯一的名称。