⭐최종
QuickDBD 작성
.png)
✅피드백
Naming
- Table명은 파스칼케이스(ex. TableName, UserInfo), 칼럼명은 카멜케이스(ex. columnName, userId) 통일하시는 것이 나중에 보기 편합니다.
Columns
- 쿼리문으로 얻을 수 있는 값들을 칼럼으로 만들지는 않았는지(좋아요, 찜 개수, 리뷰 개수 등등) 확인해주세요.
- 모든 테이블에 구분자(id나 idx), createdAt, updatedAt, status가 존재하는지 확인해주세요.
- 연결테이블의 pk의 경우, 복합키(2개의 pk)가 아닌 별도의 독립적인 키를 만들어 pk(id or idx)로 만들어주는 것이 좋습니다.
Type / Value
- 모든 테이블의 기본키(id) 칼럼 데이터 타입은 BIGINT형을 사용하시는게 좋습니다(+AI 설정).
왜냐하면 칼럼의 개수는 무한히 많이 늘어날 가능성이 있기 때문입니다.
- 음수를 사용하는 경우가 아니라면 int unsigned 타입을 선택해주셨는지.
(불필요한 공간을 최소화하기 위해서입니다.) 또한 int형일 때 null을 허용하면 안됩니다!
- 비밀번호의 경우 varchar(200)정도로 크기를 넉넉하게 해주셔야합니다.
(그 이유는 비밀번호는 암호화되어 저장되기 때문에 넉넉한 크기로 잡아주는 것이 좋기 때문입니다. ex) (실제)password123 -> (암호화)dnsakjn4j12#@fcjdsjn3kij41)
- 휴대폰 번호의 경우 varchar형을 사용하시는 것이 좋습니다.(숫자로 int로 하시면 010에서 앞의 0이 짤립니다)
- 이미지와 같은 미디어 파일은 URL을 통해 가져오기 때문에 TEXT Type을 사용하셔야 합니다.
- 좋아요 수나 댓글 수 등은 쿼리문을 통해서 가져올 수 있으므로
- 요즘은 DB공간이 충분하기 때문에 전반적으로 넉넉하게 크기를 잡아주시는 것이 좋습니다.(만약 어떤 회사의 DB를 만드신다면 오래 쓰는 만큼 미래의 변수를 고려하여 넉넉히 잡아주세요!)