수정
ERD 수정 내용
open_time 테이블
•
day, start. day 3가지의 기존 컬럼 제거
•
closed_day ⇒ 휴무일이 하루가 아닐 경우가 있어, ENUM 타입으로 사용하기에는 부담이 있어보여, VARCHAR 타입 수정
•
operation_start ⇒ 오픈 시간
•
operation_end ⇒ 마감 시간
•
break_start ⇒ 브레이크 시작 시간 (브레이크 시간이 없을 경우도 있어 NULL 허용)
•
break_end ⇒ 브레이크 종료 시간 (브레이크 시간이 없을 경우도 있어 NULL 허용)
restaurant 테이블
•
last_update ⇒ 정보 최신화 여부를 확인하기 위해 추가
menu 테이블
•
last_update ⇒ 정보 최신화 여부를 확인하기 위해 추가
tip 테이블
•
last_update ⇒ 정보 최신화 여부를 확인하기 위해 추가
last_update 속성에 대한 의논 사항 @Cheolho Jeon @Daewon Park
•
속성 추가 이유 : 현재 소개하는 식당의 자료가 언제적 자료인지 현행화 시켜놓기 위함.
•
조건
◦
menu 테이블 업데이트 되면 restaurant 테이블이 최신화 되어야 하나?
◦
tip 테이블 업데이트 되면 restaurant 테이블이 최신화가 되어야 하나 ?
◦
만약 메뉴만 업데이트 되고 팁 업데이트가 과거 일 때 식당 테이블은 해당 속성을 메뉴 테이블 기준으로 업데이트 해야하나 ?
•
방안
◦
1안) restaurant, menu, tip 모두 각각 last_update 정보가 있게 구현
◦
2안) menu와 tip의 업데이트가 발생하면, restaurant 테이블의 last_update 속성이 변경 되도록 트리거 작성 (요즘 추세는 트리거를 모델링에 포함 시키지 않기 때문에 비추천 방식)
◦
추가 안에 대한 의논 필요.
DDL 수정 내용
UUID 상속(자식) 제외 하고 부모는 default uuid_generate_v4() 완전 랜덤 값으로 적용 했어요.
상속 관계
구성 1안과 동일함.
1.
category
a.
restaurant 테이블의 부모
2.
tip
a.
restaurant_tip 테이블의 부모
3.
restaurant
a.
open_time 테이블의 부모
b.
menu 테이블의 부모
c.
restaurant_tip 테이블의 부모
4.
open_time
5.
menu
6.
restaurant_tip
테스트 용 DDL
SQL