이 포스팅에서는 직접 사용했던 부분에 대해서만 간략히 기재하려고 한다.
Oracle Reference에서 테이블에 대한 상세한 내용을 확인할 수 있다.
Database Reference
ALL_TABLES describes the relational tables accessible to the current user. To gather statistics for this view, use the DBMS_STATS package.
docs.oracle.com
테이블 정보 :
현재 사용자가 액세스할 수 있는 테이블 - ALL_TABLES
현재 사용자가 소유한 테이블 - USER_TABLES
OWNER | 테이블 소유자 (ALL_TABLES 에만 존재) |
TABLE_NAME | 테이블 이름 |
NUM_ROWS | 행 수 (테이블에 대한 통계를 수집하는 경우 채워지며 실제 값과 차이가 날 수 있음) |
테이블 설명 정보 :
현재 사용자가 액세스할 수 있는 테이블과 뷰에 대한 설명 - ALL_TAB_COMMENTS
현재 사용자가 소유한 테이블과 뷰에 대한 설명 - USER_TAB_COMMENTS
OWNER | 테이블 소유자 (ALL_TAB_COMMENTS 에만 존재) |
TABLE_NAME | 테이블 이름 |
COMMENTS | 테이블 설명 |
데이터베이스의 용량 확인 :
데이터베이스의 모든 세그먼트에 할당된 저장소 - DBA_SEGMENTS
현재 사용자가 소유한 세그먼트에 할당된 저장소 - USER_SEGMENTS
SEGMENT_TYPE | 세그먼트 유형 (ex. TABLE, INDEX, CACHE ...) |
BTYE | 세그먼트의 크기(바이트) |
SELECT TO_CHAR(SUM(BYTES/1024/1024), 'FM9990.99')
FROM USER_SEGMENTS
WHERE SEGMENT_TYPE='TABLE'
컬럼 정보 :
현재 사용자가 액세스할 수 있는 테이블과 뷰의 열에 대한 설명 - ALL_TAB_COLUMNS
현재 사용자가 소유한 테이블과 뷰의 열에 대한 설명 - USER_TAB_COLUMNS
OWNER | 테이블 소유자 (ALL_TAB_COLUMNS 에만 존재) |
TABLE_NAME | 테이블 이름 |
COLUMN_NAME | 열 이름 |
DATA_TYPE | 열의 데이터 유형 |
DATA_LENGTH | 열의 길이(바이트) |
NULLABLE | NULL 허용여부 |
COLUMN_ID | 열의 시퀀스 |
컬럼 설명 정보 :
현재 사용자가 액세스할 수 있는 테이블과 뷰의 열에 대한 설명 - ALL_COL_COMMENTS
현재 사용자가 소유한 테이블과 뷰의 열에 대한 설명 - USER_COL_COMMENTS
OWNER | 테이블 소유자 (ALL_COL_COMMENTS 에만 존재) |
TABLE_NAME | 테이블 이름 |
COLUMN_NAME | 열 이름 |
COMMENTS | 컬럼 설명 |
제약조건 정보 :
현재 사용자가 액세스할 수 있는 테이블에 대한 제약 조건 - ALL_CONSTRAINTS
현재 사용자가 소유한 테이블에 대한 모든 제약 조건 - USER_CONSTRAINTS
CONSTRAINT_NAME | 제약 조건 이름 |
CONSTRAINT_TYPE | 제약 조건 유형 C - 제약 조건 확인 P - Primary Key U - Unique Key F - REF 열 |
TABLE_NAME | 테이블 이름 |
현재 사용자가 액세스할 수 있고 제약 조건에 지정된 열 - ALL_CONS_COLUMNS
현재 사용자가 소유하고 제약 조건에 지정된 열 - USER_CONS_COLUMNS
CONSTRAINT_NAME | 제약 조건 이름 |
TABLE_NAME | 테이블 이름 |
COLUMN_NAME | 제약 조건 정의에 지정된 열 이름 |
SELECT COLUMN_NAME
FROM USER_CONS_COLUMNS
WHERE CONSTRAINT_NAME = (SELECT CONSTRAINT_NAME
FROM USER_CONSTRAINTS
WHERE CONSTRAINT_TYPE = 'P' AND table_name = 'TEST')
-테이블의 PK 제약조건에 지정된 컬럼 조회