반응형
VIEW
테이블은 실제로 데이터를 가지고 있는 반면 VIEW(뷰)는 실제 데이터를 가지고 있지 않다.
뷰는 단지 뷰 정의(View Definition)만을 가지고 있다.
질의에서 뷰가 사용되면 뷰 정의를 참조해서 DBMS가 내부적으로 질의를 재 작성하여 질의를 수행한다.
마치 테이블을 사용하는 듯이 사용할 수 있다고 해서 가상 테이블(Virtual Table)이라고 도 한다.
장점
독립성 | 테이블 구조가 변경되어도 뷰를 사용하는 응용프로그램은 변경하지 않아도 된다. | ||
편리성 | 복잡한 질의를 뷰로 생성함으로써 매번 관련 질의를 길게 작성하는 것이아닌 단순하게 작성할 수 있다. | ||
보안성 | 숨기고 싶은 정보가 존재한다면 뷰 생성시 해당 칼럼을 빼고 생성하여 사용자에게 정보를 감출 수 있다. |
VIEW 생성 구문
CREAT VIEW [VIEW_NAME]
AS
(SQL 구문);
VIEW를 생성할 때 테이블뿐만 아니라 이미 존재하는 뷰를 참조해서 생성이 가능하다.
만약 뷰를 잘못 생성하는 경우 성능상 문제를 유발할 수 있으므로, 뷰와 SQL의 수행 원리를 잘 이해하고 사용해야 한다. 뷰는 서브 쿼리의 형태이며 DBMS가 SQL문을 재 작성한다는 것을 알아야 한다.
SELECT * FROM (재작성된 SQL 구문);
제거는 다음과 같이 할 수 있다.
DROP VIEW [VIEW_NAME];
반응형
'Database' 카테고리의 다른 글
DCL(Data Controll Language) (0) | 2021.05.01 |
---|---|
그룹함수 (2) (0) | 2021.05.01 |
서브쿼리인데 셀프조인을 곁들인 (0) | 2021.04.29 |
ORDER BY JOIN DESC (0) | 2021.04.28 |
집계 함수 (Aggregate Function) (0) | 2021.04.27 |
댓글