2. V i e w ( 뷰)
** 자주 사용하는 SELECT문이 있을때 사용한다
    테이블에 존재하는 칼럼들중 특정 칼럼을 보이고 싶지 않을때 사용한다
    테이블간의 결합등으로 인해 복잡해진 SELECT문을 간단히 다루고 싶을때 사용한다
** 뷰를 만들때 COM PUTE, COM PUTE BY, SELECT INTO, ORDER BY는 사용할 수 없고
     #, ##으로 시작되는 임시 테이블도 뷰의 대상으로 사용할 수 없다
** 뷰의 내용을 보고 싶으면 SP_HELPTEXT 뷰명 을 사용한다

CREATE VIEW 뷰명 AS SELECT문 /* 뷰 만들기 */

CREATE VIEW 뷰명 (별칭1, 별칭2, ...) AS SELECT문 /* 칼럼의 별칭 붙이기 */

CREATE VIEW 뷰명 AS (SELECT 칼럼1 AS 별칭1, 칼럼2 AS 별칭2, ...)

ALTER VIEW 뷰명 AS SELECT문 /* 뷰 수정 */

DROP VIEW 뷰명 /* 뷰 삭제 */

CREATE VIEW 뷰명 WITH ENCRYPTION AS SELECT문 /* 뷰 암호 */

** 한번 암호화된 뷰는 소스 코드를 볼 수 없으므로 뷰를 암호화하기전에
    뷰의 내용을 스크립트 파일로 저장하여 보관한다

INSERT INTO 뷰명 (칼럼1, 칼럼2, ...) VALUES (값1, 값2, ...)

UPDATE 뷰명 SET 칼럼=값 WHERE 조건

** 원래 테이블에 있는 반드시 값을 입력해야 하는 칼럼이 포함되어 있지 않거나
    원래 칼럼을 사용하지 않고 변형된 칼럼을 사용하는 뷰는 데이타를 추가하거나
    갱신할 수 없다
** WHERE 조건을 지정한 뷰는 뷰를 만들었을때 WITH CHECK OPTION을 지정하지 않았다면
    조건에 맞지 않는 데이타를 추가할 수 있지만 뷰에서는 보이지 않는다
    또한 뷰를 통해서 가져온 조건을 만족하는 값도 뷰의 조건에 만족하지 않는 값으로도
    갱신할 수 있다

CREATE VIEW 뷰명 AS SELECT문 WITH CHECK OPTION

** 뷰의 조건에 맞지 않는 INSERT나 UPDATE를 막을려면 WITH CHECK OPTION을 설정한다

'SQL Server' 카테고리의 다른 글

오브젝트 - Trigger(트리거)  (0) 2013.02.27
오브젝트 - Stored Procedure(저장 프로시저)  (0) 2013.02.27
오브젝트 - Table (테이블)  (0) 2013.02.27
추가,업데이트,삭제  (0) 2013.02.26
조건  (0) 2013.02.26

+ Recent posts