[T3] db 설계에 대한 의문점
Closed this issue · 1 comments
yjinlee99 commented
멘토링 중 의문점이 생겨서 질문 드립니다.
-
임직원 테이블과 연차 테이블이 있는데 저희가 설계한 방식은 비식별적인 방식으로 연차 테이블 id를 따로 만드는 방식을 사용 했는데 멘토님 께서는 연도와 임직원 id 를 복합키로 사용하라고 하셨습니다. 저희가 배운 바로는 비식별이 더 좋다고 배웠었고 따로 id를 만드는 방식이 훨씬 편한데 아마 실무에서 이렇게 하기 때문에 이런 방식을 알려주셨을텐데 이런 방식으로 하는 이유가 궁금합니다.
-
임직원 id 는 string으로 사번은 int로 만들어서 임직원 id는 알파벳+숫자로 자동생성하고 사번은 숫자로 자동생성하는게 좋다고 하셨는데 jpa에서 사용하기에 숫자로 자동생성하는 방식의 기본키가 더 편한데 사번을 기본키로 사용하면 안되는지 그게 좋지 않다면 jpa에서 알파벳+숫자를 어떻게 자동생성하는지 궁금합니다.
참고할만한 저희 erd 첨부 합니다.
pySatellite commented
저희가 배운 바로는 비식별이 더 좋다고 배웠었고
- 에 대한 의견은 - 개발생산성 : 운영편의성 중 어떤 것을 선택하냐의 문제 인거 같습니다.
- 결합키를 사용하는 이유는 저도 유추해 보면 퀄리시에 해당 키를 갖고 의미를 파악하기 쉬워서 그런거 같아요.