이 문서는 지원되지 않는 버전의 PostgreSQL을위한 것입니다.
당신은에 대해 같은 페이지를 볼 수 있습니다PostgreSQL : 문서 : 17 : 토토 꽁 머니버전 또는 위에 나열된 다른 지원 버전 중 하나입니다.

토토 꽁 머니

이름

토토 꽁 머니-테이블 토토 꽁 머니

시놉시스

토토 꽁 머니 [표]이름[, ...] [inLockmode모드] [nowait]

어디Lockmode중 하나입니다.

    액세스 공유 | 줄 공유 | Row Exclusive | 공유 업데이트 독점
    | 공유 | Row Exclusive 공유 | 독점 | 액세스 독점

설명

토토 꽁 머니 테이블테이블 레벨을 얻습니다 자물쇠, 충돌하는 자물쇠가 필요한 경우 대기 출시된. 만약에nowait지정되어 있습니다.토토 꽁 머니 테이블획득하기를 기다리지 않습니다 원하는 토토 꽁 머니 장치 : 즉시 획득 할 수없는 경우 명령 중단되고 오류가 발생합니다. 일단 얻어지면 토토 꽁 머니은입니다 현재 거래의 나머지 부분에 대해 개최됩니다. (없음토토 꽁 머니 해제 테이블명령; 자물쇠는 항상입니다 트랜잭션 종료시 출시.)

그 참조 명령에 대해 토토 꽁 머니을 자동으로 획득 할 때 테이블,​​PostgreSQL항상 사용합니다 최소 제한적인 토토 꽁 머니 모드가 가능합니다.토토 꽁 머니 테이블필요한 경우 사례를 제공합니다 더 제한적인 토토 꽁 머니. 예를 들어, 응용 프로그램을 가정하십시오 읽기 커밋 된 격리 수준에서 거래를 실행하고 테이블의 데이터가 안정적으로 유지되도록해야합니다. 거래 기간. 이를 달성하려면공유이전 테이블 위의 토토 꽁 머니 모드 쿼리. 이렇게하면 동시 데이터 변경을 방지하고 보장합니다 이후 테이블의 후속 읽기 Commited의 안정적인 견해를보십시오. 데이터,공유토토 꽁 머니 모드 충돌 와 함께Row Exclusive토토 꽁 머니 획득 작가, 그리고 당신의토토 꽁 머니 테이블이름공유 모드진술이 기다립니다 동시 소지자까지행 독점적인모드 토토 꽁 머니 커밋 또는 롤백. 따라서 일단 당신 자물쇠를 얻으십시오. 커밋되지 않은 글은 없습니다. 또한 토토 꽁 머니 장치를 해제 할 때까지 시작할 수 없습니다.

직렬화 가능한 분리 수준,를 실행해야합니다.토토 꽁 머니 테이블실행하기 전에 진술select또는 데이터 수정 문. 에이 직렬화 가능한 트랜잭션의 데이터 관점은 첫 번째select또는 데이터 수정 진술이 시작됩니다. 에이토토 꽁 머니 테이블나중에 거래는 여전히 동시 쓰기를 방지 할 것입니다. 트랜잭션이 읽는 내용이 최신 헌신적 인 가치.

이런 종류의 트랜잭션이 데이터를 변경하는 경우 테이블, 그런 다음 사용해야공유 행 독점적인대신 토토 꽁 머니 모드공유모드. 이것은 하나의 거래 만 보장합니다 이 유형의 한 번에 실행됩니다. 이것이 없으면 교착 상태입니다 가능 : 두 거래가 모두 인수 할 수 있습니다공유모드를 획득 할 수 없습니다Row Exclusive실제로 수행 할 모드 그들의 업데이트. (트랜잭션 자체 자물쇠는 결코 결코 없습니다 충돌, 거래는 획득 할 수 있습니다행 독점적인그것이 유지 될 때 모드공유모드 - 그러나 다른 사람이 보유하는 경우공유모드.) 교착 상태를 피하려면 모든 것을 확인하십시오 트랜잭션은 동일한 순서로 동일한 객체에 대한 토토 꽁 머니을 획득하고 그리고 단일 객체에 여러 개의 토토 꽁 머니 모드가 관련되어 있으면 거래는 항상 가장 제한적인 모드를 얻어야합니다 첫 번째.

