Oracle INSERT, только если значения находятся в другой таблице - PullRequest
0 голосов
/ 01 августа 2010

У меня есть две таблицы:

игроков (есть столбец с именем команды) и команды (также есть столбец с именем команды)

Я хочу разрешить вставку новых игроков только в том случае, если командаимя существует в таблице команд.

Любая помощь будет оценена.Пожалуйста, будьте проще, потому что я все еще учусь.

1 Ответ

8 голосов
/ 01 августа 2010

Тогда предположительно вы должны сделать столбец TeamName в таблице «Команды» первичным ключом, а столбец «TeamName» таблицы игроков - внешним ключом, указывающим на столбец «TeamName» таблицы «Команды».

Примечаниехотя использование «TeamName» в качестве идентификатора команды не очень хорошая идея - было бы лучше иметь столбцы Team_ID, представляющие собой произвольное число, так что если имя команды изменится, у вас не будетизменить его во всех строках в поле «Игроки», которые указывают на него.

...