-- Title : [8i] 데이터 딕셔너리 뷰 및 표준 패키지 생성(Dictionary View)
-- Reference : OLN
-- Key word : Dictionary View
********************************************************************************************/
ㅁ요약참조
관련내용 |
참조 |
초기화 파라미터 |
없슴 |
동적 성능 뷰 |
없슴 |
데이터 딕셔너리 뷰 |
DICTIONARY |
명령어 |
없슴 |
패키지 프로시저와 함수 |
DBMS_SESSIONNET_ROLE |
/***************************************************************************************
-- 데이터 딕셔너리 뷰 예와 범주
***************************************************************************************/
- 일반적 개요
* dictionary
* dict_columns
- 테이블, 제약, LOB, 컬럼등의 사용자 오브젝트 관련 정보
* dba_tables
* dba_objects
* dba_lobs
* dba_tab_columns
* dba_constraints
- 사용자 권한과 롤에 대한 정보
* dba_users
* dba_sys_privs
* dba_roles
- 데이터베이스 오브젝트에 대한 영역 할당
* dba_extens
* dba_free_space
* dba_segments
- 일반적 데이터베이스 구조
* dba_rollback_segs
* dba_data_files
* dba_tablespaces
- 감시 정보
* dba_audit_trail
* dba_audit_objects
* dba_audit_obj_opts
/***************************************************************************************
-- 사전 뷰나 동적 뷰의 개요를 알고 싶을 때
***************************************************************************************/
SQL> SELECT *
2 FROM dictionary
3 WHERE table_name LIKE '%TABLE%';
TABLE_NAME COMMENTS
----------------- ----------------------------------------------------------------------
ALL_ALL_TABLES Description of all object and relational tables accessible to the user
ALL_NESTED_TABLES Description of nested tables in tables accessible to the user
ALL_OBJECT_TABLES Description of all object tables accessible to the user
...
/***************************************************************************************
-- 데이터베이스 오브젝트 소유자, 이름, 유형, 상태 정보 얻기
***************************************************************************************/
SQL> SELECT object_name, object_type, status
2 FROM dba_objects
3 WHERE object_name LIKE 'DBMS_%'
4 and rownum <= 3;
OBJECT_NAME OBJECT_TYPE STATUS
------------------- ------------- -------
DBMSZEXP_SYSPKGGRNT PACKAGE VALID
DBMSZEXP_SYSPKGGRNT PACKAGE BODY VALID
DBMS_ALERT PACKAGE VALID
...
/***************************************************************************************
-- SYS가 소유한 SYSTEM 테이블 스페이스에 있는 데이터 딕셔너리 뷰 생성
***************************************************************************************/
SQL> @/export/home/oracle8i/rdbms/admin/catalog.sql;
/***************************************************************************************
-- SYS가 소유한 SYSTEM 테이블 스페이스에 있는 기본 테이블 생성
***************************************************************************************/
SQL> @/export/home/oracle8i/rdbms/admin/sql.bsq;
/***************************************************************************************
-- 서버에서 PL/SQL에 필요한 모든 스크립트 실행
***************************************************************************************/
SQL> @/export/home/oracle8i/rdbms/admin/catproc.sql;
/***************************************************************************************
-- 관리용 스크립트
***************************************************************************************/
- cat*.sql : 카탈로그와 데이터 딕셔너리 정보
- dbms*.sql : 데이터베이스 패키지 명세부
- prvt*.plb : 데이터베이스 패키지 코드
- utl*.sql : 데이터베이스 유틸리티용 뷰와 테이블
/***************************************************************************************
-- 오라클 제공 패키지 예
***************************************************************************************/
- DBMS_LOB : BLOB와 CLOB 데이터 유형에 대한 연산을 위한 루틴 제공
- DBMS_SESSION : ALTER SESSION이나 SET ROLE같은 SQL 명령어를 생성
패키지 프로세스(ET_ROLE, SET_SQL_TRACE, SET_NLS)
- DBMS_UTILITY : 다양한 유틸리티 루틴을 제공
패키지 프로세스(ANALYZE_SCHEMA, COMPILE_SCHEMA, DB VERSION)
- DBMS_SPACE : 사용 가능한 세그먼트 영역에 대한 정보 제공
패키지 프로세스(UNUSED_SPACE, FREE BLOCKS)
- DBMS_ROWID : ROWID 정보를 제공
패키지 프로세스(ROWID_INFO)
- DBMS_SHARED_POOL : 공유 풀에 정보를 보관하고 삭제
패키지 프로세스(KEEP, UNKEEP)