Предположите отношение «многие ко многим» между командой и игроком. Это моделируется с помощью следующих таблиц:Отношение «многие ко многим» - автоматически удаляет сирот
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;
Теперь у нас есть игрок без команды. Есть ли способ автоматически удалить этот плеер? То есть, когда удаление команды приводит к сиротскому игроку, этот игрок также должен быть удален (но не наоборот).
Это не отвечает на мой вопрос. Я хочу, чтобы сироты (ов) были удалены ** автоматически ** после удаления команды (ов). –