/********************************************************************************************
-- Title : [10G] 컬럼 정보 보기 뷰
-- Reference : 웹검색 - 다수
-- Key word : column 컬럼
********************************************************************************************/
SELECT TC.TABLE_NAME AS TABLE_NAME
, TC.COLUMN_NAME AS COLUMN_NAME
, TC.DATA_TYPE AS DATA_TYPE
, TC.DATA_LENGTH AS COLUMNLENGTH
, TC.CHAR_COL_DECL_LENGTH AS CHARACTER_MAXIMUM_LENGTH
, TC.COLUMN_ID AS ORDINAL_POSITION
, TC.CHAR_LENGTH AS CHARACTER_MAXIMUM_LENGTH
, TC.DATA_PRECISION AS NUMERIC_PRECISION
, TC.DATA_SCALE AS NUMERIC_SCALE
, TC.NULLABLE AS IS_NULLABLE
, TC.DATA_DEFAULT AS COLUMN_DEFAULT
, UPC.UPDATABLE AS UPDATABLE
, UPC.INSERTABLE AS INSERTABLE
, UPC.DELETABLE AS DELETABLE
, UCC.ISPRIMARYKEY
, UCC.ISFOREIGNKEY
, UIC.HASUNIQUECONSTRAINT
FROM USER_TAB_COLUMNS TC
, USER_UPDATABLE_COLUMNS UPC
, ( SELECT UC.TABLE_NAME
, UCC.COLUMN_NAME
, MIN (DECODE (UC.CONSTRAINT_TYPE, 'P', 'Y')) ISPRIMARYKEY
, MIN (DECODE (UC.CONSTRAINT_TYPE, 'R', 'Y')) ISFOREIGNKEY
FROM USER_CONSTRAINTS UC, USER_CONS_COLUMNS UCC
WHERE UC.TABLE_NAME = 'TTT2'
AND UCC.TABLE_NAME = UC.TABLE_NAME
AND UCC.CONSTRAINT_NAME = UC.CONSTRAINT_NAME
AND UC.STATUS = 'ENABLED'
AND UC.CONSTRAINT_TYPE IN ('P', 'R')
GROUP BY UC.TABLE_NAME, UCC.COLUMN_NAME
) UCC
, ( SELECT UI.TABLE_NAME
, UIC.COLUMN_NAME
, DECODE (UI.UNIQUENESS, 'UNIQUE', 'Y') HASUNIQUECONSTRAINT
FROM USER_INDEXES UI
, USER_IND_COLUMNS UIC
WHERE UI.TABLE_NAME = 'TTT2'
AND UIC.TABLE_NAME = UI.TABLE_NAME
AND UIC.INDEX_NAME = UI.INDEX_NAME
AND UI.UNIQUENESS = 'UNIQUE'
) UIC
WHERE TC.TABLE_NAME = 'TTT2'
AND TC.TABLE_NAME = UCC.TABLE_NAME (+)
AND TC.TABLE_NAME = UIC.TABLE_NAME (+)
AND TC.TABLE_NAME = UPC.TABLE_NAME
AND TC.COLUMN_NAME = UPC.COLUMN_NAME (+)
AND TC.COLUMN_NAME = UCC.COLUMN_NAME (+)
AND TC.COLUMN_NAME = UIC.COLUMN_NAME (+)
ORDER BY TC.COLUMN_ID;
[10G] 컬럼 정보 보기 뷰
2012. 9. 3. 17:50
반응형
반응형