강의

멘토링

커뮤니티

인프런 커뮤니티 질문&답변

박호정님의 프로필 이미지
박호정

작성한 질문수

김영한의 실전 데이터베이스 - 설계 2편, 실무에서 반드시 마주치는 9가지 설계 패턴

정리

common_code_detail의 code 변경 가능성

작성

·

31

·

수정됨

0

안녕하세요 영한님. 강의 정말 잘 듣고 있습니다.

common_code_detail은 pk로 natural key(group_code, code) 를 사용하는 것이 정형화되어 있다고 하신 부분을 이해했습니다.

 

서비스를 운영하다 보면 code의 값을 수정할 경우가 생길 가능성이 있을 거 같은데요.

예를 들면, 다음과 같은 요구사항이 있을 거 같습니다.

group_code가 ORDER_STATUS 인 code에 대한 변경 요청.

  • SHIPPING 을 두가지 상태로 확장(SHIPPING_START, SHIPPING_COMPLETED)

  • 변경 전의 SHIPPING은 SHIPPING_COMPLETED로 취급한다.

 

설계 1편의 "pk는 immutable해야한다" 라는 3번째 규칙이 있었는데요.

공통 코드 테이블의 경우에는 3번째 규칙을 유연하게 적용해야하나? 하는 생각이 들었습니다.

공통 테이블은 natural key를 사용하니 어느정도 허용을 한다고 보면 될까요?
아니면, 기존 키는 삭제하지 않은 채로 그대로 두고 새로 만들어서 규칙을 지키는 방향으로 하시는지 궁금하네요.

 

실무에서 이런 케이스들은 어떻게 다루시는지 궁금합니다. 감사합니다.

답변

답변을 기다리고 있는 질문이에요
첫번째 답변을 남겨보세요!
박호정님의 프로필 이미지
박호정

작성한 질문수

질문하기