728x90
- View
- 가상의 Table
- 실제 Table 에는 데이터가 있지만 View 에는 데이터는 없고 SQL 만 저장한다.
- View 에 접근할 때는 View 에 들어있던 SQL 의 수행된 결과를 가져오는 것이다.
- View 를 사용하는 목적
- 보안 : 특정 테이블의 특정 컬럼이 보여지면 안되는 경우
- 편의성 : 여러개의 테이블을 Join 하는게 매번 귀찮을 때 그것을 View 로 만들어 놓으면 편리하다.
- Oracle 의 경우 View 를 생성하려면 권한이 부여 되어야 한다.
- GRANT CREATE VIEW TO [USER];
- GRANT CREATE PROCEDURE TO [USER];
- 권한 확인 방법
- SYSTEM 계정으로 확인해야한다.
- SELECT PRIVILEGE FROM DBA_SYS_PRIVS WHERE GRANTEE = 'USER(대문자)';
- 권한 확인 방법
- View 생성시 별도의 컬럼 이름을 지정할 수 있다.
- CREATE OR REPLACE VIEW v_test(no, nm, em) AS (SELECT t_no, t_name, t_email FROM tset);
- View 삭제하기
- DROP VIEW v_test;
- View의 종류
- 단순 View (Simple View)
- 복합 View (Complex View)
- 인라인 View (INLINE View)
- 단순 View (Simple View)
- View 를 생성할 Sub Query 에 Join 조건이 안들어가고 1개의 테이블로 만들어지는 간단한 View
- CREATE [OR REPLACE] VIEW [뷰명] [컬럼명] AS (Sub Query);
- OR REPLACE 는 같은 이름의 View 가 있으면 삭제하고 새로 만든다.
- CREATE [OR REPLACE] VIEW [뷰명] [컬럼명] AS (Sub Query);
- View 를 생성할 Sub Query 에 Join 조건이 안들어가고 1개의 테이블로 만들어지는 간단한 View
- 복합 View (Complex View)
- View SQL 의 Sub Query 에 여러개의 테이블이 Join 되어 생성한다.
- 인라인 View (INLINE View)
- View 는 한번 만들어 놓으면 계속 사용할 수 있지만, 1회용으로만 사용할 경우 FROM 절의 Sub Query 형태로 만드는 것이다.
728x90