뷰(view)는 데이터베이스에 저장된 SELECT문장이다.

뷰를 통해서 이미 데이터베이스에 있는 데이터에 대해 가상의 뷰를 만들 수 있다.

뷰는 SELECT 문장을 저장한것이기 때문에 뷰가 참조한 테이블의 데이터가 바뀌면 뷰가 출력하는 데이터도 함께 바뀐다.

따라 뷰를 사용하면 데이터베이스가 갱신될 때마다 함께 갱신되는 동적인 테이블을 만들 수 있다.

뷰를 사용할때는 지정하려는 열 이름 앞뒤로 []를 붙여서 사용한다. 

뷰를 불러올 때에는 create할때 지정한 이름으로 똑같이 SELECT *FROM (view name)으로 불러오면 된다.

뷰를 수정하고싶다면 CREATE를 ALTER로 바꾸어 실행해주면 된다. 그러면 저장된 SELECT문장이 변경된다.

뷰를 삭제하려면 DROP VIEW (Viewname)을 사용하면 된다.

 

뷰의 장점으로는 다음이 있다.

1. 복잡성을 줄여준다.
2. 재사용 가능성을 증가시킨다.
3. 데이터를 적절하게 포맷한다.
4. 계산된 열을 생성할 수 있다.
5. 열의 이름을 다시 명명하는데에 사용할 수 있다.
6. 데이터 하위 집합을 생성할 수 있다.
7. 보안 제약을 강화하는 데 사용될 수 있다.

보안 제약의 경우 보안상 사용자에게 데이터를 제공하는데에 있어서 best의 케이스는 api 형태로 제공하는 것이다. 하지만 사용자가 계정을 가지는 경우, 특정 데이터에 접근을 제한해야 하는 경우가 있다. 이럴 때 해당 데이터 테이블에 접근을 제한하면서, 해당 테이블에서 제공해도 되는 데이터를 가진 뷰에 대한 접근을 허가하는것으로 이 문제를 해결할 수 있다.

뷰를 사용하면서 알아야하는 점은 뷰는 disc에 저장되지 않고 메모리에 체류한다는 점이다. 뷰를 생성할때마다 차지하는 메모리가 점점 누적된다.  

+ Recent posts