CASCADE
: 참조 테이블(부모)의 행을 삭제/수정할 때, 해당 행을 참조하고 있는 테이블(자식)의 관련 행도 자동으로 삭제/수정된다.
이를 통해 데이터의 일관성을 유지할 수 있다.
Delete cascade 설정방법과 동작방법
▷ cascade 설정하는 이유
students 테이블 : 참조 테이블(부모)
papers 테이블 : 참조하고 있는 테이블(자식)
두 테이블이 foreign key로 묶여있을 때,
stdents 테이블의 id를 삭제하면 'Cannot delete .....' 삭제할 수 없다는 오류가 발생한다.
(papers 테이블에서는 row 삭제 가능,
papers 테이블(자식)에서 먼저 삭제 후 stdents 테이블(부모)에서 데이터 삭제하는 것은 가능)
이럴 경우에 cascade 설정을 해줘야 한다.
▷ cascade 설정 방법
테이블 Foreign Key 탭에서 On Delete > CASCADE 설정
sudents 테이블(부모) 데이터를 삭제하면, papers 테이블(자식)의 데이터도 함께 삭제할 수 있다.