토토 꽁 머니 모드 및 토토 꽁 머니 전략에 대한 자세한 정보 에서 찾을 수 있습니다PostgreSQL : 문서 : 8.3 : 명시 적 무지개 토토.

매개 변수

이름

기존의 이름 (선택적으로 스키마 자격) 토토 꽁 머니 테이블.

명령토토 꽁 머니 테이블 A, B;IS 동등한토토 꽁 머니 테이블 A; 토토 꽁 머니 테이블 비;. 테이블은 순서대로 일대일로 잠겨 있습니다 에 지정됨토토 꽁 머니 테이블명령.

Lockmode

토토 꽁 머니 모드는이 토토 꽁 머니 충돌을 잠그는 것을 지정합니다 와 함께. 토토 꽁 머니 모드는에 설명되어 있습니다.섹션 13.3.

토토 꽁 머니 모드가 지정되지 않은 경우액세스 독점, 가장 제한적인 모드, 사용됩니다.

nowait

이를 지정합니다토토 꽁 머니 테이블충돌 토토 꽁 머니 장치가 해제 될 때까지 기다리지 말아야합니다. 지정된 토토 꽁 머니 장치를 즉시 획득 할 수없는 경우 기다리지 않고 거래가 중단됩니다.

노트

토토 꽁 머니 테이블 ... 액세스 공유 모드에서요구select대상의 특권 테이블. 다른 모든 형태의토토 꽁 머니요구업데이트및/또는삭제특권.

토토 꽁 머니 테이블a 내부에서만 유용합니다 트랜잭션 블록 (시작/커밋쌍), 토토 꽁 머니이 빨리 떨어지므로 거래가 끝납니다. 에이토토 꽁 머니 테이블어떤 트랜잭션 블록 외부에 나타나는 명령 a 자체 포함 된 거래, 따라서 토토 꽁 머니 장치가 빨리 떨어질 것입니다. 획득 된대로.

토토 꽁 머니 테이블테이블 레벨 토토 꽁 머니 장치이므로 포함 된 모드 이름Row는 모두 잘못된 이름입니다. 이 모드 이름은해야합니다 일반적으로 사용자의 의도를 나타내는대로 읽습니다. 잠긴 테이블 내에서 로우 레벨 토토 꽁 머니을 얻습니다. 또한,Row Exclusive모드는 공유 가능한 테이블 토토 꽁 머니 장치입니다. 유지하다 모든 토토 꽁 머니 모드는 지금까지 동일한 의미를 가지고 있음을 명심하십시오. 처럼토토 꽁 머니 테이블걱정이 다릅니다 어떤 모드가 상충되는지에 대한 규칙에만. 을 위한 실제 로우 레벨 토토 꽁 머니을 얻는 방법에 대한 정보, 참조섹션 13.3.2and the업데이트/공유 절inselect참조 선적 서류 비치.

예제

a공유기본 키를 잠그십시오 삽입물을 외국 키 테이블에 수행 할 때 테이블 :

작업 시작;
공유 모드의 토토 꽁 머니 테이블 필름;
필름에서 ID를 선택하십시오 
    여기서 name = '스타 워즈 : 에피소드 I- 팬텀 메나 스';
- 레코드가 반환되지 않은 경우 롤백을하십시오
films_user_comments 값에 삽입하십시오 
    (_id_, '좋아요! 너무 오래 기다리고있었습니다!');
일을 커밋;

a공유 ROW 독점토토 꽁 머니 a 기본 키 테이블 삭제 작업을 수행 할 때 :

작업 시작;
공유 행 독점 모드의 토토 꽁 머니 테이블 필름;
id가있는 Films_user_comments에서 삭제하십시오
    (등급 <5 인 필름에서 ID를 선택);
등급 <5 인 필름에서 삭제;
일을 커밋;

호환성

없음토토 꽁 머니 테이블SQL에서 대신 사용하는 표준세트 거래거래에서 동시성 레벨을 지정하려면PostgreSQL그것을지지합니다. 보다PostgreSQL : 문서 : 8.3 : 토토 핫 설정자세한 내용.

제외액세스 공유, 액세스 독점공유 독점 업데이트토토 꽁 머니 모드,PostgreSQL토토 꽁 머니 모드 및토토 꽁 머니 테이블구문은 그것과 호환됩니다 참석Oracle.