상품의 옵션 항목이 DB 에 따로 저장 되는 이유를 설명 해주실 수 있을까요??? 채택완료

g5_shop_item 과 g5_shop_item_option DB 를 합할 예정인데요.

(다른 이유 없습니다 ^^)

제가 혹시 간과하고 넘어간게 있을까 해서

'혹시' 몰라 DB 합하기 전에 한번 여쭤보려고요.

상품 DB 와 옵션 DB 가 나누어진 이유와 이점이 있다면 어떤 것이 있을까요?

(제가 쇼핑몰 솔루션을 깊게 만져본게 영카트가 처음이라 ㅠㅠ)

답변 1개

채택된 답변
+20 포인트
상품마다 옵션의 개수가 유동적으로 변하기 때문에 별도 테이블에 저장하고 있습니다.
상품정보 테이블에 저장했을 경우 옵션 개수의 유동성 때문에 serialize 함수 등을 이용해
필드에 저장해야 할 겁니다. 그러나 이렇게 했을 경우 재고 수량 등의 변경 등을 위해서
unserialize 후 개수를 변경하고 다시 serialize 후 DB 저장을 해야합니다.
이렇게 코드 자체가 복잡해지기 때문에 분리를 한 것입니다.
로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

답변 감사합니다.
그러고보니 모 쇼핑몰 솔루션 소스를 봤었는데

시리얼라이즈로 묶어놨더라고요.

그거 따로 빼서 편리님 말씀처럼 언시리얼라이즈로 다시 풀어헤쳤다가

포기 했었는데...

어휴 아직 안합쳐서 다행입니다.

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인
🐛 버그신고