백엔드

스키마/ 테이블/ 컬럼 네이밍 규칙

음그냥 2023. 3. 21. 22:11
728x90
반응형
SMALL

내부 표준 가이드가 없을 때 일반적으로 설계할 때 참고하면됨

 

스키마 이름 규칙 (Schema Naming Rule)

 

스키마란?

Database의 구조와 제약 조건에 관한 전반적인 명세를 기술한 메타데이터의 집합을 말한다.

이번 글과 관련이 없어서 간단히 정의된 내용만 작성했지만, 스키마도 내용이 굉장히 많으니 자세한 내용을 알고싶다면 DataBase 스키마를 검색하기 바란다.

 

  • 설계
    • 대문자로 작성한다.
    • Database Profile을 의미하는 이름으로 작성한다.
    • Short Name의 길이는 최대 8자리를 넘기지 않게 한다.
    • Short Name은 각 현장마다 고유(Unique)한 이름을 사용한다.

 

  • 표기 방식 예제
    • PARKING, MILEAGE, ...

 


 

테이블 이름 규칙 (Table Naming Rule)

  • 설계
    • 대문자로 작성한다.
    • 테이블임을 표시하기 위해 앞 또는 뒤에 TB_ || _TB를 붙여준다.
    • 의미있는 테이블 명은 3단어까지 사용할 수 있다.
    • 단어와 단어 사이에는 '_'를 사용한다.
    • 각 단어는 최대 8자리까지 사용하도록 한다.
    • 앞 또는 뒤에 구분명을 붙여준다.
      • 구분명 ex) USER_HISTORY, USER_TRIGGER, ...

 

  • 표기 방식 예제
    • TB_USER, TB_USER_HISTORY, ...

 


 

컬럼 이름 규칙 (Column Naming Rule)

  • 설계
    • 대문자로 작성한다.
    • 단어와 단어 사이에는 '_'를 사용한다.
    • 각 단어는 최대 8자리까지 사용하도록 한다.
    • 약어의 조합으로 구성된다.
    • 컬럼의 의미를 한 눈에 알 수 있는 *접미사를 사용한다.

 

  • 표기 방식 예제
    • COMMON_CD, USER_NM, MEMBER_NO, ...

 

대표적인 접미사 정리

접미사 내용 설명
_CD CODE 주로 코드 테이블의 코드, 각종 코드에 사용된다. 숫자나 문자로 이루어진 코드에 해당되며, 숫자나 문자의 각 부분이 의미가 있는 경우에 코드를 사용한다. 대부분 PK에 해당한다.
_NM NAME 코드에 대한 명칭에 주로 사용된다. 논리명이 이름, 명칭인 경우에 해당된다.
예) 사용자이름 USER_NM, 자원명 RES_NM,
중분류 코드명 DVSN_NM, 메뉴명 MENU_NM
_NO NUMBER 숫자로만 이루어진 경우, 주로 논리명이 번호인 경우에 사용.
예) 주민등록번호 JUMIN_NO, 조문번호 JO_NO,
게시물번호 BOARD_NO
_SQ SEQUENCE 오라클의 Sequence, MSSQL의 Identity의 경우에 사용한다. 숫자 일련번호로 PK를 설정할 경우 SQ를 사용한다. MSSQL의 Identity의 경우 주로 _ID를 사용하는 경우가 많은데, 사용자 아이디 – USER_ID의 ID와 의미가 틀려 SQ를 사용한다.
예) 작업번호 WORK_SQ, 이력번호 HISTORY_SQ
_ID ID 주로 사용자 아이디의 경우에 사용한다.
예) 사용자아이디 USER_ID, 등록자아이디 REG_ID
_DT DATE 날짜의 경우 사용한다. DT는 날짜 타입이 DATE형인 경우에만 사용한다. 
보통 날짜의 경우 CHAR(8)형으로 20050718식으로 저장을 많이 한다. 이런 경우에는 _YMD를 사용한다. 예) 삭제일자 DEL_DT, 변경일자 CHG_DT
_YMD YYYYMMDD 날짜의 경우 사용한다. 날짜 타입이 CHAR 인경우 사용한다. 
년월일인 경우 _YMD를 사용하고, 년월형식으로 CHAR(6)로 저장될 경우 _YM을 사용한다. 년도, 월, 일자 인경우에는 YEAR, MONTH, DAY등의 컬럼명을 사용한다.
_GB 구분 구분값을 나타낼 때 사용한다.
CD는 주로 코드테이블을 별도로 사용할 때 적당하고, 테이블 없이 코드상에서 구별할 때 사용한다. 가령 사용자구분 필드가 있을 때 일반사용자, 내부사용자가 있다면 별도의 사용자 그룹테이블로 분리하여 사용할 경우 GROUP_CD가 필드명이 되지만, 코드상에서 일반(G), 내부(I)로 사용하기로 결정했다면 GROUP_GB 필드명을 사용하면 된다.
예) 통계구분 STAT_GB
_ST STATE 상태값이다. 주로 CHAR(1) 형식을 사용한다.
예) 사용자 상태 USER_ST
_FL FLAG 플레그값이다. 종종 삭제하지 않는 테이블에 삭제플레그를 많이 사용된다. 
값은 0/1 이나 Y/N를 많이 사용한다.
예) 삭제여부 DEL_FL, 요청여부 REQ_FL
_ORD ORDER 순서를 나타낼 때 사용한다.
예) 컬럼순서 COLUMN_ORD
_CNT COUNT 예) 조회수 VIEW_CNT
_AMT AMOUNT 예) 재고량 STOCK_AMT
_SUM SUM 예) 분기합계 QTR_SUM, 년도합계 YEAR_SUM

 

 

 

출처 : https://jeongkyun-it.tistory.com/186

728x90
LIST