ANSI 표준 격리 수준 기준으로, 다음 T1 에서 일어난 현상을 막을… | [SQLD] SQL 개발자 기출유형 모의고사 10회 상세 페이지

1[SQLD] SQL 개발자 기출유형 모의고사 10회
ANSI 표준 격리 수준 기준으로, 다음 T1 에서 일어난 현상을 막을 수 있는 가장 낮은 격리 수준은?
T1: SELECT 금액 FROM 청구 WHERE 청구번호 = 7;   -- 300
T2: UPDATE 청구 SET 금액 = 450 WHERE 청구번호 = 7;
T2: COMMIT;
T1: SELECT 금액 FROM 청구 WHERE 청구번호 = 7;   -- 450
1
READ COMMITTED
2
SERIALIZABLE
3
어느 수준으로도 막을 수 없다
4
REPEATABLE READ
해설

T1 이 이미 읽은 행을 T2 가 수정·커밋해 같은 조회의 값이 달라졌으므로 Non-Repeatable Read 이고, 이를 막는 가장 낮은 수준은 REPEATABLE READ 이다.

REPEATABLE READ 는 트랜잭션이 읽은 행이 끝날 때까지 바뀌지 않게 보장하며, 새 행이 나타나는 팬텀까지 막으려면 SERIALIZABLE 이 필요하다.

  • 격리 수준을 REPEATABLE READ 이상으로 올리면 이 현상은 막을 수 있다.
  • READ COMMITTED 는 Dirty Read 만 막고 커밋된 수정은 다시 읽을 때 보인다.
  • SERIALIZABLE 로도 막히지만 가장 낮은 수준은 아니다.

오류나 개정된 내용이 보이면 알려주세요

이어서 풀어보기

[SQLD] SQL 개발자 기출유형 모의고사 10회 50문항 이어서 보기문제·정답·해설을 한 페이지에서 이어서 볼 수 있어요SQLD SQL 개발자 실전 모의고사 암기장 전체 보기