[Oracle] Comment On Column column_name IS (직접 입력 용도로 코멘트 명령어 추출하는 쿼리)

오라클 데이터베이스에서는 각 컬럼에 대해 설명을 추가할 수 있도록 COMMENT ON COLUMN 구문을 사용하여 코멘트를 입력할 수 있습니다.

코멘트를 추가하면 테이블과 컬럼의 의미를 명확히 전달할 수 있어, 다른 개발자나 사용자들이 테이블 구조를 이해하는 데 큰 도움을 주기에, 작성하는 것을 권장해요! 😊

컬럼에 코멘트가 누락된 경우 이를 채우기 위한 쿼리를 자동으로 생성하는 방법이 필요할 때가 있어서 쿼리를 만들어 보았어요. 아래와 같이 USER_TAB_COLUMNS 뷰에서 테이블의 컬럼 정보를 추출해 코멘트 입력을 위한 SQL 스크립트를 생성할 수 있답니다.

코멘트 입력 쿼리 예시

컬럼 코멘트를 자동으로 생성하는 SQL은 다음과 같습니다.

SELECT    'COMMENT ON COLUMN ' 
       || TABLE_NAME 
       || '.' 
       || COLUMN_NAME 
       || ' IS '''';' 
  FROM USER_TAB_COLUMNS 
 WHERE TABLE_NAME = 'EMP' 
 ORDER BY COLUMN_ID;

이 쿼리를 실행하면 해당 테이블의 모든 컬럼에 대한 코멘트가 자동으로 생성됩니다. 실제로 실행된 결과는 다음과 같습니다. 😊

COMMENT ON COLUMN EMP.EMPNO IS '';
COMMENT ON COLUMN EMP.ENAME IS '';
COMMENT ON COLUMN EMP.JOB IS '';
COMMENT ON COLUMN EMP.MGR IS '';
COMMENT ON COLUMN EMP.HIREDATE IS '';
COMMENT ON COLUMN EMP.SAL IS '';
COMMENT ON COLUMN EMP.COMM IS '';
COMMENT ON COLUMN EMP.DEPTNO IS '';

이 쿼리는 EMP 테이블의 각 컬럼에 대해 빈 코멘트 입력 양식을 생성합니다. 이를 통해 빠르게 코멘트를 추가하고자 할 때, 필요한 스크립트를 간단하게 만들 수 있습니다.

코멘트를 입력하는 이유

오라클 데이터베이스에서 컬럼 코멘트를 입력하는 것은 다음과 같은 이유로 유용합니다.

  1. 가독성 향상: 다른 사용자가 테이블과 컬럼을 쉽게 이해할 수 있습니다. 예를 들어, 컬럼 이름만 보고도 해당 컬럼이 어떤 역할을 하는지 명확하지 않을 때, 코멘트는 중요한 설명이 될 수 있습니다.
  2. 유지보수 용이: 시간이 지나면서 테이블 구조에 대한 기억이 흐려질 수 있는데, 코멘트를 통해 테이블 설계 의도를 기록해두면 유지보수가 용이합니다.
  3. 협업 향상: 여러 사람이 함께 데이터베이스를 사용할 때, 코멘트는 의사소통을 돕는 중요한 역할을 합니다.

컬럼 코멘트 조회

참고로 각 테이블의 컬럼에 입력된 코멘트를 확인하려면 USER_COL_COMMENTS 뷰를 사용할 수 있답니다. 특정 테이블, 예를 들어 EMP 테이블에 대한 컬럼 코멘트를 조회하려면 다음과 같은 쿼리를 사용할 수 있습니다.

특정 테이블의 컬럼 코멘트 조회 쿼리

SELECT *
    FROM user_col_comments
   WHERE table_name = 'EMP';

쿼리 실행 결과 예시

TABLE_NAME | COLUMN_NAME | COMMENTS
---------------------------------------
EMP        | EMPNO       | 사원 번호
EMP        | ENAME       | 사원 이름
EMP        | JOB         | 직무
EMP        | MGR         | 관리자 번호
EMP        | HIREDATE    | 입사 날짜
EMP        | SAL         | 급여
EMP        | COMM        | 커미션
EMP        | DEPTNO      | 부서 번호

설명

  • USER_COL_COMMENTS 뷰: 이 뷰는 사용자가 소유한 테이블의 각 컬럼에 대한 코멘트를 조회할 수 있는 뷰입니다. 각 컬럼에 대한 코멘트 정보를 제공하며, 테이블 이름, 컬럼 이름, 그리고 코멘트 내용을 출력합니다.
  • TABLE_NAME = 'EMP': 특정 테이블, 여기서는 EMP 테이블의 컬럼 코멘트만 조회하기 위한 조건입니다. 다른 테이블을 조회할 때는 TABLE_NAME 조건에 해당 테이블 이름을 넣어주세요.
이전최근
댓글 쓰기
가져가실 때, 출처 표시 부탁드려요! 감사합니다. 💗