트랜잭션 격리 수준에 대해 공부하다가 Read Uncommitted와 Read Committed의 차이가 명확히 구분되지 않아 헷갈렸다. 그래서 더 깊이 공부한 뒤 다시 정리해 보기로 했다.Read Uncommitted- 가장 낮은 격리 수준이다. - 커밋되지 않은 데이터를 다른 트랜잭션에서 읽을 수 있다. - 성능은 좋지만, 데이터 일관성 보장 수준이 낮다. - `Dirty Read` 문제가 발생할 수 있다. Read Committed- 커밋된 데이터만 읽을 수 있다. - 하지만 한 트랜잭션이 데이터를 읽는 동안, 다른 트랜잭션이 동일 데이터를 수정하는 것을 방지하지는 못한다. - Dirty Read는 방지하지만, `Non-Repeatable Read` 문제가 발생할 수 있다. 처음에는 두 격리 수준..
트랜잭션
격리 수준- DB가 트랜잭션 간 동시 작업을 격리하는 수준 (level)- 동시에 여러 트랜잭션이 동일 컬럼, 로우, 테이블에 읽고 쓴다면?예상하지 못한 데이터 이상 현상 발생 → 동시성 문제데이터 정합성/무결성이 위배됨따라서 DB는 4단계 트랜잭션 격리 수준 제공 Read Uncommitted가장 낮은 격리 수준트랜잭션이 커밋되지 않은 데이터를 다른 트랜잭션에서 읽을 수 있음장점 성능이 가장 좋음단점 데이터 일관성 보장 수준이 가장 낮음 Read Committed트랜잭션 커밋된 데이터만 읽을 수 있음다른 트랜잭션이 데이터를 수정하면 문제가 발생한다........장점 Dirty Read 방지단점 Non-Repeatable Read 가능 - 동일한 데이터를 읽어도 값이 달라짐 Repeatable Read한..