뷰는 가상의 테이블을 의미한다.
즉 실제 존재하는 테이블이 아닌 사용자가 임의로 만들어놓은 가상의 테이블이라는 이야기다.
왜 뷰를 사용하는가 하면
데이터베이스와 연결된 프로그램에서 t-sql을 사용하여 프로그래밍 내부에서 쿼리를 돌리게 되는데
이런 쿼리 중에 자주 쓰이는 쿼리가 존재한다.
물론 이보다 더 좋은 저장 프로시저를 사용하는 경우 매개변수도 사용할 수 있지만
뷰의 기능으로도 만족할 만한 결과를 얻을 수 있는 경우가 많다.
뷰를 만드는 방식은 테이블과 똑같다.
create view-name
with encryption
as 조건문(여기서는 검색 즉 select 문이 들어간다.)
물론 뷰도 삭제와 변경이 가능하다.
alter view name
with encryption
as 조건문
drop view name
변경시 뷰의 내부 모양이나 내부 값들을 확인하고 싶을때 사용하는 명령어는
sp_depends 뷰이름 -> 뷰의 내부모양을 확인할때
sp_helptext 뷰이름 -> 뷰의 값을 확인할때
이다.
위에서 보면 with encryption이 있는데
with encryption은 암호화를 의미한다
즉 뷰를 쓴 문장을 암호화 한다는 의미다.
바로 위의 내부모양이나 값들을 확인하는 부분에서 만약 뷰가 암호화 되어 있으면
그 값들을 확인할 수가 없다.
즉 개발자가 이 뷰가 어떤 내용이라는 사실을 확실하게 인지하고 있을때
보안의 목적으로 사용하는 구문이다.
하지만 한번 암호화 하면 다시는 내용을 볼수 없으니 그점은 조심해야 한다.