假設團隊和玩家之間存在多對多的關係。這是由以下的表建模:多對多關係 - 自動刪除孤兒
create table team
(
identifier integer primary key
);
create table player
(
identifier integer primary key
);
create table member
(
team_identifier integer,
player_identifier integer,
primary key(team_identifier, player_identifier),
foreign key(team_identifier) references team on update cascade on delete cascade,
foreign key(player_identifier) references player on update cascade on delete cascade
);
假設以下數據:
insert into team values(1);
insert into team values(2);
insert into player values(1);
insert into member values(1, 1);
insert into member values(2, 1);
讓我們刪除團隊:
delete from team where identifier = 1;
delete from team where identifier = 2;
現在我們有沒有一個團隊的球員。有沒有辦法自動刪除這個播放器?也就是說,當一個團隊的刪除導致一個孤兒玩家時,這個玩家也應該被刪除(但不是相反)。
這並不真正回答我的問題。我希望孤兒球員在刪除球隊後自動刪除**。 –