레이블이 데이터사전인 게시물을 표시합니다. 모든 게시물 표시
레이블이 데이터사전인 게시물을 표시합니다. 모든 게시물 표시

2012-10-07

DBMS/오라클] 테이블 리스트 보기


select *
from dictionary



select *
from all_all_tables

select *
from user_tables;

--//현재 사용자 정보
select *
from user_users


--// 사용자 테이블의 이름과 설명.
select *
from user_tab_comments


select *
from user_tab_privs

--// 사용자테이블리스트와 해당 테이블의 컬럼명 및 속성.
select *
from user_tab_cols

select *
from user_tab_columns

select *
from user_tab_col_statics




--// 오라클에서 데이터딕셔너리에서 사용자 테이블의 이름 가져오는 쿼리
select rownum, aat.*
from all_all_tables aat
where aat.owner ='LASADM'  


select table_name, column_name, data_type, data_length, nullable,  data_default
from cols  --// user_tab_columns  ==> cols  와 동일
where table_name = 'BL_TB_LAW_CONTRACT_MF'


--// 사용자 테이블의 이름과 설명.
select *
from user_tab_comments


--// 오라클에서 데이터딕셔너리에서 사용자 테이블의 정보 가져오는 쿼리

select rownum, utc.table_name, utc.column_name, utc.data_type, utc.data_length, utc.nullable,  utc.data_default, acc.comments
from cols utc --// user_tab_columns utc ==> cols utc 와 동일
join all_col_comments acc
on utc.table_name = acc.table_name
and utc.column_name = acc.column_name
--where utc.table_name = 'BL_TB_LAW_CONTRACT_MF'

2012-10-06

DBMS/오라클]_데이터 사전 조회





--// 어떤 문자열이나 테이블명이 포함된 프로시저를 찾고 싶을때 쓴다.
select *
from user_source
where upper(text) like '%찾고자하는 문자열%'
;

글 수 39
 
-- 오브젝트 조회
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
오라클에서 저장되는 데이터베이스의 물리적, 논리적 구조를 포함하는
전체구조에 관한 정보는 테이블로 만들어 저장하고 있으며,
이 테이블의 소유자는 SYS이다.
일반 사용자는 이 테이블들의 데이터를 변경하거나 지울 수 없다.
일반 사용자가 이 테이블로부터 데이터를 출력해 보면 되는데,
이 테이블이 복잡하여 이 테이블들에 대해 뷰를 만들어
일반 사용자가 이해하기 쉬운 구조로 전환하여 볼 수 있게 하고 있다.

이 테이블들과 뷰를 데이터 dictionary라고 한다.
dictionary는 다음과 같이 시작되는 대표적인 4종류가 있다.

· DBA_        : 보다 자세한 정보
· ALL_        : 전체 사용자의 정보
· USER_       : 사용자의 스키마에 있는 데이터
· V$          : 오라클 서버의 성능에 관한 내용

【예 제】
SQL> select * from dictionary;
..............................
817 rows selected.
SQL>

USER_CONSTRAINTS
사용자가 가지고 있는 CONSTRAINTS에 관한 정보를 담고 있다.
【예제】
SQL> DESC USER_CONSTRAINTS;
SQL> select owner from user_constraints
  2  where table_name='emp';

USER_SEQUENCES
사용자가 설정한 시퀀스의 정보를 담고 있다.
【예제】
SQL> SELECT SEQUENCE_NAME FROM USER_SEQUENCES;

USER_VIEWS
사용자가 가지고 있는 뷰에 관한 정보를 담고 있다.
【예제】
SQL> SELECT * FROM user_views;
SQL> select view_name from user_views
  2  where view_name='aaa';

USER_TAB_COLUMNS
테이블의 전반적인 구조를 담고 있다.
【예 제】
SQL> select table_name,column_name from user_tab_columns
  2  where table_name='EMP'; 

ALL_USERS
모든 사용자에 관한 정보를 담고 있다.
【예제】
SQL> select * from all_users;

USER_SOURCE
현 재 로그인한 사용자의 만든 procedure, function 따위의 목록을 담고 있다.
SQL> select * from user_source;

2012-09-16

DBMS/오라클] 데이터 사전 조회


--// 어떤 문자열이나 테이블명이 포함된 프로시저를 찾고 싶을때 쓴다.
select *
from user_source
where upper(text) like '%찾고자하는 문자열%'
;

글 수 39
 
-- 오브젝트 조회
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
오라클에서 저장되는 데이터베이스의 물리적, 논리적 구조를 포함하는
전체구조에 관한 정보는 테이블로 만들어 저장하고 있으며,
이 테이블의 소유자는 SYS이다.
일반 사용자는 이 테이블들의 데이터를 변경하거나 지울 수 없다. 
일반 사용자가 이 테이블로부터 데이터를 출력해 보면 되는데, 
이 테이블이 복잡하여 이 테이블들에 대해 뷰를 만들어 
일반 사용자가 이해하기 쉬운 구조로 전환하여 볼 수 있게 하고 있다.

이 테이블들과 뷰를 데이터 dictionary라고 한다.
dictionary는 다음과 같이 시작되는 대표적인 4종류가 있다.

· DBA_        : 보다 자세한 정보
· ALL_        : 전체 사용자의 정보
· USER_       : 사용자의 스키마에 있는 데이터
· V$          : 오라클 서버의 성능에 관한 내용

【예 제】
SQL> select * from dictionary;
..............................
817 rows selected.
SQL>

USER_CONSTRAINTS
사용자가 가지고 있는 CONSTRAINTS에 관한 정보를 담고 있다.
【예제】
SQL> DESC USER_CONSTRAINTS;
SQL> select owner from user_constraints
  2  where table_name='emp';

USER_SEQUENCES
사용자가 설정한 시퀀스의 정보를 담고 있다.
【예제】
SQL> SELECT SEQUENCE_NAME FROM USER_SEQUENCES;

USER_VIEWS
사용자가 가지고 있는 뷰에 관한 정보를 담고 있다.
【예제】
SQL> SELECT * FROM user_views; 
SQL> select view_name from user_views
  2  where view_name='aaa';

USER_TAB_COLUMNS
테이블의 전반적인 구조를 담고 있다.
【예 제】
SQL> select table_name,column_name from user_tab_columns
  2  where table_name='EMP';  

ALL_USERS
모든 사용자에 관한 정보를 담고 있다.
【예제】
SQL> select * from all_users;

USER_SOURCE
현 재 로그인한 사용자의 만든 procedure, function 따위의 목록을 담고 있다. 
SQL> select * from user_source;