Удалить строку, когда таблица имеет отношение FK - PullRequest
1 голос
/ 19 ноября 2010

Привет У меня есть 2 таблицы Document и Project.

DocumentID - это FK в таблице Project.

Использование sql Как удалить записи документа в таблице Document, а также удалить ихсоответствующие записи в таблице проекта.

Спасибо

Ответы [ 2 ]

5 голосов
/ 19 ноября 2010

При создании внешнего ключа укажите как ON DELETE CASCADE ограничение таблицы.

Это ограничение означает, что при удалении документа все строки проекта, ссылающиеся на него как на внешний ключ, также будут удалены.

0 голосов
/ 19 ноября 2010
delete 
  from projects 
 where documentsFK = (
                      select documentFK 
                        from documents 
                       where documentsFK > 125
                     );

delete 
  from documents 
 where documentsFK > 125;

EDIT

delete 
  from projects 
 where documentsFK in (
                       select documentFK 
                         from documents 
                        where documentsFK > 125
                      );

delete 
  from documents 
 where documentsFK > 125;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...