About Data/DB
[Mysql][MariaDB] DB Table의 외래키 데이터 update/delete 옵션 4가지 설명
Tradgineer
2020. 6. 4. 10:12
DB의 Table에서 데이터가
UPDATE 될 때
DELETE 될 때
에 대한 조건으로 아래와 같이 4개가 있습니다.
- RESTRICT : 개체를 변경/삭제할 때 다른 개체가 변경/삭제할 개체를 참조하고 있을 경우 변경/삭제가 취소됩니다. (제한)
- CASCADE : 개체를 변경/삭제할 때 다른 개체가 변경/삭제할 개체를 참조하고 있을 경우 함께 변경/삭제됩니다.
- NO ACTION : 개체를 변경/삭제할 때 다른 개체가 변경/삭제할 개체를 참조하고 있을 경우 변경/삭제할 개체만 변경/삭제되고 참조하고 있는 개체는 변동이 없습니다.
- SET NULL : 개체를 변경/삭제할 때 다른 개체가 변경/삭제할 개체를 참조하고 있을 경우 참조하고 있는 값은 NULL로 세팅됩니다.
CASCADE가 강제적으로 변경/삭제시키기 때문에 위험할 수 있어도 사용하기 간편한 경우가 많습니다.