Imagine

[TIL] 아는 만큼 보이는 데이터베이스 설계와 구축 본문

Today I Learn

[TIL] 아는 만큼 보이는 데이터베이스 설계와 구축

lovinit 2020. 8. 9. 23:47

요즘 데이터베이스 설계를 업무에서 하기 시작하는데
설계를 맞게하고 있는지 더 좋은 방법은 없는지 찾기 위해 책을 읽기 시작했다. 책이름은 한빛미디어 출판사의 아는 만큼보이는 데이터베이스 설계와 구축이다.

식별자와 비식별자 관계
식별자관계
부모와 자식의 관계가 강력
자식의 pk에 부모의 pk가 포함된다.

비식별자관계
부모의 pk가 자식의 일반속성에 포함된다.

식별자관계로만 연결된 데이터 모델은 pk속성이 지속적으로 증가할 수밖에 없는 구조라서 복잡성과 오류 가능성이 높아진다.

비식별자 관계로만
데이터 모델을 만들면서 자식 테이블의 pk를 독립적으로 유지한다. 자식 테이블에서 데이터를 처리할 때 부모테이블을 찾아가야하는 경우가 생겨난다. 부모의 속성이 자식테이블로 상속되지 않아서 생기는 문제이다.

이 내용을 보면서 내가 만든 테이블의 구조가 잘못되었다는 것을 깨달았다. 테이블에 각자 고유의 속성이 있어야지 중복된 데이터 컬럼이 있는것이 좋지 않은것이라 생각했었다. 즉 내가 만든 부모 자식관계의 테이블은 강력한 관계임에도 비식별자 관계로만 구성되어 있었다. 그래서 여러 테이블의 정보가 필요하니 join의 수도 늘어나는 형태가 되어버렸는데 적적절한 식별자 조합형태로 수정이 필요 할것 같다.

'Today I Learn' 카테고리의 다른 글

[TIL] Git Rebase 와 Merge 차이  (0) 2020.09.21
[TIL] Java - Integer와 int의 차이  (0) 2020.08.26
[TIL]  (0) 2020.08.05