- 트랜잭션(Transaction)이란, 데이터베이스의 상태를 변화시키기 위해서 수행하는 작업의 단위를 뜻한다.
데이터베이스의 상태 변화란?
- 질의어(SQL)를 이용하여 데이터베이스를 접근하는 것을 의미
- SELECT
- INSERT
- DELETE
- UPDATE
- 작업의 단위는 질의어 한문장이 아니고 질의어 명령문을 사람이 정하는 기준에 따라 정해진다.
트랜잭션의 특징 (ACID)
- 원자성 (Atomicity)
- 트랜잭션이 데이터베이스에 모두 반영되던가, 아니면 전혀 반영되지 않아야한다는 것
- 일관성 (Consistency)
- 트랜잭션의 작업 처리 결과가 항상 일관성 있어야 한다.
- 독립성 (Isolation)
- 둘 이상의 트랜잭션이 실행되고 있을 경우 어떤 하나의 트랜잭션이 다른 트랜잭션의 연산에 끼어들 수 없다
- 지속성 (Durability)
- 트랜잭션이 성공적으로 완료됬을 경우, 결과는 영구적으로 반영되어야 한다는 점
트랜잭션의 Commit,Rollback 연산
- commit은 하나의 트랜잭션이 성공적으로 끝나고 데이터베이스가 일관성있는 상태에 있을 때, 하나의 트랜잭션이 끝났다는 것을
알려주기 위한 연산 - Rollback은 하나의 트랜잭션 처리가 비정상적으로 종료되어 트랜잭션의 원자성이 깨진경우, 트랜잭션을 처음부터 다시 실행하거나
트랜잭션의 부분적으로 연산된 결과를 취소한다.
'CS > 데이터베이스' 카테고리의 다른 글
Database와 RDBMS, NOSQL (0) | 2025.03.28 |
---|---|
JOIN이란? (0) | 2025.03.28 |
정규화(Normalization) (0) | 2025.03.21 |
트랜잭션 격리 수준(Transaction Isolation Levels) (0) | 2025.03.21 |
데이터베이스 인덱스(Index) (0) | 2025.03.21 |