Araina’s Blog

9. ORACLE SQL 고급: 뷰(View) 본문

Develop Study/Database (ORACLE)

9. ORACLE SQL 고급: 뷰(View)

Araina 2022. 5. 26. 23:17


 

 

1. 뷰 (View)

뷰는 1개 이상의 테이블을 합쳐서 만든 가상의 테이블이다.

뷰는 다음과 같은 장점들을 지니고 있다.

  • 편리성, 재사용성: 자주 사용되는 복잡한 질의를 뷰로 미리 정의할 수 있다. (복잡한 질의를 간단히 작성)
  • 보안성: 각 사용자별로 필요한 데이터만 선별하여 보여줄 수 있다. (중요한 질의의 경우 질의 내용을 암호화 가능)
  • 독립성 제공: 미리 정의된 뷰를 일반 테이블처럼 사용할 수 있기 때문에 편리하다. 사용자가 필요한 정보만 요구에 맞게 가공하여 뷰로 만들어 쓸 수 있다. (원본 테이블 구조가 변해도 응용에 영향을 주지 않도록 하는 논리적 독립성을 제공)

뷰는 다음과 같은 특징을 지니고 있다.

  • 원본 데이터 값에 따라 함께 변한다.
  • 독립적인 인덱스 생성이 어렵다.
  • 삽입/삭제/갱신 연산에 많은 제약이 따른다.

 


 

2. 뷰 생성

뷰를 생성하는 기본 문법은 아래와 같다.

CREATE VIEW 뷰 이름 [(열 이름 [...N])]
AS SELECT 문

Book 테이블에서 '축구'라는 문구가 포함된 자료만 보여주는 VW_BOOK 뷰를 생성하시오.

CREATE VIEW	VW_BOOK AS
SELECT		*
FROM		BOOK
WHERE		BOOKNAME LIKE '%축구%';

 


 

3. 뷰 수정

뷰를 수정하는 기본 문법은 아래와 같다.

CREATE OR REPLACE VIEW 뷰이름 [(열이름 [ ,...n ])]
AS SELECT 문

VW_CUSTOMER 뷰의 주소, 이름, 고객 ID를 CUSTOMER 테이블에서 주소에 '영국'이 포함된 고객의 정보로 수정하시오.

CREATE OR REPLACE VIEW	VW_CUSTOMER(CUSTID, NAME, ADDRESS) AS
SELECT			CUSTID, NAME, ADDRESS
FROM			CUSTOMER
WHERE			ADDRESS LIKE '%영국%';

 


 

4. 뷰 삭제

뷰를 삭제하는 기본 문법은 아래와 같다.

DROP VIEW 뷰이름 [ ,...n ];

VW_CUSTOMER 뷰를 삭제하시오.

DROP VIEW	VW_CUSTOMER

 


 


수고하셨습니다!


Comments