• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    해결됨

주문과 배송의 1:1 관계가 아닌 1:N 관계의 요구사항에 대해 여쭙습니다.

20.01.24 12:48 작성 조회수 127

2

안녕하세요.

'도메인 분석 설계 - 도메인 모델과 테이블 설계, 엔티티 클래스 개발 1' 강의 부분에 궁금한 사항이 있어서 여쭙습니다.

팀장님께서 예제로써 설계하신 테이블 및 클래스 연관관계 매핑을 작성하던 중에

만약, 주문과 배송이 1:1 관계가 아니라, 1:N 관계를 이루고 있다고 한다면 주문(Order) 테이블과 배송(Delivery) 테이블 사이에

이들을 1:N으로 연관시킬 수 있는 중간테이블이 존재해야하는지, 이때 외래키는 배송 테이블로 설정해야하는지 알고싶습니다.

질의 내용을 아래에 쉽게 풀어 보았습니다.

예를들어,

하나의 주문정보가 있고

주문 내역에는 여러 상품들이 있는 경우 

이때 각 주문 상품에 대해 배송정보(택배회사, 운송장번호 등)를 등록해주어야 하는 요구사항있다면 프로젝트 설계단계에서 테이블 및 클래스 연관관계 설정이 궁금합니다. 

미리 답변 감사드리며, 새해 복 많이 받으세요.

답변 2

·

답변을 작성해보세요.

4

안녕하세요. Painkiller님

주문과 배송이 1:1관계가 아니라 1:N 관계를 이루면 배송이 외래키를 가지는 방식으로 설계해야 합니다.

또는 중간테이블을 두고 중간테이블이 주문과 배송 양쪽의 키를 가지는 방식으로 설계하셔도 됩니다.

중간테이블을 두는 방식은 1:N 관계뿐만 아니라 향후 N:M 관계로 설계를 쉽게 변경할 수 있다는 장점이 있는 반면에, 테이블을 하나 더 관리해야 하기 때문에 시스템 운영과 성능에서 단점을 가지고 있습니다.

더 궁금한 내용이 있으면 추가로 질문주세요.

그리고 새해 복 많이 받으세요^^

1

살아남자님의 프로필

살아남자

2020.05.18

주문상품에 대한 배송정보가 달라 주문과 배송이 1:N이 된다면, ORDER와 DELIVERY 관계는 끊고 ORDER_ITEM과 DELIVERY에 대한 관계를 새로 정의하는 방식도 있을거 같아요..!