-
SQL_VIEW 개요 & USER_VIEWSData Base_Oracle/SQL 2020. 1. 8. 23:40
VIEW 개요
- 실제 존재하는 테이블이 아닌 가상 테이블
- 실제 테이블에 저장된 데이터로 결과를 출력할 수 있음
- 저장공간이 따로 필요 없음
텍스트로 저장
VIEW 사용 목적
- 편리성 추구
복잡한 SQL구문을 쉽게 실행할 수 있음
ex) 자주 사용하는 테이블을 뷰로 만들어두면 편리하게 사용 가능,
SQL Plus의 save 대신 사용하기도 함 - 보안 추구
직접적인 테이블 접근을 제한함
ex) 급여, 보너스 등의 민감한 데이터를 제외한 자료들만 보여줄 때 사용
VIEW 종류
단순 VIEW
DML 사용 목적
- 하나의 테이블로 만들어진 뷰
- DML(insert, update, delete) 사용 가능
- 그룹함수 사용 불가
→ 별칭을 지정하면 사용 가능 - DISTINCT 사용 불가
※ 단순 VIEW는 DML 사용 목적이기 때문에
select구문에서 자주 사용 되는 distinct, group by는 사용 불가복합 VIEW
JOIN을 사용하기 때문에 DQL_SELECT 사용 목적
- 복수의 테이블로 만들어진 뷰
- DML 사용 불가
※ 테이블이 하나가 아니기 때문에 입력 테이블 확정 불가
JOIN, SELECT 사용 목적이기 때문에 DML 사용 불가 - 그룹함수 사용 가능
- DISTINCT 사용 가능
VIEW _ Data Dictionary
user_views
뷰에 대한 정보가 담겨 있는 Oracle 자체 테이블
user_views 구조
▶ [ SQL> desc user_views ]
이름 널? 유형 VIEW_NAME
뷰 이름NOT NULL VARCHAR2(30) TEXT_LENGTH
뷰의 문자열 길이NUMBER TEXT
뷰의 내용LONG ... ... ... READ_ONLY
읽기 전용 확인VARCHAR2(1) ▶ [ SQL> select view_name, text_length, text, read_only from user_views; ]
VIEW_NAME TEXT_LENGTH TEXT R V_EMP20 52 select empno, ename, job
from b_emp3 where deptno=20N
VIEW의 개요와 데이터 딕셔너리를 통한 VIEW 정보 확인 방법에 대해 알아보았습니다.
뷰의 특징을 정확히 이해한다면 앞으로의 내용도 쉽게 이해할 수 있을 것입니다.'Data Base_Oracle > SQL' 카테고리의 다른 글
SQL 단순 VIEW 검색 & VIEW가 실행되지 않는 경우 (0) 2020.01.08 SQL 단순 VIEW 생성 (0) 2020.01.08 SQL 집합 연산자 (0) 2020.01.08 SQL_ROLLBACK (0) 2020.01.08 SQL_Sub Query_Update & Delete (0) 2020.01.08