dongdorodongdong
VIEW 본문
정의
- 실제로 저장하고 있는 데이터 테이블을 기반으로 만들어진 가상 테이블이기 때문에 논리적으로만 존재한다.
일반사용자는 일반 테이블과 같은 방법으로 사용할 수 있어서 별다른 차이를 느끼기 힘들다.
- 기본 테이블의 내용을 뷰를 통해 쉽게 들여다 볼 수 있는 창 역할을 한다. 하지만 내용을 변화시키는 작업은 제한적으로 이루어진다.
명령어
- SELECT
- CREATE
- ALTER
- DROP
명령어 사용
- CREATE
CREATE VIEW 대구고객(성명, 주소)
AS SELECT 성명, 주소
FROM 고객
WHERE 주소 = '대구';
- DROP
DROP VIEW 대구고객 {RESTRICTED | CASCADE};
특징
- 삽입, 삭제, 갱신 등 변화시키는 작업에 제약사항이 따른다.
- 뷰에 대한 사용자의 권한을 제한할 수 있다.
- 뷰의 정의를 변경할 수 없다.(ALTER문으로 변경 불가)
- 데이터를 들여다 볼 수있는 창역할을 하며 실질적인 데이터 접근을 제어한다. 따라서 보안을 제공한다.
- 논리적으로 구현되는 테이블이다.
- 데이터의 논리적 독립성을 제공한다.
- 필요한 데이터만 뷰로 정의하면 관리가 용이하고 명령문도 간단해진다.
- 정의된 뷰는 다른 뷰의 정의에 기초가 될 수 있고, 뷰를 삭제하면 그 뷰를 기초로 정의된 다른 뷰도 연쇄 삭제된다.
- 뷰가 정의된 기본 테이블이 삭제되면 뷰는 자동으로 삭제된다.
- 테이블 구조가 변경되어도 뷰를 사용하는 응용 프로그램은 변경하지 않아도 된다.
- 독립적인 인덱스를 가질 수 없다.
'Database' 카테고리의 다른 글
정규화 (0) | 2019.03.24 |
---|---|
병행제어(동시성 제어) (0) | 2019.03.24 |
Transaction (0) | 2019.03.24 |
스키마 (0) | 2019.03.24 |
릴레이션 (0) | 2019.03.24 |