SQL을 작성하다 보면 테이블명이나 컬럼명을 정할 때 여러 가지 표기 스타일(naming convention) 중에서 고민하게 됩니다. 특히 Java나 JavaScript 개발자들에게 익숙한 camelCase 표기법을 SQL에서도 사용해도 괜찮은지, 또는 어떤 표기법을 쓰는 게 좋은지 궁금한 분들이 많습니다. 이 글에서는 SQL에서 사용하는 대표적인 표기법들과, 그 중 camelCase의 특징과 주의할 점을 정리해보겠습니다.
CamelCase란?
CamelCase는 여러 단어를 붙일 때, 첫 단어는 소문자, 이후 단어의 첫 글자만 대문자로 작성하는 방식입니다. 낙타의 혹처럼 단어 중간이 볼록하게 보인다고 해서 붙여진 이름입니다.
의미 camelCase 표기
사용자 이름 | userName |
생성 시간 | createdAt |
총 금액 | totalAmount |
이 표기법은 Java, JavaScript, TypeScript 같은 언어에서 변수명으로 자주 사용되며, 그 익숙함 때문에 SQL에서도 자연스럽게 사용하는 경우가 많습니다.
SQL에서 CamelCase를 사용해도 될까?
결론부터 말하자면 사용은 가능하지만 주의가 필요합니다. SQL은 기본적으로 대소문자를 구분하지 않는 언어입니다. 즉, userName, USERNAME, username을 모두 동일하게 인식하는 경우가 대부분입니다. 하지만 이는 사용하는 데이터베이스 시스템(DBMS)에 따라 다를 수 있습니다.
예: MySQL에서는
SELECT userName FROM users;
→ username, UserName, USERNAME 모두 동일하게 인식
예: PostgreSQL에서는
SELECT "userName" FROM users;
→ 쌍따옴표(")로 감싸야만 정확히 userName이라는 컬럼명을 인식
→ "UserName"과 "username"은 서로 다르게 취급됨
즉: camelCase는 대소문자를 구분하는 DBMS에서는 주의해서 사용해야 합니다
실수로 쌍따옴표를 생략하거나, 대소문자를 다르게 쓰면 오류 발생 가능
SQL에서 사용되는 주요 표기법
SQL에서는 camelCase 외에도 다양한 표기 스타일이 존재합니다. 아래는 그 대표적인 스타일들과 특징입니다.
Snake Case (snake_case) – ✅ 가장 보편적
1. 단어 사이를 밑줄(_)로 연결
2. 모든 글자를 소문자로 작성
3. 가장 널리 쓰이고, SQL 문법과도 가장 잘 호환
SELECT user_name, created_at FROM users;
Camel Case (camelCase)
앞서 설명한 방식으로 가독성은 좋지만, SQL에서 사용할 땐 따옴표 처리 등 주의 필요하다.
SELECT "userName", "createdAt" FROM users;
Pascal Case (PascalCase)
모든 단어의 첫 글자를 대문자로 표기
클래스나 테이블명 등에 가끔 사용되지만, SQL에서는 잘 쓰이지 않음
SELECT "UserName", "CreatedAt" FROM Users;
Kebab Case (kebab-case) – ❌ SQL에서는 비권장
단어 사이를 하이픈(-)으로 구분
SQL 문법상 하이픈은 연산자로 인식되기 때문에 사용 불가
-- 잘못된 예시
SELECT total-amount FROM orders; -- ❌ 에러 발생
실무에서는 어떤 표기법을 써야 할까?
SQL에서는 다음과 같은 이유로 snake_case가 가장 권장되는 표기법입니다.
대부분의 DBMS에서 완벽하게 호환
따옴표나 대소문자 처리 문제 없음
협업 시 혼동 가능성이 낮음
예: user_name, created_at, order_id 등
CamelCase를 사용하고 싶다면:
일관성 있게 사용해야 하며
대소문자를 구분하는 DBMS에서는 "따옴표" 처리를 신경 써야 함
🧠 요약
[표기법 예시 가독성 SQL 호환성 실무 추천도]
1. snake_case user_name 👍 좋음 ✅ 최고 ✅ 매우 추천
2. camelCase userName 👍 좋음 ⚠️ 주의 필요 ❕ 가능하지만 조심
3. PascalCase UserName 보통 ⚠️ 혼동 가능 ❌ 잘 안 씀
4. kebab-case user-name 좋음 ❌ 문법 오류 ❌ 비추천
📌 마무리하며
SQL 문법에서 camelCase는 공식 문법은 아니지만, 변수나 컬럼명을 정할 때 자주 고민되는 스타일입니다. 가장 중요한 건 팀 내 컨벤션을 정하고 일관되게 사용하는 것입니다. 협업 중이라면 snake_case를 사용하는 것이 가장 안전하고, 혼자 관리하는 DB라면 자신의 익숙한 스타일을 활용하되, DBMS의 대소문자 처리 방식을 반드시 확인하고 사용하세요!