SQLD 기출문제 예상문제 274번
다음 문제를 풀어보세요.
다음은 데이터베이스 트랜잭션의 격리수준 (Isolation Level)에 대한 설명이다. READ COMMITTED 격리 수준에 대한 설명으로 가장 적절한 것을 고르시오.
데이터베이스 트랜잭션의 격리 수준은 여러 트랜잭션이 동시에 실행될 때, 한 트랜잭션이 다른 트랜잭션의 변경 사항을 어느 정도까지 볼 수 있는지 정의하는 표준이다. ANSI/ISO SQL 표준은 다음과 같은 4가지 격리 수준을 정의한다.
- READ UNCOMMITTED
- READ COMMITTED
- REPEATABLE READ
- SERIALIZABLE
각 격리 수준은 다음과 같은 현상들의 발생 여부에 영향을 미친다.
- Dirty Read: 커밋되지 않은 데이터를 읽는 현상.
- Non-Repeatable Read: 한 트랜잭션 내에서 같은 행을 두 번 읽었을 때, 그 사이에 다른 트랜잭션이 해당 행을 수정하고 커밋하여 두 번의 읽기 결과가 달라지는 현상.
- Phantom Read: 한 트랜잭션 내에서 같은 조건으로 쿼리를 두 번 실행했을 때, 그 사이에 다른 트랜잭션이 조건을 만족하는 새로운 행을 삽입하거나 삭제하고 커밋하여 첫 번째 쿼리 결과에는 없던 행이 두 번째 쿼리 결과에 나타나거나, 있던 행이 사라지는 현상.