이 문서는 지원되지 않는 PostgreSQL 버전에 대한 것입니다.
당신은 다음과 같은 페이지를 보고 싶을 수도 있습니다.PostgreSQL : 문서 : 17 : 토토 커뮤니티 설정버전 또는 위에 나열된 다른 지원 버전 중 하나를 사용하세요.

세트 거래

이름

SET TRANSACTION -- 특성 설정 현재 거래의

시놉시스

거래 설정transaction_mode[, ...]
세션 특성을 토토 베이으로 설정transaction_mode[, ...]

어디transaction_mode다음 중 하나입니다:

    격리 수준  직렬화 가능 | 반복 읽기 | 커밋됨 읽기 | 커밋되지 않은 읽기 
    읽기 쓰기 | 읽기 전용

설명

거래 설정명령은 다음을 설정합니다. 현재 거래의 특징. 에는 영향을 미치지 않습니다. 모든 후속 거래.세션 설정 형질기본 트랜잭션 특성을 설정합니다. 세션의 후속 트랜잭션을 위해. 이러한 기본값은 다음과 같습니다. 다음에 의해 재정의됨거래 설정에 대한 개별 거래입니다.

사용 가능한 거래 특성은 거래입니다. 격리 수준 및 토토 베이 액세스 모드(읽기/쓰기 또는 읽기 전용).

토토 베이의 격리 수준에 따라 어떤 데이터가 토토 베이은 다른 토토 베이이 실행 중일 때 확인할 수 있습니다. 동시에:

읽어 커밋됨

명령문은 시작되기 전에 커밋된 행만 볼 수 있습니다. 이것이 기본값입니다.

직렬화 가능

현재 거래의 모든 명세서는 볼 수만 있습니다. 첫 번째 쿼리 또는 데이터 수정 전에 커밋된 행 이 트랜잭션에서 명령문이 실행되었습니다.

SQL 표준은 두 가지 추가 수준을 정의합니다.커밋되지 않은 읽기그리고반복 가능한 읽기. 안에PostgreSQL 읽기 어느 편도 아닌다음과 같이 처리됩니다.읽기 헌신적인, 그동안반복 가능한 읽기이 다음과 같이 취급됨직렬화 가능.

트랜잭션 격리 수준은 다음 이후에는 변경할 수 없습니다. 첫 번째 쿼리 또는 데이터 수정 문(선택, 삽입, 삭제, 업데이트, 가져오기또는복사) 거래가 실행되었습니다. 보다13장거래에 대한 추가 정보 격리 및 동시성 제어.

트랜잭션 액세스 모드는 트랜잭션이 읽기/쓰기 또는 읽기 전용입니다. 읽기/쓰기가 기본값입니다. 언제 트랜잭션이 읽기 전용인 경우 다음 SQL 명령은 다음과 같습니다. 허용되지 않음:삽입, 업데이트, 삭제다음에서 복사그들이 작성한 테이블이라면 to는 임시 테이블이 아닙니다. 모두만들기, 변경드롭명령;댓글, 그랜트, 취소, 잘라내기; 그리고설명하세요 분석그리고실행명령이 그들이 실행할 것은 나열된 것 중 하나입니다. 이는 높은 수준의 디스크에 대한 모든 쓰기를 방지하지 않는 읽기 전용 개념입니다.

참고

만약토토 베이 설정실행됨 사전 없이거래 시작또는시작, 아무런 효과가 없는 것 같습니다. 거래가 즉시 종료되기 때문입니다.

없애는 것이 가능합니다SET 거래대신 원하는 것을 지정하여transaction_modesin시작또는시작 거래.

세션 기본 트랜잭션 모드는 다음을 통해 설정할 수도 있습니다. 구성 매개변수 설정default_transaction_isolation그리고default_transaction_read_only. (사실은세션 특성 설정이다 이러한 변수를 설정하는 것과 동등한 장황한 표현입니다.SET.) 이는 기본값을 설정할 수 있음을 의미합니다. 구성 파일에서 다음을 통해변경 데이터 베이스등 문의스포츠 토토 결과 : 문서 : 8.4 : 서버 구성더 많은 정보를 원하시면.

호환성

두 명령 모두 다음에 정의되어 있습니다.SQL표준.직렬화 가능기본 트랜잭션 격리입니다. 표준 수준입니다. 안에포스트그레SQL기본값은 보통입니다읽어 커밋됨, 그러나 다음과 같이 변경할 수 있습니다. 위에서 언급한. 조건자 잠금이 부족하기 때문에,직렬화 가능레벨이 실제로는 아닙니다. 직렬화 가능. 보다13장용 세부.

SQL 표준에는 또 하나의 트랜잭션이 있습니다 다음 명령으로 설정할 수 있는 특성: 크기 진단 영역. 이 개념은 Embedded SQL에만 적용됩니다. 따라서 다음에서는 구현되지 않습니다.PostgreSQL서버.

SQL 표준에서는 연속된 내용 사이에 쉼표가 필요합니다.transaction_modes, 그러나 역사적인 경우 이유PostgreSQL허용합니다 쉼표는 생략합니다.