본문 바로가기
DataBase

[Oracle] 데이터 사전

by 바까 2020. 4. 21.
반응형


데이터 사전

사용자와 데이터베이스 자원을 효율적으로 관리하기 위한 다양한 정보를 저장하는 시스템 테이블의 집합이다.

사용자가 테이블을 생성하거나, 사용자를 변경하는 등의 작업을 할 때 데이터 베이스 서버에 의해 자동으로 갱신되는 테이블로 

사용자는 데이터 사전의 내용을 직접 수정하거나 삭제할 수 없고

사용자가 이해할 수 있는 데이터를 산출해 줄 수 있도록 하기 위해서 읽기 전용 형태로 정보를 제공한다.


/*데이터 사전 종류*/

USER_ 데이터 사전

자신의 계정이 소유한 객체 등에 관한 정보 조회

접두어로 USER가 붙은 데이터 사전은 사용자와 가장 밀접하게 관련된 뷰로써 자신이 생성한 테이블, 인덱스, 뷰, 동의어 등의 객체나 해당 사용자에게 부여된 권한 정보를 제공한다.

 

USER_TABLES :사용자가 소유한 테이블의 정보를 조회할 수 있는 사전

SELECT table_name
FROM user_tables;

이런 형태로 사용자가 소유한 테이블에 대한 정보를 조회가능합니다.

USER_SEQUENCES :사용자가 소유한 시퀀스의 정보를 조회할 수 있는 사전

SELECT sequence_name
FROM user_sequences;

USER_INDEXES : 사용자가 소유한 인덱스 정보를 조회할 수 있는 데이터 사전

SELECT index_name
FROM user_indexes;

USER_VIEWS: 사용자가 소유한 뷰 정보를 조회할 수 있는 데이터 사전

SELECT view_name
FROM user_views;

**

데이터 사전 USER_ 뒤에 원하는 객체 등을 기술해 주면 되고, 뒤에 기술되는 명칭은 일반적으로 '-s(es) ' 가 붙은 복수 타입임을 주의해야한다.


ALL_ 데이터 사전

자신 계정 소유 또는 권한을 부여 받은 객체 등에 관한 정보 조회

접두어로 ALL 이 붙은 데이터베이스는 전체 사용자와 관련된 뷰로써 사용자가 접근 할 수 있는 모든 객체에 대한 정보를 조회할 수 있다.

SELECT owner, table_name
FROM all_tables;

DBA_ 데이터 사전

데이터 베이스 관리자만 접근 가능한 객체 등의 정보 조회

접두어로 DBA 가 붙은 데이터 사전은 시스템 관리와 관련된 뷰이다.

--테이블에 대한 정보 조회하기 
--시스템 계정에서 실행할것 
SELECT owner, table_name
FROM dba_tables;

system 관리 계정에서 실행해야만 한다.


[2020/04/21-화요일(28일차)]

반응형

댓글