• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    미해결

다대다 관계 매핑 설계에 대해 질문드립니다!

20.10.16 00:04 작성 조회수 173

0

안녕하세요! 좋은 강의 찍어주셔서 정말 감사드립니다!

다름이아니라 선생님 말대로 테이블 설계를 하는 도중에 질문을 드립니다! 

ex) 아티스트가 여러개의 장르를 다룰 수 있는다고 할 경우

(A 테이블: 아티스트 , B 테이블 : 장르, C:  아티스트_장르)

A : B 가 M:N관계를 갖고 있어서  중간에 C라는 테이블을 자동으로 빠지게 해서  설계를 하려고 합니다

이때 C 테이블을

artist_id  genre_id

1                      1

1                      2

2                      1

2                      2

이런식으로 pk 없이 A와 B의 pk를 fk로만 받아와서 설계를 진행해도 괜찮을까요?

답변 1

답변을 작성해보세요.

2

안녕하세요. loosie 358님

당연히 해당 방법도 가능합니다. PK를 복합키로 지정하는 것이지요.(artist_id, genre_id) JPA도 해당 방법을 지원합니다.

복합키에 대한 내용은 JPA 책 7.3 복합 키와 식별 관계 매핑에서 자세히 설명드립니다.

그런데 복합키를 지정하면 어려가지로 복잡해져서, 이런 경우에도 PK를 하나 추가해서 사용하는 것을 저는 권장드립니다.

감사합니다.