뷰 관리
뷰 관리
뷰는 논리 테이블
로서 필요에 의한 구문을 저장한 뒤 실행할 수 있도록 해주는 도구를 말한다.
뷰 생성
뷰를 생성하기 위해서는 우선적으로 테이블이 존재해야 한다. 뷰는 다음과 같이 생성한다.
CREATE [OR REPLACE] VIEW 이름 AS 구문;
뷰 생성을 위한 테이블
뷰를 만들어 보기 위해 샘플 테이블과 데이터를 구현하도록 한다.
CREATE TABLE student(
no NUMBER PRIMARY KEY,
name VARCHAR2(21) NOT NULL,
gender CHAR(3) CHECK(gender IN ('남', '여'))
);
INSERT INTO student VALUES(1, '둘리', '남');
INSERT INTO student VALUES(2, '짱구', '남');
INSERT INTO student VALUES(3, '피카츄', '여');
INSERT INTO student VALUES(4, '짱아', '여');
no
name
gender
1
둘리
남
2
짱구
남
3
피카츄
여
4
짱아
여
테이블을 이용한 뷰 생성
만약 남자 중에서 둘리를 조회할 경우 다음과 같은 구문을 작성해야 한다.
SELECT * FROM student WHERE gender='남' and name='둘리';
만약 남자와 여자 별로 지속적인 데이터 조회가 필요할 경우 gender
와 관련된 조건을 지속적으로 작성해야 하므로 효율적이지 못하다고 할 수 있다. 이러한 상황에서 View
를 이용할 경우 편리한 처리가 가능하다.
CREATE OR REPLACE VIEW student_male AS SELECT * FROM student WHERE gender='남';
CREATE OR REPLACE VIEW student_female AS SELECT * FROM student WHERE gender='여';
위와 같이 View
를 생성할 경우 해당하는 구문이 가상 테이블로 관리되어 테이블과 유사한 형태로 사용할 수 있게 된다.
결과 조회
생성한 뷰를 조회하는 방법은 테이블과 동일하다.
SELECT * FROM student_male;
SELECT * FROM student_female;
주의사항
뷰를 이용할 경우 주의해야 할 사항들은 다음과 같다.
뷰를 이용할 경우 복잡한 구문을 간소화시킬 수 있다.
뷰를 이용할 경우 데이터 조회는 문제가 없지만, 데이터 추가/수정/삭제는 특정 상황을 만족해야만 가능하다.
Last updated