728x90
트랜잭션 (Transaction)
- 데이터베이스에서 하나의 논리적 기능을 수행하기 위한 기본 작업 단위
- 예를 들어, 통장에서 금액을 출금하는 작업을 한다고 치면 '통장 금액 불러오기 (SELECT)' → '출금 (UPDATE)' 와 같은 순서로 이루어지는데 이 2가지 과정이 하나의 트랜잭션이다.
트랜잭션의 특성 (ACID)
특성 | 설명 |
원자성 (Atomicity) | 트랜잭션 내의 모든 작업이 성공적으로 수행되어 반영되거나 혹은 모두 반영되지 않아야한다. (일부만 반영x) |
일관성 (Consistency) | 트랜잭션이 성공적으로 실행된 후에도 데이터베이스는 항상 일관성을 유지해야한다. |
독립성 (Isolation) | 어느 트랜잭션이 실행 중일 때, 다른 트랜잭션이 연산에 끼어들 수 없다. |
지속성 (Durability) | 성공한 트랜잭션의 결과는 데이터베이스에 영구히 반영되어야 한다. |
트랜잭션 제어어 (Transaction Control Language, TCL)
명령 | 설명 |
COMMIT | 트랜잭션의 결과를 데이터베이스에 반영한다. |
ROLLBACK | 트랜잭션의 연산을 취소하여 되돌린다. |
CHECKPOINT | ROLLBAKC을 하기 위한 복구 시점을 지정한다. |
728x90
'Computer Science > 데이터베이스' 카테고리의 다른 글
[데이터베이스] 트랜잭션 고립 수준 (Transaction Isolation Level) (0) | 2020.11.09 |
---|---|
[데이터베이스] 정규화 (0) | 2020.10.26 |
[데이터베이스] JOIN (0) | 2020.10.03 |
[데이터베이스] 인덱스 (Index) (0) | 2020.09.17 |
[데이터베이스] 이상 (Anomaly) (0) | 2020.09.17 |
댓글