DB 설계 - 논리적 모델링 #520
dev-hobin
started this conversation in
Today I Learned
Replies: 1 comment 1 reply
-
|
db는 그냥 개인적으로 공부하시는건가요? |
Beta Was this translation helpful? Give feedback.
1 reply
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
자연키는 변경가능성에서 자유롭지 못하다. 대리키를 PK로 만들고 자연키는 유니크 제약조건 걸어라.
외래키가 없어 규칙을 DB 수준에서 강제할 수 없는 경우 애플리케이션 계층에서 하나의 트랜젝션으로 잘 묶어서 제약을 만족하는 코드를 짜야한다.
1 테이블이 외래키 가져가면 나중에 PK 충돌난다.
아니라면 합치는 것이 낫다.
안그러면 1:N 관계가 됨
주테이블이 외래키를 굳이 컬럼으로 가지고 있을 필요가 없다. -> 독립성 보장
선택관계 표현이 명확히 됨 -> 주테이블이 NULL을 허용하는 외래키를 가질 필요가 없음
식별관계 쓰면 확장성,유연성 떨어진다.
음.. 결국 PK 만들 때 거만하게 평생 불변할 조건이라고 생각하고 자연키를 한개 이상 엮어서 만들 생각하지 않기를 명심하면 자연스럽게 위의 내용을 생각해낼 수 있는듯하다?
이것만 주의하면 나머지는 직접 해보면서 잘못된 방향으로 가고 있을 때 묘한 이질감을 느끼겠지?
Beta Was this translation helpful? Give feedback.
All reactions