IT/기타

Oracle 테이블 컬럼 정보 조회 쿼리(컬럼명, PK, FK, Nullable)

twofootdog 2020. 11. 20. 11:20

프로젝트 진행 시 분석/설계를 진행할 때 기존에 등록되어 있는 Oracle 테이블 컬럼정보를 조회하는 경우가 많다(예를 들면 컬럼 물리명/논리명, PK, FK, Nullable, Data 기본값 등등)

그래서 해당 내용을 기억하기 위해 아래와 같이 컬럼 정보 조회 쿼리를 정리해 보았다.

 


  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 ('테이블유저명')
                 AND A.TABLE_NAME = UPPER ('테이블명')
                 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 ('테이블유저명')
         AND UPPER (AA.TABLE_NAME) = UPPER ('테이블명')
         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

 


참고

cofs.tistory.com/381

 

Oracle Column PK FK 조회 쿼리

oracle column pk fk 조회 oracle 에서 column 정보를 조회하는 방법이다. 필요한 경우가 많아서 기록해 둔다. 해당 쿼리에서는 column 명과 더불어 comments, pk, fk 여부 등 부가적인 정보도 조회한다. 해당 쿼.

cofs.tistory.com