CREATE VIEW — 새 토토 사이트 추천 정의
생성 [ 또는 교체 ] [ 임시 | 임시 ] [ 재귀 ] 토토 사이트 추천이름[ (컬럼_이름[, ...] ) ] [ 와 (view_option_name[=view_option_value] [, ... ] ) ] 그대로질의[ [계단식 | 로컬 ] 옵션 확인 ]
토토 사이트 추천 만들기쿼리 토토 사이트 추천를 정의합니다. 뷰는 물리적으로 구체화되지 않습니다. 대신 쿼리에서 뷰가 참조될 때마다 쿼리가 실행됩니다.
뷰 생성 또는 교체비슷하지만 동일한 이름의 뷰가 이미 존재하는 경우 교체됩니다. 새 쿼리는 기존 보기 쿼리에서 생성된 것과 동일한 열(즉, 동일한 순서와 동일한 데이터 유형의 동일한 열 이름)을 생성해야 하지만 목록 끝에 추가 열을 추가할 수 있습니다. 출력 열을 발생시키는 계산은 완전히 다를 수 있습니다.
스키마 이름이 제공된 경우(예:CREATE VIEW myschema.myview ...) 그러면 지정된 스키마에 뷰가 생성됩니다. 그렇지 않으면 현재 스키마에 생성됩니다. 임시 뷰는 특수한 스키마에 존재하므로 임시 뷰 생성 시 스키마 이름을 지정할 수 없습니다. 뷰 이름은 동일한 스키마에 있는 다른 관계(테이블, 시퀀스, 인덱스, 뷰, 구체화된 뷰 또는 외부 테이블)의 이름과 구별되어야 합니다.
임시또는온도지정되면 보기가 임시 보기로 생성됩니다. 임시 보기는 현재 세션이 끝나면 자동으로 삭제됩니다. 동일한 이름을 가진 기존 영구 관계는 스키마 수식 이름으로 참조되지 않는 한 임시 뷰가 존재하는 동안 현재 세션에 표시되지 않습니다.
뷰에서 참조하는 테이블 중 임시 테이블이 있으면 해당 뷰는 임시 뷰로 생성됩니다(여부임시지정 여부).
반복 재귀적 토토 사이트 추천를 생성합니다. 구문
재귀적 뷰 생성 [스키마. ]view_name(열_이름) 선택으로...;
다음과 동일함
뷰 만들기 [스키마. ]view_name재귀와 마찬가지로view_name(열_이름) AS (SELECT...) 선택열_이름발신view_name;
재귀적 보기에는 보기 열 이름 목록을 지정해야 합니다.
이름생성될 뷰의 이름(선택적으로 스키마 한정).
컬럼_이름뷰의 열에 사용될 선택적 이름 목록입니다. 지정하지 않으면 쿼리에서 열 이름이 추론됩니다.
함께 (view_option_name [= view_option_value] [, ... ] )이 절은 보기에 대한 선택적 매개변수를 지정합니다. 다음 매개변수가 지원됩니다:
check_option (열거형)이 매개변수는 다음 중 하나일 수 있습니다.현지또는계단식이며 다음을 지정하는 것과 동일합니다.[계단식 포함 | 로컬 ] 옵션 확인(아래 참조).
security_barrier (부울)뷰가 행 수준 보안을 제공하려는 경우 사용해야 합니다. 참조PostgreSQL : 문서 : 15 : 41.5. 토토 사이트 추천 및 특권자세한 내용은.
security_invoker (부울)이 옵션은 기본 기본 관계가 토토 사이트 추천 소유자가 아닌 토토 사이트 추천 사용자의 권한에 대해 확인되도록 합니다. 자세한 내용은 아래 참고 사항을 참조하세요.
위의 모든 옵션은 다음을 사용하여 기존 보기에서 변경할 수 있습니다.변경 토토 사이트 추천.
질의[계단식 포함 | 로컬 ] 옵션 확인  이 옵션은 자동으로 업데이트 가능한 토토 사이트 추천의 동작을 제어합니다. 이 옵션을 지정하면,삽입그리고업데이트새 행이 보기 정의 조건을 충족하는지 확인하기 위해 보기의 명령이 검사됩니다(즉, 새 행이 보기를 통해 표시되는지 확인하기 위해 검사됩니다). 그렇지 않은 경우 업데이트가 거부됩니다. 만약옵션 확인지정되지 않았습니다.삽입그리고업데이트보기의 명령은 보기를 통해 보이지 않는 행을 생성하도록 허용됩니다. 다음 확인 옵션이 지원됩니다.
로컬새 행은 토토 사이트 추천 자체에 직접 정의된 조건에 대해서만 확인됩니다. 기본 기본 뷰에 정의된 모든 조건은 확인되지 않습니다(또한 지정하지 않는 한).옵션 확인).
연계됨새 행은 토토 사이트 추천 및 모든 기본 토토 사이트 추천의 조건에 대해 검사됩니다. 만약옵션 확인이 지정되었으나 둘 다 아님로컬아니요연계됨이 지정되면연계됨가정됩니다.
그옵션 확인다음과 함께 사용할 수 없습니다.반복조회수.
참고하세요옵션 확인자동으로 업데이트 가능한 보기에서만 지원되며 다음이 없습니다.대신트리거 또는대신규칙. 자동으로 업데이트 가능한 뷰가 기본 뷰 위에 정의된 경우대신트리거, 다음은로컬 확인 옵션자동으로 업데이트 가능한 보기의 조건을 확인하는 데 사용될 수 있지만 기본 보기의 조건은대신트리거는 확인되지 않습니다. 계단식 검사 옵션은 트리거 업데이트 가능 보기로 계단식으로 내려가지 않으며 트리거 업데이트 가능 보기에 직접 정의된 모든 확인 옵션은 무시됩니다. 뷰 또는 기본 관계 중 하나에 다음이 있는 경우대신다음을 유발하는 규칙삽입또는업데이트명령을 다시 작성하면 재작성된 쿼리에서 모든 확인 옵션이 무시됩니다. 여기에는 해당 관계 위에 정의된 자동 업데이트 가능 뷰의 모든 확인이 포함됩니다.대신규칙.
다음을 사용하세요드롭 토토 사이트 추천뷰를 삭제하는 진술입니다.
보기 열의 이름과 유형이 원하는 방식으로 할당되도록 주의하십시오. 예를 들면:
'Hello World'를 선택하여 VIEW Vista 생성;
열 이름의 기본값이이므로 잘못된 형식입니다.?열?; 또한 열 데이터 유형의 기본값은텍스트, 원하는 내용이 아닐 수도 있습니다. 뷰 결과의 문자열 리터럴에 대한 더 나은 스타일은 다음과 같습니다.
CREATE VIEW vista AS SELECT 텍스트 'Hello World' AS hello;
기본적으로 뷰에서 참조되는 기본 기본 관계에 대한 액세스는 뷰 소유자의 권한에 따라 결정됩니다. 경우에 따라 이는 기본 테이블에 대한 안전하지만 제한된 액세스를 제공하는 데 사용될 수 있습니다. 그러나 모든 뷰가 변조로부터 안전한 것은 아닙니다. 참조PostgreSQL : 문서 : 15 : 41.5. 토토 사이트 추천 및 특권자세한 내용은.
뷰에 다음이 있는 경우security_invoker속성 설정:참, 기본 기본 관계에 대한 액세스는 뷰 소유자가 아닌 쿼리를 실행하는 사용자의 권한에 따라 결정됩니다. 따라서 보안 호출자 뷰의 사용자는 뷰 및 기본 기본 관계에 대한 관련 권한을 가지고 있어야 합니다.
기본 기본 관계 중 하나라도 보안 호출자 보기인 경우 원래 쿼리에서 직접 액세스한 것처럼 처리됩니다. 따라서 보안 호출자 뷰는 항상 현재 사용자의 권한을 사용하여 기본 관계를 확인합니다.security_invoker속성.
기본 기본 관계 중 하나라도 다음과 같은 경우PostgreSQL : 문서 : 15 : 5.8. 보안 토토 사이트 추천 행활성화되면 기본적으로 뷰 소유자의 행 수준 보안 정책이 적용되고 해당 정책이 참조하는 추가 관계에 대한 액세스는 뷰 소유자의 권한에 따라 결정됩니다. 그러나 뷰에 다음이 있는 경우security_invoker다음으로 설정됨참, 그러면 마치 기본 관계가 뷰를 사용하는 쿼리에서 직접 참조된 것처럼 호출하는 사용자의 정책 및 권한이 대신 사용됩니다.
뷰에서 호출된 함수는 뷰를 사용하여 쿼리에서 직접 호출된 것과 동일하게 처리됩니다. 따라서 뷰 사용자에게는 뷰에서 사용되는 모든 기능을 호출할 수 있는 권한이 있어야 합니다. 뷰에 포함된 함수는 함수 정의 여부에 따라 쿼리를 실행하는 사용자 또는 함수 소유자의 권한으로 실행됩니다.보안 호출자또는보안 정의자. 따라서 예를 들어 다음과 같이 호출합니다.CURRENT_USER뷰에서 직접적으로는 항상 뷰 소유자가 아닌 호출 사용자를 반환합니다. 이는 뷰의 영향을 받지 않습니다.security_invoker설정, 그리고 다음의 뷰security_invoker다음으로 설정됨거짓is아님a와 동일보안 정의자함수와 이러한 개념을 혼동해서는 안 됩니다.
보기를 생성하거나 교체하는 사용자는 다음을 갖추어야 합니다.사용해당 스키마에서 참조된 개체를 조회하기 위해 보기 쿼리에서 참조된 스키마에 대한 권한입니다. 그러나 이 조회는 뷰가 생성되거나 교체될 때만 발생합니다. 따라서 뷰 사용자에게는 다음만 필요합니다.사용보안 호출자 보기의 경우에도 보기 쿼리에서 참조된 스키마가 아닌 보기를 포함하는 스키마에 대한 권한입니다.
언제보기 생성 또는 교체기존 보기에서 사용되며 보기의 정의 SELECT 규칙과 기타 항목에만 사용됩니다.함께 ( ... )매개변수 및 해당옵션 확인변경되었습니다. 소유권, 권한, SELECT가 아닌 규칙을 포함한 기타 보기 속성은 변경되지 않고 그대로 유지됩니다. 뷰를 대체하려면 뷰를 소유해야 합니다(여기에는 소유 역할의 구성원이 되는 것도 포함됩니다).
간단한 보기는 자동으로 업데이트 가능합니다. 시스템이 허용합니다.삽입, 업데이트그리고삭제문은 일반 테이블에서와 같은 방식으로 뷰에서 사용됩니다. 다음 조건을 모두 충족하면 뷰가 자동으로 업데이트 가능합니다.
뷰에는 정확히 하나의 항목이 있어야 합니다.발신목록은 테이블 또는 업데이트 가능한 다른 뷰여야 합니다.
보기 정의에는 다음이 포함되어서는 안 됩니다.위드, 독특, 그룹별, 가지고 있는 중, 제한또는오프셋최상위 수준의 조항.
토토 사이트 추천 정의에는 집합 연산이 포함되어서는 안 됩니다(유니온, 교차또는제외) 최상위 수준에 있습니다.
뷰의 선택 목록에는 집계, 창 함수 또는 집합 반환 함수가 포함되어서는 안 됩니다.
자동으로 업데이트 가능한 보기에는 업데이트 가능한 열과 업데이트 불가능한 열이 혼합되어 포함될 수 있습니다. 기본 관계의 업데이트 가능한 열에 대한 단순 참조인 경우 열은 업데이트 가능합니다. 그렇지 않으면 열이 읽기 전용이고 다음과 같은 경우 오류가 발생합니다.삽입또는업데이트문이 값을 할당하려고 시도합니다.
뷰가 자동으로 업데이트 가능한 경우 시스템은 무엇이든 변환합니다.삽입, 업데이트또는삭제기본 기본 관계에 대한 해당 진술에 대한 관점의 진술.삽입다음이 있는 문충돌 업데이트 중절이 완전히 지원됩니다.
자동으로 업데이트 가능한 보기에 다음이 포함된 경우어디에서조건, 이 조건은 수정이 가능한 기본 관계의 행을 제한합니다.업데이트그리고삭제뷰에 대한 설명입니다. 그러나,업데이트더 이상 만족하지 않도록 행을 변경할 수 있습니다.어디조건이므로 더 이상 뷰를 통해 볼 수 없습니다. 마찬가지로,삽입명령은 잠재적으로 다음을 만족하지 않는 기본 관계 행을 삽입할 수 있습니다.어디조건이므로 뷰를 통해 볼 수 없습니다(충돌 업데이트 중뷰를 통해 표시되지 않는 기존 행에도 유사하게 영향을 미칠 수 있습니다). 그만큼옵션 확인방지하는 데 사용될 수 있습니다.삽입그리고업데이트뷰를 통해 보이지 않는 행을 생성하는 명령입니다.
자동으로 업데이트 가능한 보기가 다음으로 표시되는 경우security_barrier속성 다음 모든 뷰어디에서조건(및 다음으로 표시된 연산자를 사용하는 모든 조건누출 방지)은 항상 뷰 사용자가 추가한 조건보다 먼저 평가됩니다. 참조PostgreSQL : 문서 : 15 : 41.5. 토토 사이트 추천 및 특권28275_28396어디조건)은 여전히 잠겨 있을 수 있습니다.설명관계 수준에서 적용되는 조건(따라서 행을 잠그지 않음)과 적용되지 않는 조건을 확인하는 데 사용할 수 있습니다.
이 모든 조건을 만족하지 않는 더 복잡한 보기는 기본적으로 읽기 전용입니다. 시스템은 보기에 대한 삽입, 업데이트 또는 삭제를 허용하지 않습니다. 다음을 생성하여 업데이트 가능한 뷰의 효과를 얻을 수 있습니다.대신뷰에서 시도된 삽입 등을 다른 테이블에 대한 적절한 작업으로 변환해야 하는 뷰에 대한 트리거입니다. 자세한 내용은 참조트리거 생성. 또 다른 가능성은 규칙을 만드는 것입니다(참조규칙 생성), 그러나 실제로는 트리거가 더 쉽게 이해하고 올바르게 사용할 수 있습니다.
뷰에서 삽입, 업데이트 또는 삭제를 수행하는 사용자는 뷰에 대해 해당 삽입, 업데이트 또는 삭제 권한을 가지고 있어야 합니다. 또한 기본적으로 뷰의 소유자는 기본 기본 관계에 대한 관련 권한을 가지고 있어야 하지만 업데이트를 수행하는 사용자에게는 기본 기본 관계에 대한 권한이 필요하지 않습니다(참조)PostgreSQL : 문서 : 15 : 41.5. 토토 사이트 추천 및 특권). 그러나 뷰에 다음이 있는 경우security_invoker다음으로 설정됨사실, 뷰 소유자가 아닌 업데이트를 수행하는 사용자는 기본 관계에 대한 관련 권한을 가지고 있어야 합니다.
모든 코미디 영화로 구성된 뷰 만들기:
다음으로 코미디 토토 사이트 추천 만들기
    선택 *
    영화에서
    WHERE 종류 = '코미디';
    이것은 다음에 있는 열을 포함하는 보기를 생성합니다.영화뷰 생성 시 테이블. 그래도*뷰를 생성하는 데 사용되었습니다. 나중에 테이블에 추가된 열은 뷰의 일부가 아닙니다.
