"뷰 (데이터베이스)"의 두 판 사이의 차이
잔글 (→같이 보기) |
잔글 |
||
(같은 사용자의 중간 판 5개는 보이지 않습니다) | |||
1번째 줄: | 1번째 줄: | ||
− | '''뷰'''(view)는 사용자에게 접근이 허용된 | + | '''뷰'''(view)는 [[데이터베이스]] 작업 시 기본 테이블에서 유도된 가상 [[테이블 (데이터베이스)|테이블]]이다. '''뷰 테이블'''(view table)이라고도 한다. 뷰는 사용자에게 접근이 허용된 [[데이터]]만을 제한적으로 보여주기 위해 하나 이상의 기본 테이블로부터 유도되며, [[저장장치]] 내에 물리적으로 존재하지 않지만 사용자에게 있는 것처럼 간주되고 데이터 보정작업, 처리과정 시험 등 임시적인 작업을 위한 용도로 활용된다. 뷰는 조인문의 사용 최소화로 사용상의 편의성을 최대화한다.<ref name='view_info'>코딩팩토리, 〈[https://coding-factory.tistory.com/224 뷰(View)란 무엇인가? + 간단한 예제]〉, 2018-08-18</ref> |
==특징== | ==특징== | ||
14번째 줄: | 14번째 줄: | ||
* 장점 | * 장점 | ||
:논리적 데이터 독립성을 제공한다. | :논리적 데이터 독립성을 제공한다. | ||
− | :동일 데이터에 대해 동시에 | + | :동일 데이터에 대해 동시에 여러 사용자의 상이한 응용이나 요구를 지원해 준다. |
:사용자의 데이터 관리를 간단하게 해준다. | :사용자의 데이터 관리를 간단하게 해준다. | ||
:접근 제어를 통한 자동 보안이 제공된다. | :접근 제어를 통한 자동 보안이 제공된다. | ||
42번째 줄: | 42번째 줄: | ||
==같이 보기== | ==같이 보기== | ||
+ | * [[데이터베이스]] | ||
* [[테이블 (데이터베이스)|테이블]] | * [[테이블 (데이터베이스)|테이블]] | ||
+ | * [[뷰]] | ||
− | {{ | + | {{데이터|검토 필요}} |
2022년 4월 16일 (토) 15:02 기준 최신판
뷰(view)는 데이터베이스 작업 시 기본 테이블에서 유도된 가상 테이블이다. 뷰 테이블(view table)이라고도 한다. 뷰는 사용자에게 접근이 허용된 데이터만을 제한적으로 보여주기 위해 하나 이상의 기본 테이블로부터 유도되며, 저장장치 내에 물리적으로 존재하지 않지만 사용자에게 있는 것처럼 간주되고 데이터 보정작업, 처리과정 시험 등 임시적인 작업을 위한 용도로 활용된다. 뷰는 조인문의 사용 최소화로 사용상의 편의성을 최대화한다.[1]
특징[편집]
- 기본 테이블로부터 유도된 테이블이기 때문에 기본 테이블과 같은 형태의 구조를 사용하며, 조작도 기본 테이블과 거의 같다.
- 가상 테이블이기 때문에 물리적으로 구현되어 있지 않다.
- 데이터의 논리적 독립성을 제공할 수 있다.
- 필요한 데이터만 뷰로 정의해서 처리할 수 있기 때문에 관리가 용이하고 명령문이 간단해진다.
- 뷰를 통해서만 데이터에 접근하게 하면 뷰에 나타나지 않는 데이터를 안전하게 보호하는 효율적인 기법으로 사용할 수 있다.
- 기본 테이블의 기본키를 포함한 속성(열) 집합으로 뷰를 구성해야지만 삽입, 삭제, 갱신, 연산이 가능하다.
- 일단 정의된 뷰는 다른 뷰의 정의에 기초가 될 수 있다.
- 뷰가 정의된 기본 테이블이나 뷰를 삭제하면 그 테이블이나 뷰를 기초로 정의된 다른 뷰도 자동으로 삭제된다.[1]
장단점[편집]
- 장점
- 논리적 데이터 독립성을 제공한다.
- 동일 데이터에 대해 동시에 여러 사용자의 상이한 응용이나 요구를 지원해 준다.
- 사용자의 데이터 관리를 간단하게 해준다.
- 접근 제어를 통한 자동 보안이 제공된다.
- 단점
- 독립적인 인덱스를 가질 수 없다.
- ALTER VIEW 문을 사용할 수 없다. 즉 뷰의 정의를 변경할 수 없다.
- 뷰로 구성된 내용에 대한 삽입, 삭제, 갱신, 연산에 제약이 따른다.[1]
SQL에서의 뷰 활용[편집]
생성[편집]
CREATE VIEW 뷰이름[(속성이름[,속성이름])]AS SELECT문;
삭제[편집]
※ 뷰는 ALTER 문을 사용하여 변경할 수 없으므로 필요한 경우는 삭제한 후 재생성한다.
DROP VIEW 뷰이름 RESTRICT or CASCADE
- RESTRICT : 뷰를 다른곳에서 참조하고 있으면 삭제가 취소된다. - CASCADE : 뷰를 참조하는 다른 뷰나 제약 조건까지 모두 삭제된다.
각주[편집]
참고자료[편집]
- 코딩팩토리, 〈뷰(View)란 무엇인가? + 간단한 예제〉, 2018-08-18
같이 보기[편집]