개발관련 가이드/메타데이터

메타관리(테이블명명규칙_04)

베어그릴스 2022. 9. 15. 10:53
반응형

메타관리테이블명명규칙

테이블 명명규칙이란?

프로젝트를 많이 관리할수록 테이블명칭을 잘 지어야 테이블명만 봐도 이게 어떤 테이블인지 구분할 수 있게끔
네이밍 규칙을 이용해 테이블명을 생성한다.


개발자들은 항상 고민하는데 그것은 바로 네이밍 규칙이다.

또한 큰 기업 같은 경우 메타시스템을 도입하는 이유 중 하나다.
잘 만들어진 테이블명은 떡잎부터 다르다. 테이블명부터 이상한 네이밍을 쓴다면 그 속은 더욱더 이상하게 만들어져 있을 가능성이 농후하다.

네이밍 규칙은 보통 회사 내부나 프로젝트 진행 시 정해진 규칙을 따르면 되는데, 혼자 결정해서 하는 경우도 빈번히 발생한다. (예 클래스 명, 변수명... 등등)

 

모든 프로젝트를 진행할 때 데이터베이스명뿐을 잘 지어야 혼돈을 피할 수 있다.


아래의 방식대로 따라보기로 하자.

 

1. 테이블명은 대문자로 표기한다.

  • TB_ORDR_MA

2. 첫번째 테이블 종류 크기 2

TB_ORDR_MA1. 테이블명은 대문자로 표기한다.

  • TB(일반테이블)
  • TP(임시테이블)
  • TU(백업테이블)
  • TI(인터페이스테이블)
  • TR(참고테이블)
  • TS(샘플테이블)

이외의 객체는 아래와 같이 생성한다.

VW(뷰)

SQ(시퀀스)

FK(포링키)

PK(프라이머리키)

IX(인덱스)

 

3. 두번째 자리 크기 2는 회사코드를 나타낸다.

  • WB(웹사이트)
  • BG(블로그)
  • WK(작업)
  • SP(쇼핑몰)
  • RP(레포트)
  • DW(통계or마트)
  • OD(주문)

3. 세번째 업무모듈코드로 아래 구분 이외의 것을 정의해 사용가능하다.

  • CU(고객)
  • OR(조직)
  • BD(게시판)
  • EX(엑셀관련)
  • FL(파일)
  • BA(배치)
  • SY(시스템작업)
  • DC(문서작업)

3. 네번째 테이블 용도코드 구분

  • MA(마스터)
  • SB(서브)
  • HD(헤더)
  • DT(상세)
  • HS(히스토리)
  • MP(맵핑)
  • SB(서브)
  • LG(로그)

중첩될 경우 SEQ 시퀀스로 표기한다. 01 ~ ZZ

 

네이밍 규칙에 의해서 테이블을 생성해 보자.

1. 성격_업무+업무모듈코드_용도

2. 성격_업무+업무모듈코드_용도_SEQ

 

TB_ODCU_MA(일반테이블쇼핑몰고객마스터)

해석 : 

TB(일반테이블)

SP(쇼핑몰)+CU(고객)

MA(마스터)

 

위와 같이 네이밍규칙을 선언 할 수도 있고 업무를 뺀 아래와 같이 규칙을 정할수도 있다.

 

예를들면 고객마스터 같은경우 회원가입 , 로그인, 상품주문, 개인정보변경 등 여러곳에 쓰이기 때문에

아래와 같이 쓰는게 더 좋은 규칙이라 할 수 있다.

 

TB_CUST_MA(일반테이블고객마스터)

해석 :

TB(일반테이블)

CUST(사용자)

MA(마스터)

 

쇼핑몰에서 주문을 하는 과정을 생각해보자

주문 테이블과 관리자가 직접 발주 할 수 있는 테이블이 따로 있다고 가정해보자

 

ORDR(주문) 이라는 단어를 등록해서 사용하도록 한다.

ORAD(관리자주문) 이라는 단어를 동록해서 사용하도록 한다.

 

아래와 같이 네이밍 규칙을 정의해 생성한 테이블이 탄생 했다.

 

일반 적으론 위의 규칙을 따르는게 좋지만

1. 성격_업무+업무모듈코드_용도

2. 성격_업무+업무모듈코드_용도_SEQ

 

특수한경우 업무와 업무모듈코드를 한 단어로 등록하여 묶어서 표현도 가능하다.

 

TB_ORDR_HD(일반테이블주문헤더) / TB_ORDR_DT(일반테이블주문상세)

TB_ORAD_HD(일반테이블관리자주문헤더) / TB_ORAD_DT(일반테이블관리자주문상세)

 

TB_CODE_MA(테이블 코드 마스터)

CD_ID CD_COL_NM CD_KRN_NM CD_DFN USE_YN
009 MT_TBL_CHARCT_CD 테이블성격코드 테이블성격2자리 Y
001 CP_CD 회사코드 2자리회사코드 Y
010 MT_JOB_MOD_CD 업무모듈코드 모듈2자리 Y
011 MT_TBL_PRPOS_CD 테이블용도코드 디비종류3자리 Y
         

 

TB_CODE_DT(테이블 코드 상세 마스터)

CD_ID CD_NM CD_VAL CD_VAL_DFN CD_ORD_SEQ USE_YN
009 일반 TB 일반 10 Y
009 임시 TP 임시 20 Y
009 백업 TU 백업 30 Y
009 인터페이스 TI 인터페이스 40 Y
010 고객 CU 고객 10 Y
010 조직 OR 조직 20 Y
010 재고 OD 주문 30 Y
010 게시판 BD 게시판 40 Y
011 마스터 MA 마스터 10 Y
011 히스토리 HS 히스토리 20 Y
011 헤더 HD 헤더 30 Y
011 상세 DT 디테일 40 Y
011 로그 LG 로그 50 Y
011 맵핑 MP 맵핑 60 Y

 

다음 시간엔 프로젝트 폴더 명명규칙에 대하여 배워봅시다.

 

이 주제가 끝난 후 본격적인 네이밍, 단어, 도메인, 코드, 컬럼관리에 대해 배워

 

메타관리에 대한 주제가 머리에 정립되고 실제 프로젝트와 회사내에 적용할 수 있으면

더욱더 생존 확률이 높아질 것 입니다.

 

오늘도 보람찬 생존 ^.^

반응형