NAMING CONTRACT

이름 규칙은 SQL과 운영 문서의 공통 언어다

테이블과 컬럼 이름은 사람이 읽는 계약이다. 소문자와 밑줄을 기본으로 고정하면 SQL, ORM, 마이그레이션 문서가 같은 대상을 가리킨다.

권장 기본형

복수 테이블명, snake_case 컬럼명, 외래키는 대상 테이블을 드러낸다.

orders order_items customer_id created_at
피해야 할 신호

예약어, 공백, 한글, 대소문자 혼합은 도구와 DBMS 이동에서 비용이 된다.

"OrderItem" user order
DBMS 인용하지 않은 이름 운영 규칙
Oracle 대문자로 접힘 혼합 대소문자 인용 식별자를 만들지 않는다
PostgreSQL 소문자로 접힘 소문자 snake_case로 그대로 조회되게 둔다
MySQL OS와 설정 영향을 받을 수 있음 배포 환경까지 소문자 테이블명으로 통일한다

핵심: 이름은 취향이 아니라 SQL과 코드, 운영 문서가 같은 객체를 안정적으로 가리키게 하는 규칙이다.