Database
MySQL foreign key 로 연결돼있는 데이터 지우기 설정 - cascade
yugyeong
2022. 12. 8. 14:15
sql 에서 두개의 테이블을 연결할 때, foreign key 를 이용한다.
foreign key 는 제약조건의 하나로 외래키라고 부른다.
외래키는 다른 테이블의 레코드를 참조하기 위한 키값으로 사용되며, 해당 레코드를 대표하는 기본키가 외래키로 설정될 수 있다.
두 개의 테이블을 join 으로 연결했다고 예를 들었을 때, foreign key 를 설정해두면, 데이터를 delete 할 때 두개의 테이블에서 각각 데이터를 지워줘야한다.
또는 한 테이블에서 데이터를 지우고 다른 테이블에서 foreign 키로 연결돼있는 데이터를 지우지 않는다면, 나중에 오류가 발생할 수 있다.
한번에 데이터를 효율적으로 지우기 위해서는 foreign key Options 의 on Delete 를 CASCADE 로 설정해두어야 한다.
