본문 바로가기
DB

[DB] 과연 3년차 비전공 개발자도 이해할 수 있을까? 인프런 DB 설계 강의 - 4. DB 네이밍 규칙

by woorix2 2024. 12. 26.

규칙이라는 영어 단어 이미지
출처 픽사베이

1. 테이블명, 컬럼명을 소문자로 작성

테이블명, 컬럼명을 지을 때 소문자와 대문자를 섞어 쓰지 않고, 소문자로만 작성한다. 왜냐하면 MySQL에서는 운영체제에 따라 대소문자를 구분해서 해석하기도 하고, 대소문자를 구분하지 않고 해석하기도 한다. 따라서 운영 체제에 따라 잘못 작동되는 걸 방지하려면 대소문자를 섞어 쓰지 않아야 한다.

1) 우리 회사는 테이블명은 소문자, 컬럼명은 대문자로 쓰고 있다.

 

2. snake_case를 사용

테이블명, 컬럼명을 구성할 때 띄어쓰기가 필요한 경우 snake_case를 활용해 구성한다. 위에서 잠깐 언급했듯이 대소문자를 섞어 썼을 때의 단점이 명확하기 때문에 대소문자를 섞어 쓰지 않고 띄어쓰기를 표현할 수 있는 snake_case를 활용할 것을 추천하다.

1) 다행히 스네이크 케이스는 쓰고 있다.

 

3. 축약어 사용 X

개발은 혼자하지 않고 여러 명이서 같이 해야 하는 경우가 많다. 따라서 네이밍 규칙을 지을 때 항상 신경 써야 하는 건 가독성이다. 그 어떤 개발자가 보더라도 직관적이면 직관적일수록 좋다.

1) 내용은 공감하지만, 반대의 생각이 들기도 한다. 처음에는 축약어가 낯설어서 가독성이 떨어질 수 있으나 한 회사에서 비슷한 도메인의 프로젝트를 여럿 수행한다면 그 축약어도 자주 쓰이게 될 테니 결국 가독성의 문제는 크지 않을 듯하다.

 

4. SQL문을 작성할 때 예약어만 대문자로 표현

SQL 문법 자체는 대소문자를 따로 구분하지 않는다. 하지만 SQL문의 가독성을 위해 예약어만 대문자로 작성한다.

1) 우리 회사는 Mybatis를 쓰는데, SQL 쓸 때 전부 대문자로 작성한다.

 

5 테이블명은 복수형 사용(선택)

여러 개의 데이터를 가지고 있음을 나타내기 위함이다. 이 규칙은 회사마다 많이 갈리는 규칙이다. 즉, 테이블명을 지을 때 단수형을 사용하는 회사도 많다. 중요한 건 일관성이다. 따라서 테이블명을 지을 때 복수형을 사용할 건지, 단수형을 사용할 건지만 정하면 된다.

1) 오 전혀 생각하지 못한 내용이다. 앞으로 써먹어야겠다!


'인프런 - 비전공자도 이해할 수 있는 DB 설계 입문/실전' 강의를 수강하며 내용 정리를 위해 작성한 포스팅입니다.

인용은 JSCODE님 수업자료에서 퍼온 것입니다.