반응형

1. 테이블 명 보기 
SELECT * 
FROM ALL_TAB_COMMENTS 
WHERE TABLE_NAME = 'table_name' ;


2. 컬럼 명 보기 
SELECT * 
FROM ALL_COL_COMMENTS 
WHERE TABLE_NAME = 'table_name' ;


3. 테이블 정보 보기 
SELECT * 
FROM ALL_TAB_COLUMNS
WHERE TABLE_NAME = 'table_name' ;


4. 테이블 컬럼 정보 조회 
SELECT A.COLUMN_ID
     , A.COLUMN_NAME
     , B.COMMENTS
     , A.DATA_TYPE ||
      (CASE WHEN DATA_TYPE LIKE '%CHAR%'THEN
                '(' || DATA_LENGTH || ')'
            WHEN DATA_TYPE = 'NUMBER' AND DATA_PRECISION > 0 AND DATA_SCALE > 0 THEN
                '(' || DATA_PRECISION || ',' || DATA_SCALE || ')'
            WHEN DATA_TYPE = 'NUMBER' AND DATA_PRECISION > 0 THEN
                '(' || DATA_PRECISION || ')'
       END) DATA_TYPE
     , DECODE(NULLABLE, 'N', 'N') NULLABLE
  FROM ALL_TAB_COLUMNS  A
     , ALL_COL_COMMENTS B
 WHERE A.TABLE_NAME  = 'EMP'
   AND A.OWNER       = B.OWNER
   AND A.TABLE_NAME  = B.TABLE_NAME
   AND A.COLUMN_NAME = B.COLUMN_NAME
 ORDER BY A.COLUMN_ID ; 
 
 
5. 테이블 컬럼 정보 상세 조회
SELECT AA.COLUMN_ID,
       AA.COLUMN_NAME,
       BB.COMMENTS,
       AA.DATA_TYPE,
       AA.DATA_LENGTH,
       AA.DATA_DEFAULT,
       CC.PK,
       AA.NULLABLE,
       CC.FK
  FROM ALL_TAB_COLUMNS AA,
       ALL_COL_COMMENTS BB,
       (SELECT A.OWNER,
               A.TABLE_NAME,
               A.CONSTRAINT_TYPE,
               COLUMN_NAME,
               POSITION,
               CASE WHEN A.CONSTRAINT_TYPE = 'P' THEN 'Y' END AS PK,
               CASE WHEN A.CONSTRAINT_TYPE = 'R' THEN 'Y' END AS FK
          FROM ALL_CONSTRAINTS A, ALL_CONS_COLUMNS B
         WHERE     UPPER (A.OWNER) = UPPER ('table_user')
               AND A.TABLE_NAME = UPPER ('table_name')
               AND A.TABLE_NAME = B.TABLE_NAME
                AND A.CONSTRAINT_NAME = B.CONSTRAINT_NAME
               AND A.CONSTRAINT_TYPE IN ('P', 'F')) CC
 WHERE     UPPER (AA.OWNER) = UPPER ('table_user')
       AND UPPER (AA.TABLE_NAME) = UPPER ('table_name')
       AND AA.OWNER = BB.OWNER
       AND AA.TABLE_NAME = BB.TABLE_NAME
       AND AA.COLUMN_NAME = BB.COLUMN_NAME
       AND AA.OWNER = CC.OWNER(+)
       AND AA.TABLE_NAME = CC.TABLE_NAME(+)
       AND AA.COLUMN_NAME = CC.COLUMN_NAME(+)
ORDER BY COLUMN_ID  

반응형

+ Recent posts