티스토리 뷰

개발 산출물용 테이블 정의서를 만들기 위해서는 테이블의 기본 정보와 해당 테이블에 속한 컬럼들의 상세 정보(데이터 타입, 길이, Null 여부, 주석 등)를 결합해야 합니다.

가장 깔끔하게 산출물 양식으로 뽑아낼 수 있는 SQL 쿼리를 준비했습니다.

 

테이블 정의서 추출 SQL (오라클 기준)

이 쿼리는 테이블의 주석과 컬럼의 상세 정보를 한 번에 결합하여 출력합니다.

 

 

SELECT 
    A.TABLE_NAME AS "테이블명",
    C.COMMENTS   AS "테이블 설명",
    A.COLUMN_ID  AS "순번",
    A.COLUMN_NAME AS "컬럼명",
    B.COMMENTS   AS "컬럼 설명",
    A.DATA_TYPE || 
        CASE 
            WHEN A.DATA_TYPE IN ('VARCHAR2', 'CHAR', 'RAW') THEN '(' || A.DATA_LENGTH || ')'
            WHEN A.DATA_TYPE = 'NUMBER' AND A.DATA_PRECISION IS NOT NULL AND A.DATA_SCALE > 0 
                THEN '(' || A.DATA_PRECISION || ',' || A.DATA_SCALE || ')'
            WHEN A.DATA_TYPE = 'NUMBER' AND A.DATA_PRECISION IS NOT NULL 
                THEN '(' || A.DATA_PRECISION || ')'
            ELSE '' 
        END AS "데이터 타입",
    CASE WHEN A.NULLABLE = 'N' THEN 'No' ELSE 'Yes' END AS "NULL 허용",
    A.DATA_DEFAULT AS "기본값"
FROM 
    USER_TAB_COLUMNS A
JOIN 
    USER_COL_COMMENTS B ON A.TABLE_NAME = B.TABLE_NAME AND A.COLUMN_NAME = B.COLUMN_NAME
JOIN 
    USER_TAB_COMMENTS C ON A.TABLE_NAME = C.TABLE_NAME
WHERE 
    A.TABLE_NAME NOT LIKE 'BIN$%' -- 휴지통 테이블 제외
ORDER BY 
    A.TABLE_NAME, A.COLUMN_ID;

💡 쿼리 결과 활용 팁

  1. 엑셀로 내보내기:
    • SQL Developer에서 위 쿼리를 실행합니다.
    • 결과 그리드(Grid)에서 **마우스 우클릭 > 내보내기(Export)**를 선택합니다.
    • 포맷을 Excel로 지정하여 저장하면 즉시 테이블 정의서 초안이 완성됩니다.
  2. 특정 테이블만 뽑고 싶을 때:
    • WHERE 절에 AND A.TABLE_NAME = '테이블명'을 추가하세요.
  3. 데이터 타입 표시:
    • 위 쿼리는 VARCHAR2(100), NUMBER(10,2) 처럼 데이터 타입과 길이를 합쳐서 보여주도록 작성되어 있어 산출물에 바로 쓰기 좋습니다.
    •  
    • ※ 해당 내용은 Google Gmini3.0에서 작성되었습니다.
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG more
«   2026/07   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함