회원 탈퇴 시,
해당 회원과 외래키로 연결되어 있는 다른 테이블의 데이터는
유지하는 방법을 찾아보았다.
외래키에 적용할 수 있는 제약사항은 총 4가지가 있다.
(참고로, on delete , on update 옵션 각각 선택할 수 있다)
1. RESTRICT <제한>
: 개체(회원 테이블) 변경/삭제 시,
다른 개체(게시글 테이블)가 해당 개체(회원 테이블)를 참조하고 있을 경우,
해당 개체의 변경/삭제는 제한된다.
2. CASCADE
: 개체(회원 테이블) 변경/삭제 시,
다른 개체(게시글 테이블)가 해당 개체(회원 테이블)를 참조하고 있을 경우,
모든 개체(회원 테이블의 개체, 게시글 테이블의 개체)가 변경/삭제된다.
3. NO ACTION
: 개체(회원 테이블) 변경/삭제 시,
다른 개체(게시글 테이블)가 해당 개체(회원 테이블)를 참조하고 있을 경우,
해당 개체(회원 테이블)만 변경/삭제되고,
참조하고 있는 개체(게시글 테이블)은 변동이 없다.
4. SET NULL
: 개체(회원 테이블) 변경/삭제 시,
다른 개체(게시글 테이블)가 해당 개체(회원 테이블)를 참조하고 있을 경우,
해당 개체의 변경/삭제는 제한되고,
참조하고 있는 개체(게시글 테이블)의 값은 NULL로 세팅된다.
아래쪽에 Foreign Keys를 누르고
원하는 제한조건을 선택해주면 끝!
참고로 해당 작업은
외래키를 포함하고 있는 테이블(참조하는 테이블=게시글 테이블)에서
진행해줘야 한다.
'여니의 프로그래밍 study > MySQL' 카테고리의 다른 글
[MySQL] 콘솔에서 원격 서버에 접속하기 (0) | 2022.07.15 |
---|---|
[데이터베이스 개론] 6장 기출문제 풀고 답지 공유! (3) | 2020.10.27 |
[데이터베이스 개론] 5장 기출문제 풀고 정답 올려봤어요! (7) | 2020.10.26 |
[데이터베이스 개론] 4장 기출문제 풀고 정답 공유하기! (2) | 2020.10.24 |
[데이터베이스 개론] 3장 데이터베이스 시스템 기출문제 정답공유! (0) | 2020.10.23 |