무지개 토토 - 테이블 무지개 토토
무지개 토토 [테이블] [만]이름
[ *] [, ...] [inLockmode
모드] [nowait]여기서Lockmode
중 하나입니다.액세스 공유 | 줄 공유 | Row Exclusive | 공유 업데이트 독점 | 공유 | Row Exclusive 공유 | 독점 | 액세스 독점
무지개 토토 테이블
충돌 무지개 토토 장치가 해제되기 위해 필요한 경우 대기하여 테이블 레벨 무지개 토토을 얻습니다. 만약에nowait
지정되어 있습니다.무지개 토토 테이블
원하는 무지개 토토 무지개 토토 장치를 획득하기를 기다리지 않습니다. 즉시 획득 할 수없는 경우 명령이 중단되고 오류가 발생합니다. 일단 획득되면, 자물쇠는 현재 거래의 나머지 부분에 대해 유지됩니다. (없음무지개 토토 해제 테이블
명령; 자물쇠는 항상 트랜잭션 종료시 릴리스됩니다.)
보기가 잠겨 있으면 뷰 정의 쿼리에 나타나는 모든 관계도 동일한 무지개 토토 모드로 재귀 적으로 잠겨 있습니다.
테이블을 참조하는 명령에 대해 자동으로 무지개 토토을 획득 할 때PostgreSQL항상 최소 제한적인 무지개 토토 모드를 사용합니다.무지개 토토 테이블
보다 제한적인 무지개 토토이 필요할 수있는 경우를 제공합니다. 예를 들어, 응용 프로그램이에서 트랜잭션을 실행한다고 가정합니다.Committed 읽기
격리 수준이며 트랜잭션 기간 동안 테이블의 데이터가 안정적으로 유지되어야합니다. 이를 달성하려면공유
쿼리 전에 테이블 위의 모드를 잠그십시오. 이렇게하면 동시 데이터 변경을 방지하고 테이블의 후속 읽기가 커밋 된 데이터에 대한 안정적인 견해를 보도록합니다..공유
무지개 토토 모드와 충돌합니다Row Exclusive
작가가 인수 한 무지개 토토,무지개 토토 테이블
성명서는 동시 소지자가 될 때까지 기다립니다이름
공유 모드Row Exclusive
모드 무지개 토토 커밋 또는 롤백. 따라서 자물쇠를 얻으면 커밋되지 않은 쓰기가 없습니다. 또한 무지개 토토 장치를 해제 할 때까지 시작할 수 없습니다.
에서 거래를 실행할 때 유사한 효과를 얻으려면반복 가능한 읽기
또는SERIALIZABLE
격리 레벨,를 실행해야합니다무지개 토토 테이블
실행하기 전에 진술select
또는 데이터 수정 문. 에이반복 가능한 읽기
또는SERIALIZABLE
트랜잭션의 데이터 관점이 첫 번째 일 때 동결됩니다select
또는 데이터 수정 문이 시작됩니다. 에이무지개 토토 테이블
트랜잭션의 뒷부분에서도 동시 기록을 방지 할 것입니다. 그러나 트랜잭션이 읽는 내용이 최신 커밋 된 값에 해당하는지 확인하지는 않습니다.
이런 종류의 트랜잭션이 표에서 데이터를 변경하려면 사용해야합니다공유 행 독점
대신 무지개 토토 모드공유
모드. 이를 통해 한 번에 하나의 트랜잭션 만 실행할 수 있습니다. 이 없으면 교착 상태가 가능합니다. 두 가지 거래가 모두 인수 할 수 있습니다공유
모드, 그리고 획득 할 수 없습니다Row Exclusive
실제로 업데이트를 수행하는 모드. (거래의 자체 자물쇠는 절대 충돌하지 않으므로 거래가 인수 할 수 있습니다Row Exclusive
보유 할 때 모드공유
모드 - 그러나 다른 사람이 보유하고 있다면공유
모드.) 교착 상태를 피하려면 모든 트랜잭션이 동일한 순서로 동일한 오브젝트에서 무지개 토토을 획득하고 단일 객체에 대해 여러 무지개 토토 모드가 관련되면 항상 가장 제한적인 모드를 획득해야합니다..
무지개 토토 모드 및 무지개 토토 전략에 대한 자세한 정보는 찾을 수 있습니다.PostgreSQL : 문서 : 14 : 13.3. 명시 적 범퍼카 토토.
이름
무지개 토토 할 기존 테이블의 이름 (선택적으로 스키마 자격). 만약에전용
테이블 이름 앞에 지정되어 있으며 해당 테이블 만 잠겨 있습니다. 만약에전용
지정되지 않은 표는 테이블과 모든 후손 테이블 (있는 경우)이 잠겨 있습니다. 선택적으로,*
테이블 이름 후에 지정하여 자손 테이블이 포함되어 있음을 명시 적으로 표시 할 수 있습니다.
명령무지개 토토 테이블 A, B;
무지개 토토 테이블 A; 무지개 토토 테이블 B;
. 테이블은에 명시된 순서대로 1 단을 잠겨 있습니다.무지개 토토 테이블
명령.
Lockmode
무지개 토토 모드는이 무지개 토토이 충돌하는 것을 지정합니다. 무지개 토토 모드는에 설명되어 있습니다.PostgreSQL : 문서 : 14 : 13.3. 명시 적 범퍼카 토토.
무지개 토토 모드가 지정되지 않은 경우액세스 독점
가장 제한적인 모드가 사용됩니다.
nowait
지정무지개 토토 테이블
충돌 무지개 토토 장치가 해제 될 때까지 기다리지 말아야합니다. 대기하지 않고 지정된 무지개 토토 무지개 토토 장치를 즉시 획득 할 수없는 경우 거래가 중단됩니다..
무지개 토토 테이블 ... 액세스 공유 모드
요구select
대상 테이블의 권한.무지개 토토 테이블 ... 행 독점 모드
요구삽입
, 업데이트
, 삭제
또는Truncate
대상 테이블의 권한. 다른 모든 형태의무지개 토토
테이블 레벨 필요업데이트
, 삭제
또는Truncate
특권.
보기에서 무지개 토토을 수행하는 사용자는 뷰에 해당하는 권한이 있어야합니다. 또한 View의 소유자는 기본 기본 관계에 대한 관련 권한이 있어야하지만 무지개 토토을 수행하는 사용자는 기본 기본 관계에 대한 권한이 필요하지 않습니다.
무지개 토토 테이블
트랜잭션 블록 외부에서는 쓸모가 없습니다. 무지개 토토은 성명서의 완료에만 유지됩니다. 그러므로postgresql오류를보고무지개 토토
트랜잭션 블록 외부에서 사용됩니다. 사용시작
and커밋
(또는롤백
) 트랜잭션 블록을 정의하려면
무지개 토토 테이블
테이블 레벨 무지개 토토 만 처리하므로 관련 모드 이름Row
는 모두 잘못된 이름입니다. 이러한 모드 이름은 일반적으로 잠긴 테이블 내에서로드 레벨 무지개 토토을 획득하려는 의도를 나타내는 것으로 읽어야합니다. 또한,Row Exclusive
모드는 공유 가능한 테이블 무지개 토토 장치입니다. 모든 무지개 토토 모드는와 동일한 의미론을 가지고 있음을 명심하십시오.무지개 토토 테이블
걱정되는데, 어떤 모드가 어느 모드가 상충되는지에 대한 규칙에 따라 다릅니다. 실제 행 수준 무지개 토토을 얻는 방법에 대한 정보는 참조섹션 13.3.2and무지개 토토 조항inselect문서.
a공유
기본 키 테이블의 잠그기 외국 키 테이블에 삽입을 수행 할 때 :
작업 시작; 공유 모드의 무지개 토토 테이블 필름; 필름에서 ID를 선택하십시오 여기서 name = '스타 워즈 : 에피소드 I- 팬텀 메나 스'; - 레코드가 반환되지 않은 경우 롤백을하십시오 films_user_comments 값에 삽입하십시오 (_id_, '좋아요! 너무 오래 기다리고있었습니다!'); 일을 커밋;
a공유 ROW 독점
삭제 작업을 수행 할 때 기본 키 테이블을 잠그십시오 :
작업 시작; 공유 행 독점 모드의 무지개 토토 테이블 필름; id가있는 Films_user_comments에서 삭제하십시오 (등급 <5 인 필름에서 ID를 선택); 등급 <5 인 필름에서 삭제; 일을 커밋;
없음무지개 토토 테이블
대신 사용하는 SQL 표준에서거래 설정
거래에서 동시성 수준을 지정하려면PostgreSQL그것을지지합니다. 보다거래 설정자세한 내용.
제외액세스 공유
, 액세스 독점
및공유 업데이트 독점
무지개 토토 모드,PostgreSQL무지개 토토 모드 및무지개 토토 테이블
구문은에있는 것과 호환됩니다Oracle.
문서에 올바른 것이 없으면 일치하지 않습니다. 특정 기능에 대한 귀하의 경험 또는 추가 설명이 필요합니다. 사용이 양식문서 문제를보고하려면