문제
트랜잭션 내에서 동일한 데이터를 여러 번 읽을 때 항상 같은 값을 보장하여 Non-repeatable Read를 방지하지만, 범위 검색 시 새로운 레코드가 삽입되는 Phantom Read는 발생할 수 있는 격리 수준은 무엇인가?
정답
REPEATABLE READ
REPEATABLE READRepeatable Read리피터블 리드반복 가능한 읽기
해설
REPEATABLE READ 격리 수준은 트랜잭션이 시작된 후 읽은 데이터에 대해 다른 트랜잭션의 수정을 차단하여, 동일한 데이터를 반복해서 읽어도 같은 값을 보장합니다. 이를 통해 Non-repeatable Read를 방지합니다. 하지만 범위 검색(SELECT ... WHERE 조건)에서는 새로운 레코드의 삽입으로 인한 Phantom Read는 여전히 발생할 수 있습니다.