기본 원칙
- 무결성 - 데이터베이스 내에 모든 값은 언제나 정확한 값을 유지해야 한다.
- 유연성 - 데이터베이스 구조는 요구사항 변화에 대해 수정이 쉬워야 한다.
- 확장성 - 데이터베이스 구조는 기능 확장에 대해서 수정이 쉬워야 한다.
엔티티 이해
- 유형 엔터티 : 물리적인 형태 o, ex. 상품, 회원)
- 개념 엔터티 : 물리적인 형태 x, 개념적, ex. 부서, 학과)
- 사건 엔터티 : 행위로 인해 발생, ex. 주문, 이벤트 응모)
기본키 생성시 자연키 vs 인조키
기본 키란 해당 레코드를 식별하기 위한 유일한 값
자연키 (DB에서 자동으로 생성해주는 것)
- 장점 : 자동으로 인덱싱 해줌
- 단점 : 혹여 기본키 수정해야 될 상황 발생시 문제 발생
인조키 (직접 생성 후 지정)
- 장점 : 비즈니스 로직으로 인한 기본키 변경시에도 유연한 대처 가능
- 단점 : 인덱싱 추가 지정 필요 필요
'소프트웨어 개발자 > 좋은 API, DB 설계하기' 카테고리의 다른 글
[좋은 DB 설계하기] 수치형 필드 설계하기 (0) | 2024.09.29 |
---|---|
[좋은 DB 설계하기] 제한된 값을 설계 할 때 Enum vs 테이블 (0) | 2024.07.05 |
[좋은 DB 설계하기] 테이블 명 설계 비교 (_log, _results, _history) (0) | 2024.06.30 |
[좋은 API 설계하기] API 응답 시 모든 상태코드 200 고정 (0) | 2024.04.21 |
[좋은 API 설계하기] API 버전 정책 (feat. 토스페이먼츠) (0) | 2024.01.31 |