http://yhkimm.egloos.com/364959 한얼의 블로그
-----------------------------------------------------------
Oracle System Table
-----------------------------------------------------------
오브젝트 | USER_OBJECTS | (OBJ) 모든 오브젝트에 대한 정보를 지원 오즈젝트 유형, 작성시간, 오브젝트에 사용된 최종 DDL 명령, alter, grant 및 revoke 등 |
테이블 | USER_TABLES | (TABS) 테이블에 대한 정보 |
열 | USER_TAB_COLUMNS | (COLS) 컬럼에 대한 정보 |
뷰 | USER_VIEWS | 뷰에 대한 정보 |
동의어 | USER_SYNONYMS | (SYN) |
시퀀스 | USER_SEQUENCES | (SEQ) |
제약조건 | USER_CONSTARINTS | |
제약조건열 | USER_CONS_COLUMNS | 제약 조건을 가진 열에 대한 정보 |
제약조건의 예외사항 | EXCEPTIONS | 제약조건을 활성화시 에러사항에 대한 정보 |
테이블 주석 | USER_TAB_COMMENTS | 테이블/뷰에 대한 주석 |
열 주석 | USER_COL_COMMENTS | 열에 대한 주석 |
인덱스 | USER_INDEXES | (IND) ( 인덱스에 관한 정보) |
인덱스 열 | USER_IND_COLUMNS | 인덱스열에 대한 정보 |
클러스터 | USER_CLUSTERS | (CLU) 클러스터와 관련된 정보 |
데이터베이스 링크 | USER_DB_LINKS | 링크에 관련된 정보 |
스냅샷 | USER_SNAPSHOTS | |
스냅샷 로그 | USER_SNAPSHOT_LOGS | |
트리거 | USER_TRIGGERS | |
프로시저, 함수 및 패키지 | USER_SOURCE | |
코드 오류 | USER_ERRORS | |
테이블스페이스 | USER_TABLESPACES | |
영역 할당량 | USER_TS_QUOTAS | 테이블스레이스 단위로 사용자가 이용할 수 있는 영역의 최대크기와 할당된 영역의 크기 파악에 대한 정보 |
세그먼트와 익스텐트 | USER_SEGMENTS USER_EXTENTS | |
여유 영역 | USER_FREE_SPACE | 현재 여유로 표시된 영역이 얼마인지에 대한 정보 |
사용자 | USER_USERS | |
자원 제한량 | USER_RESOURCE_LIMITS | |
테이블 권한 | USER_TAB_PRIVS | |
열 권한 | USER_COL_PRIVS | |
시스템 권한 | USER_SYS_PRIVS |
-----------------------------------------------------------
Query
-----------------------------------------------------------
-- 오브젝트 조회
SELECT *
FROM ALL_OBJECTS
WHERE OBJECT_NAME LIKE '명'
-- 테이블 조회
SELECT *
FROM ALL_TABLES
WHERE TABLE_NAME LIKE '명'
-- 시노님 조회
SELECT *
FROM ALL_SYNONYMS
WHERE SYNONYM_NAME = '명'
-- 테이블의 인덱스 정보
SELECT *
FROM ALL_IND_COLUMNS
WHERE TABLE_NAME = '테이블명'
-- 테이블의 컬럼 정보
SELECT *
FROM ALL_TAB_COLUMNS
WHERE TABLE_NAME = '테이블명'
-- TABEL COMMENT 쿼리
SELECT *
FROM ALL_TAB_COMMENTS
WHERE TABLE_NAME = '테이블명'
-- COLUMN COMMENT 쿼리
SELECT *
FROM ALL_COL_COMMENTS
WHERE TABLE_NAME = '테이블명'
-- 인덱스 정보
select * from all_indexes
-- 제약조건
SELECT A.TABLE_NAME
, A.CONSTRAINT_NAME
, B.COLUMN_NAME
, B.POSITION
FROM USER_CONSTRAINTS A
, USER_CONS_COLUMNS B
WHERE ( A.OWNER = B.OWNER
AND A.CONSTRAINT_NAME = B.CONSTRAINT_NAME
AND A.TABLE_NAME = B.TABLE_NAME)
AND A.CONSTRAINT_TYPE = 'P'
AND A.OWNER = 'SBANK'
AND A.TABLE_NAME = 'ACAA_VOCH_SPEC_TB
-- CONSTRAINT_TYPE
C | Check on a table | Column |
O | Read Only on a view | Object |
P | Primary Key | Object |
R | Referential AKA Foreign Key | Column |
U | Unique Key | Column |
V | Check Option on a view | Object |
-- 테이블 COMMENT, 컬럼 COMMENT, 컬럼순번, 컬럼명, 자료형, 길이, NULLABLE, PK_ORD get
SELECT C.COLUMN_ID
, C.COLUMN_NAME
, C.DATA_TYPE
, C.DATA_LENGTH
, C.NULLABLE
, DECODE(C.COLUMN_NAME, CON.COLUMN_NAME, 'PK_' || CON.POSITION,' ') PKORD
, TCOM.COMMENTS TABLE_COMMENT
, CCOM.COMMENTS COLUMN_COMMENT
FROM ALL_TAB_COLUMNS C
JOIN
ALL_TAB_COMMENTS TCOM
ON C.OWNER = TCOM.OWNER
AND C.TABLE_NAME = TCOM.TABLE_NAME
JOIN
ALL_COL_COMMENTS CCOM
ON C.OWNER = CCOM.OWNER
AND C.TABLE_NAME = CCOM.TABLE_NAME
AND C.COLUMN_NAME = CCOM.COLUMN_NAME
LEFT OUTER JOIN
(SELECT B.COLUMN_NAME
,B.POSITION
,A.OWNER
,A.TABLE_NAME
FROM USER_CONSTRAINTS A
INNER JOIN USER_CONS_COLUMNS B
ON A.OWNER = B.OWNER
AND A.TABLE_NAME = B.TABLE_NAME
AND A.CONSTRAINT_NAME = B.CONSTRAINT_NAME
WHERE A.OWNER = 'SBANK'
AND A.TABLE_NAME = 'ACAA_VOCH_INFO_TB'
AND A.CONSTRAINT_TYPE = 'P' ) CON
ON C.COLUMN_NAME = CON.COLUMN_NAME
AND C.OWNER = CON.OWNER
AND C.TABLE_NAME = CON.TABLE_NAME
WHERE C.OWNER = 'SBANK'
AND C.TABLE_NAME = 'ACAA_VOCH_INFO_TB'
ORDER BY COLUMN_ID
'Oracle' 카테고리의 다른 글
제약조건 오라클 (0) | 2014.12.11 |
---|---|
오라클 연습용 데이타. (0) | 2014.12.09 |
CUBRID vs MySQL vs ORACLE SQL 타입별 비교 (0) | 2014.12.08 |
INSERT ALL (0) | 2014.12.04 |
계층구조 쿼리의 활용2 (0) | 2014.12.03 |