주문 1건을 등록할 때 주문과 주문상세가 반드시 함께 생성되어야 한다.… | [SQLD] SQL 개발자 기출유형 모의고사 1회 상세 페이지
1[SQLD] SQL 개발자 기출유형 모의고사 1회
주문 1건을 등록할 때 주문과 주문상세가 반드시 함께 생성되어야 한다. 이를 데이터 모델에 표현하는 방법으로 가장 적절한 것은?
1
상세를 주문의 다중값 속성으로 둔다
2
두 엔터티를 별도 트랜잭션으로 나눈다
3
주문상세 참여를 선택(○)으로 표기한다
4
두 엔터티 관계를 양쪽 필수로 표기한다
해설
주문과 주문상세가 한 단위로 함께 생성되어야 한다면 두 엔터티의 관계를 양쪽 필수로 표기해 하나의 트랜잭션으로 처리됨을 드러낸다.
이 표기는 주문 없는 상세나 상세 없는 주문이 생기지 않도록 두 INSERT를 한 트랜잭션으로 묶어야 한다는 것을 알려 준다.
- 주문상세 참여를 선택으로 두면 상세 없는 주문을 허용하는 모델이 된다.
- 별도 트랜잭션으로 나누면 한쪽만 저장되는 불일치가 생길 수 있다.
- 상세를 다중값 속성으로 두면 제1정규형을 위반한다.
오류나 개정된 내용이 보이면 알려주세요