위로 아래

VIEW

뷰(View)

  1. 테이블과 똑같은 DARA를 가진 또 하나의 TABLE
  2. 가상적인 테이블
  3. 중요한 data를 숨기는 보안 역할을 하고, 조인 연산을 간단히 처리 가능
  4. SELECT문을 간단하게 만들어놓는 것

 

예시

CREATE VIEW EMP10_VU
AS
SELECT *
FROM emp
WHERE deptno=10;

SELECT * FROM EMP10_VU;

 

 

 

예시

CREATE VIEW emp_chk
AS
SELECT E.EMPNO, E.ENAME, E.DEPTNO, D.DNAME
FROM EMP E, DEPT D
WHERE E.DEPTNO = D.DEPTNO;

SELECT * FROM EMP_CHK;

 

 

 

--문제 emp, dept table에서 20번 부서에서 일하는 사원들의 사번, 이름, 업무, 부서 이름을 포함하는 view 생성

CREATE VIEW emp20_VU
AS
SELECT e.empno, e.ename, e.job, d.dname
FROM emp e, dept d
WHERE e.deptno = 20
AND d.deptno = e.deptno;

SELECT * FROM emp20_VU;

 

 

 

제약 조건 설정

WITH CHECK OPTION

-- 실습) 20번 부서의 사원만 참조한 제약조건을 가진 뷰의 생성
CREATE VIEW emp_chk1
AS
SELECT e.empno, e.ename, e.deptno
FROM emp e
WHERE e.deptno = 20
WITH CHECK OPTION CONSTRAINT emp_deptno_ck;

SELECT * FROM emp_chk1;

 

 

 

WITH READ ONLY

뷰의 내용을 변경할 수 없도록 한다.

CREATE VIEW emp_chk2
AS
SELECT e.empno, e.ename, e.deptno
FROM emp e
WHERE e.deptno = 20
WITH READ ONLY;

SELECT * FROM emp_chk2;

 

 

 

DROP

뷰 삭제

DROP VIEW emp_chk;