관계형 테이블에 pk가 필요할까?

2024. 10. 29. 17:21개발/토막난 상식

반응형

https://hoonzi-text.tistory.com/104

 

멀티컬럼 PK는 왜?

어느 날, 친구에게 이런 카톡을 받았다. 이런 상황에서는 학생_수업 테이블에는 PK(primary key)를 만들어야 하는가에 대한 질문이었다. 나는 항상 테이블을 만들 때 PK를 기본으로 만들고 시작했었

hoonzi-text.tistory.com

 

 

나랑 똑같은 그림을 보고 똑같은 질문을 한 사람이 정리한글 

 

결론부분

  • PK는 행을 구분하기 위해, 다른 테이블과의 연관 관계를 알기 위해 (PK-FK) 사용한다.
  • PK 지정 시, INDEX가 걸려 해당 칼럼으로 조회 시 굉장히 빠르게 접근 가능하다. 대신 INDEX 정보 값이 추가되고, 삽입시마다 해당 정보 값을 갱신!
  • Index 값(PK 값)으로 여러 개의 칼럼을 지정 가능하다.
  • 꼭 지정될 필요는 없다… 하지만, 지정하는 걸 추천한다!

 

멀티 칼럼일 때는 "left-most"로 인덱스를 타니 id, name으로 pk가 걸려있을때는 (name, id)로 검색했을때 느려지니 INDEX로 (name, id) 하나를 더 걸어준다


반응형