database
RDB에서 foreign key를 사용해야될까?
codeManager
2023. 9. 22. 23:21
반응형
Foreign key는 한 테이블의 컬럼이 다른 테이블의 키를 참조하는 경우 사용됩니다.
foreign key를 사용하는 이유
FK를 사용하는 이유는 참조 무결성을 위해서입니다.
외래키로 지정된 컬럼 데이터가 부모의 기본키 외 다른 값을 가질 수 없기 때문에
DB 자체에서 무결성을 높여주는 장점이 있습니다.
foreign key를 사용하지 않는 이유
이론상으로는 FK를 써야하지만 실제로 실무에서는 FK를 잘 사용하지 않는 추세입니다.
이유는 데이터 정합성을 따져야 하기 때문에 성능의 이슈가 있을 수 있습니다.
또한 스키마 변경시 FK에 의한 제약이 있어 유지보수가 어려운 점이 있습니다.
아래 글을 읽어보시면 도움이 될 것 같습니다.
https://github.com/github/gh-ost/issues/331
반응형