다음으로 뷰 생성로컬 확인 옵션:
CREATE VIEW universal_comedies AS 보기
    선택 *
    코미디에서
    WHERE 분류 = 'U'
    로컬 확인 옵션 사용;
    이것은 다음을 기반으로 하는 보기를 생성합니다.코미디보기, 다음이 포함된 영화만 표시kind = '코미디'그리고분류 = 'U'. 어떤 시도라도삽입또는업데이트새 행에 다음 항목이 없으면 보기의 행이 거부됩니다.분류 = 'U'하지만 영화는종류확인되지 않습니다.
다음으로 뷰 생성계단식 확인 옵션:
pg_comedies AS 토토 사이트 추천 만들기
    선택 *
    코미디에서
    WHERE 분류 = 'PG'
    계단식 수표 옵션 사용;
    이것은 두 가지를 모두 확인하는 토토 사이트 추천를 생성합니다.종류그리고분류새 행.
업데이트 가능한 열과 업데이트 불가능한 열이 혼합된 뷰를 생성합니다:
다음으로 코미디 토토 사이트 추천 만들기
    f.*를 선택하세요.
           country_code_to_name(f.country_code) AS 국가,
           (평균 선택(r.등급)
            사용자 평가 r에서
            WHERE r.film_id = f.id) AS 평균 등급
    FROM 영화 f
    f.kind = '코미디';
    이 보기는 다음을 지원합니다삽입, 업데이트그리고삭제. 의 모든 열영화테이블은 업데이트할 수 있지만 계산된 열은국가그리고평균_등급읽기 전용입니다.
1부터 100까지의 숫자로 구성된 재귀적 뷰를 생성합니다:
반복 뷰 생성 public.nums_1_100 (n) AS
    가치 (1)
유니온 올
    n < 100인 경우 nums_1_100에서 n+1 선택;
    재귀적 뷰의 이름은 여기에서 스키마에 적합하지만 주의하세요.생성, 내부 자체 참조가 스키마 한정이 아닙니다. 이는 암시적으로 생성된 CTE의 이름을 스키마로 한정할 수 없기 때문입니다.
보기 생성 또는 교체은포스트그레SQL언어 확장. 임시 보기의 개념도 마찬가지입니다.함께 ( ... )절은 보안 장벽 보기 및 보안 호출자 보기와 마찬가지로 확장입니다.
문서에 올바르지 않은 내용이 있으면 일치하지 않습니다. 특정 기능에 대한 경험이 있거나 추가 설명이 필요한 경우 이용해주세요이 양식문서 문제를 보고합니다.