이 문서는 지원되지 않는 PostgreSQL 버전에 대한 것입니다.
다음에 대한 동일한 페이지를 보고 싶을 수도 있습니다.현재버전 또는 위에 나열된 다른 지원 버전 중 하나를 사용하세요.

9.3. 커밋된 격리 읽기 레벨

읽기 커밋됨기본값입니다 격리 수준포스트그레스. 이 격리 수준에서 트랜잭션이 실행되면 a선택쿼리는 이전에 커밋된 데이터만 봅니다. 쿼리가 시작되었지만 커밋되지 않은 데이터나 변경 사항이 전혀 표시되지 않습니다. 동시 트랜잭션에 의한 쿼리 실행 중에 커밋됩니다. (그러나선택효과가 보입니다 동일한 트랜잭션 내에서 실행된 이전 업데이트의 수 아직 커밋되지는 않았지만.) 두 개의 연속된 내용에 주목하세요.선택s는 다른 데이터를 볼 수 있습니다. 단일 트랜잭션 내에 있지만 다른 트랜잭션이 있을 때 트랜잭션은 첫 번째 실행 중에 변경 사항을 커밋합니다.선택.

실행 중 쿼리에 의해 대상 행이 발견된 경우업데이트문장 (또는삭제또는업데이트를 위해 선택)는 이미 커밋되지 않은 동시 트랜잭션에 의해 업데이트된 후 두 번째 이 행을 업데이트하려고 시도하는 트랜잭션은 다른 행을 기다립니다. 커밋하거나 롤백할 트랜잭션입니다. 롤백의 경우, 대기 중인 트랜잭션은 행 변경을 진행할 수 있습니다. 의 경우 커밋(행이 여전히 존재하는 경우, 즉 행이 삭제되지 않은 경우) 다른 트랜잭션), 이 행에 대해 쿼리가 다시 실행됩니다. 새 행 버전이 여전히 쿼리 검색을 충족하는지 확인하세요. 조건. 새로운 행 버전이 쿼리 검색을 만족하는 경우 조건에 따라 행이 업데이트되거나 삭제되거나 표시됩니다. 업데이트). 업데이트의 시작점은 새로운 행 버전; 게다가 업데이트 이후에는 두 번 업데이트되었습니다. 행은 후속 항목에 표시됩니다.선택s in 현재 거래. 따라서 현재 거래는 이 특정 거래에 대한 다른 거래의 효과를 확인하세요. 행.

Read Committed에 의해 제공되는 부분 트랜잭션 격리 수준은 많은 애플리케이션에 적합하며 이 수준은 빠릅니다. 사용이 간단합니다. 그러나 복잡한 작업을 수행하는 응용 프로그램의 경우 쿼리 및 업데이트를 수행하려면 더 많은 정보를 보장해야 할 수도 있습니다. Read Committed보다 엄격하게 일관된 데이터베이스 보기 수준이 제공됩니다.